← systeric.com Interwise / Docs Open App →

Compliance Reference

This page is a lookup table, not a tutorial: the exact PTKP amounts, tax mechanics, BPJS rates, and overtime multipliers wired into Interwise’s payroll engine, in one place. Every number here is the number the engine actually calculates with — not a rounded approximation — so it doubles as an audit reference when you need to check a payslip by hand.

For how these pieces fit together inside a single payroll run, see the Payroll Engine deep dive (coming soon).


PTKP (Penghasilan Tidak Kena Pajak)

PTKP is the annual non-taxable income threshold — it’s subtracted from annualized net income before tax is calculated. The code has two parts: TK (Tidak Kawin, unmarried) or K (Kawin, married), followed by the number of dependents the employee has, from 0 up to 3.

CodeStatusDependentsAnnual PTKP
TK/0Unmarried0Rp 54,000,000
TK/1Unmarried1Rp 58,500,000
TK/2Unmarried2Rp 63,000,000
TK/3Unmarried3Rp 67,500,000
K/0Married0Rp 58,500,000
K/1Married1Rp 63,000,000
K/2Married2Rp 67,500,000
K/3Married3Rp 72,000,000

These values were set in 2016 and are still current — Interwise’s engine keeps them as constants, and they’ll be updated the moment the regulation changes.


PPh 21 — Two Calculation Methods

Interwise calculates income tax (PPh 21) one of two ways, depending on which month of the year it is:

  • TER (Tarif Efektif Rata-rata / “IdTer”) — used for every month except December (and except an employee’s last active month, if that falls mid-year). A single effective rate is looked up against that month’s gross income and applied directly — no annualization, no brackets, just a flat withholding rate for the month.
  • Bracket-progressive settlement — used for December, or an employee’s last month of employment. This is the full-year settlement: it recomputes the entire year’s tax liability from annualized taxable income using the progressive brackets, then nets off whatever TER withholding was already collected across the year (over-withheld months produce a refund; under-withheld months produce a top-up).
Payroll Month Not December, not last month December OR last month of employment TER (IdTER) Monthly rate on average gross Bracket-Progressive Full-year settlement on PKP

TER category mapping

TER rates are looked up from a category-specific rate table (PMK 168/2023), keyed by income band. Which category an employee falls into depends on their PTKP code:

PTKP CodeTER Category
TK/0, TK/1, K/0TER_A
TK/2, TK/3, K/1, K/2TER_B
K/3TER_C

Each category has its own ladder of income bands, from 0% at the lowest band up to 34% at the highest — the engine looks up the band that the month’s gross income (salary plus taxable employer BPJS contributions) falls into and applies that flat rate directly to that income, no annualization involved.

Bracket-progressive rates (December / last month settlement)

The settlement month applies these progressive brackets to PKP (Penghasilan Kena Pajak, taxable income) — each bracket’s rate applies only to the slice of PKP that falls within it:

PKP RangeRate
Rp 0 – Rp 60,000,0005%
Rp 60,000,000 – Rp 250,000,00015%
Rp 250,000,000 – Rp 500,000,00025%
Rp 500,000,000 – Rp 5,000,000,00030%
Above Rp 5,000,000,00035%

PKP is calculated as:

PKP = annualizedNet − Position Allowance − PTKP

floored down to the nearest Rp 1,000.

Position allowance (biaya jabatan)

A standard deduction of 5% of annualized net income, capped at Rp 6,000,000 per year, applied automatically before PKP is derived — no configuration needed per employee.

No-tax-ID surcharge

A 20% surcharge on the calculated tax applies whenever an employee has no NIK (national ID) on file. Since PMK 112/2022, the NIK is Interwise’s sole tax ID — there is no separate NPWP field — so the surcharge triggers only when the NIK is genuinely empty.


BPJS Kesehatan (Health Insurance)

PartyRateSalary Ceiling
Employee1%Rp 12,000,000
Employer4%Rp 12,000,000

Both employee and employer contributions are calculated on salary capped at the ceiling — earnings above Rp 12,000,000 are not subject to additional Kesehatan contribution.


BPJS Ketenagakerjaan (Employment Insurance)

Four components, each with its own rate structure:

ComponentEmployeeEmployerSalary Ceiling
JKK (Jaminan Kecelakaan Kerja)0.24%*None
JKM (Jaminan Kematian)0.3%None
JHT (Jaminan Hari Tua)2%3.7%None
JP (Jaminan Pensiun)1%2%Rp 11,086,300 (effective March 2026)

* JKK is an employer-only, industry-risk-based rate — 0.24% is the configured default (lowest risk class); the actual rate is configurable per employee/industry.

JHT has no salary ceiling — both employee and employer contributions apply to full salary. JP is capped at Rp 11,086,300; earnings above that are not subject to additional JP contribution.


Overtime Multipliers

Overtime hours are grouped by ISO week (Monday–Sunday). Within each week, regular and public-holiday hours are tracked separately and multiplied on a tiered basis:

Hour TypeTierMultiplier
Regular overtimeFirst hour of the week1.5x
Regular overtimeEvery additional hour that week2x
Public holiday overtimeFirst 7 hours of the week2x
Public holiday overtime8th hour of the week3x
Public holiday overtimeBeyond the 8th hour4x

Hourly rate = basic salary ÷ 173 (the standard monthly working-hours basis).

Only overtime entries that are both approved and marked paid are counted toward these totals.


A Note on Currency

All figures on this page reflect current Indonesian payroll regulation (PPh 21 via UU HPP and PMK 168/2023, BPJS via PP 44/2015 and current BPJS ceilings) as implemented in Interwise’s payroll engine. When a regulation changes — a new PTKP table, a revised BPJS ceiling, an updated TER schedule — the engine’s configuration is updated centrally and every subsequent payroll run picks it up automatically.


Where to Go Next

  • Overview — what Interwise is, the modules it’s built from, and the core loop from hiring a candidate to a compliant payslip.
  • Roles & Access — who can run payroll and see these numbers, and how tenant isolation keeps them private per company.

A Payroll Engine deep dive — walking through the full calculation order step by step — is on the way.