Guides an Indonesian employer through the complete monthly payroll cycle: determining employee PPh 21 via the TER method (PP 58/2023 / PMK 168/2023), computing all BPJS Kesehatan and Ketenagakerjaan contributions, preparing payslips, remitting liabilities, lodging the monthly e-Bupot Unifikasi (SPT Masa PPh 21/26) via Coretax DJP, and executing the December annual true-up with 1721-A1 withholding certificates.
Collect and validate all employee data needed before any calculation begins. Each employee's NPWP or NIK (since 1 July 2024 Indonesian citizens use their 16-digit NIK as NPWP), PTKP marital/dependent status (TK/0 through K/3), employment classification (pegawai tetap vs non-permanent), and the company's BPJS Ketenagakerjaan risk grade must be confirmed. Missing or incorrect data at this stage cascades into wrong TER rates and surcharges.
Assemble each employee's monthly gross income for the pay period, including gaji pokok, tunjangan tetap, lembur (overtime), bonus, THR (Tunjangan Hari Raya) if applicable, and any other recurring allowances. Gross income is the TER base for months January–November and is included in the annual true-up in December. Irregular payments such as bonus or THR increase gross in the month paid and must be included in that month's TER calculation.
Apply the TER (Tarif Efektif Rata-rata) monthly withholding rates per PP 58/2023 and PMK 168/2023. For each permanent employee, look up their TER Category (A/B/C based on PTKP status) and apply the applicable rate to monthly gross income for months January through November. In December, perform the full annual true-up: compute annual PKP (gross less biaya jabatan capped at IDR 6,000,000, less employee JP contributions, less PTKP), apply UU HPP Article 17 progressive brackets (5%/15%/25%/30%/35%), then subtract all TER withheld in months 1–11 to arrive at December PPh 21.
Compute employer and employee BPJS contributions for each enrolled employee. BPJS Kesehatan: employer 4%, employee 1% (capped at IDR 12,000,000 wage basis). BPJS Ketenagakerjaan comprises JHT (employer 3.70%, employee 2.00%), JP (employer 2.00%, employee 1.00%, capped at IDR 10,547,400/month), JKK (employer only, 0.24%–1.74% based on risk grade), and JKM (employer only, 0.30%). Prepare the total cost-to-company and net-pay deduction figures.
Combine gross earnings, BPJS deductions, and PPh 21 withholding into individual payslips (slip gaji). Confirm net pay (take-home) for each employee and prepare the payroll disbursement instruction for the company's bank. For GROSS-UP employees, verify the tunjangan pajak (tax allowance) gross-up amount is correctly added before deducting the same amount, achieving no net tax cost for the employee.
Remit PPh 21 withholdings and BPJS contributions to the respective authorities before their deadlines, then lodge the monthly e-Bupot Unifikasi (SPT Masa PPh 21/26) via Coretax DJP. PPh 21 must be remitted by the 10th and reported by the 20th of the following month. BPJS payments have separate portals (BPJS Kesehatan and BPJS Ketenagakerjaan) with their own deadlines. From 1 January 2025, the legacy DJP Online e-Bupot 21/26 desktop app is retired — all filing must go through Coretax DJP.
At year end (December payroll run or upon employment termination), issue Bukti Potong 1721-A1 withholding certificates to each permanent employee and 1721-A2 for non-permanent employees. These certificates summarise annual gross income, total PPh 21 withheld, and BPJS deductions — employees need them to complete their SPT Tahunan Orang Pribadi (1770SS / 1770S / 1770) by 31 March. The employer also prepares and lodges the annual reconciliation form (SPT Tahunan PPh Pemotong) via Coretax DJP.
Run this workflow in your AI agent
Install the MCP connector once — your agent loads the right skills, works through each phase, and routes to a licensed Indonesia accountant for review.