← Back to Insights

Guide

Payroll Software: Automate Salary, PPh 21, and BPJS Calculations

• October 3, 2026 • Updated October 9, 2026 • 13 min read

Payroll software earns its fee on the lines nobody checks: the TER base, the BPJS split, the overtime hour that was clocked but never approved. If your payslips look right but nobody can explain each rupiah, you have a calculator, not a payroll system.

We have spent more than 15 years delivering business systems for Indonesian companies in retail, distribution, finance, and operations. Payroll is where we see the most confident demos and the quietest errors. Compliance depth is the product.

This guide covers one worked payslip, how PPh 21 TER and BPJS flow across the year, ten vendor tests, first-year costs, and a parallel-run rollout. For the wider buy-or-build decision across all HR modules, start with our HRIS application guide.

TL;DR — the whole guide in five lines:

  • Every payslip line needs a rule you can point to. Base, allowance, overtime, BPJS, and PPh 21 each have their own source.
  • The TER base is not the gross on the payslip. Employer-paid JKK, JKM, and BPJS Kesehatan premiums are added before the rate is looked up.
  • Regular months are easy. THR, resignations, retro pay, and December are where payroll software proves itself.
  • Most companies should buy SaaS payroll and build only an edge, such as incentives or ERP journal posting.
  • Run two month-ends in parallel and switch off the spreadsheet only when both match to the rupiah.

Payroll clerk balancing every payslip component on a precision scale

What Is Payroll Software?

Payroll software calculates what each employee earns, what is withheld, and what the company owes, then produces the payment, the payslip, the tax and BPJS reports, and the accounting journal. In Indonesia, that means PPh 21 under the TER system and two BPJS programmes every month.

A useful payroll system:

  • turns approved attendance into overtime and allowances;
  • applies BPJS rates and caps valid for the pay period;
  • withholds PPh 21 with monthly TER and settles the year in the last tax period;
  • handles THR, bonus, retro pay, and final pay without manual overrides.

Next: Payroll Software: SaaS vs Hybrid vs Custom.

Payroll Software: SaaS vs Hybrid vs Custom

Buy the calculation engine unless payroll is the product you sell. Let a vendor get paid to track tax changes.

FactorSaaS payrollHybridCustom payroll engine
First-year cost (250 staff)IDR 85–200mIDR 200–550mIDR 750m–2.2bn
Time to go-live2–3 months3–5 months6–12 months
FlexibilityVendor settingsSaaS core + custom edgeFully yours
Who updates TER and BPJS rulesVendorVendor, for the coreYou
Best forStandard pay rulesIncentives, piece rates, ERP postingOutsourcing, staffing, and platforms that run payroll for clients

SaaS wins for most companies. Hybrid wins when the core fits but an incentive formula or journal mapping does not. Custom wins only when you run payroll for other companies’ workers.

Next: What Does a Payslip Calculation Look Like? (Worked Example).

What Does a Payslip Calculation Look Like? (Worked Example)

Here is one payslip, every line with its rule. The employee and amounts are illustrative, not client data. The rates are real and sourced.

Meet an illustrative warehouse supervisor, single with no dependants (PTKP TK/0), in a regular month. Her wage is IDR 8,000,000 base plus a IDR 1,000,000 fixed allowance.

Meal and transport are paid per attended day.

Payslip lineRuleIDR
Base salaryContract8,000,000
Fixed position allowancePaid regardless of attendance1,000,000
Meal and transport20 attended days × 25,000500,000
Approved overtime3 workdays × (1.5 + 2) × 9,000,000 ÷ 173546,243
Gross cash pay10,046,243
Employee JHT2% × 9,000,000−180,000
Employee JP1% × 9,000,000−90,000
Employee BPJS Kesehatan1% × 9,000,000−90,000
PPh 212.5% × TER base 10,454,843−261,371
Net pay9,424,872

Illustrative gross-to-net payslip waterfall from base salary to net pay of IDR 9,424,872

Overtime: 1/173 and approved hours only

Overtime comes from approved attendance, not a spreadsheet total. Under PP 35/2021, the hourly wage is 1/173 of the monthly wage. On a workday, the first overtime hour pays 1.5× and each next hour 2×. Her overtime base is base plus fixed allowance, IDR 9,000,000, because that is more than 75% of her total wage of IDR 9,500,000. Below 75%, the base would be 75% of the total wage instead.

She clocked 8 extra hours; 6 were approved, 2 on each of 3 days. That gives 3 × 3.5 × (9,000,000 ÷ 173) = IDR 546,243, rounded.

The 2 unapproved hours stay visible and unpaid. Our attendance app guide covers how those records are captured.

BPJS: employer and employee components

BPJS uses the fixed wage, not gross pay. The base is IDR 9,000,000, assumed below the current caps. The employer pays JHT 3.7%, JP 2%, JKK 0.24% (the lowest risk group), JKM 0.3%, and BPJS Kesehatan 4%: IDR 921,600 on top of the payslip. The employee pays JHT 2%, JP 1%, and BPJS Kesehatan 1%: IDR 360,000.

Illustrative split of total employer cost of IDR 10,967,843 into net pay, PPh 21, employee BPJS, and employer BPJS

PPh 21: the TER base and the TER rate

The TER base is where cheap payroll goes wrong. Employer-paid JKK, JKM, and BPJS Kesehatan premiums count as gross income for PPh 21. Employer JHT and JP do not. So the TER base is 10,046,243 + 21,600 + 27,000 + 360,000 = IDR 10,454,843.

Category A in the PP 58/2023 TER table covers TK/0, TK/1, and K/0. Monthly gross above IDR 10,350,000 up to IDR 10,700,000 is taxed at 2.5%.

PPh 21 is therefore IDR 261,371.

Leave the premiums out and the base drops to IDR 10,046,243, in the 2% bracket: IDR 200,925. The payslip looks fine.

It under-withholds about IDR 60,000 a month, and the shortfall lands on her December payslip.

Payroll journal and cost centre

The same run must post the journal. One payslip, one balanced entry:

AccountDebit (IDR)Credit (IDR)
Salary expense, warehouse cost centre10,046,243
Employer BPJS expense, warehouse cost centre921,600
Net salary payable (bank file)9,424,872
PPh 21 payable261,371
BPJS payable (360,000 employee + 921,600 employer)1,281,600
Total10,967,84310,967,843

Budget on IDR 10,967,843, not the IDR 10,046,243 gross. Employer BPJS adds 9.2% on top.

How Does Payroll Software Handle PPh 21 and BPJS Across the Year?

Monthly TER is a prepayment. The last tax period settles the year. Under PMK 168/2023, in force since 1 January 2024, every other month uses the TER tables. December, or the month an employee leaves, recalculates the year with the progressive Article 17 rates and subtracts what was withheld. Any excess goes back to the employee.

That design creates the hard months:

  • THR and bonus months. TER applies to the whole month’s gross, so the rate jumps. December evens out the annual tax, but the payslip should explain the spike.
  • Resignation. The leaving month is the last tax period. Final pay, leave encashment, and the progressive recalculation happen in one run.
  • Retro pay. A backdated raise pays arrears as a separate line in the current period. Filed months stay closed.
  • PTKP changes. The TER category follows PTKP status at the start of the tax year, so a married employee’s first dependant moves them from category A (K/0) to B (K/1).
  • BPJS caps. Wage caps exist and are adjusted. The system must apply the cap valid for the pay period.

Matrix of seven payroll events against gross, TER, BPJS base, annual recalculation, and closed months

Builder’s note: When a vendor demos payroll, I ask for December first. A system that gets December right usually gets the other eleven months right. The reverse is not true.

Payroll Software Features That Must Be There

Five capabilities decide whether payroll software is trustworthy. For the full HR feature map, see our HR software guide.

  1. Calculate from sources, not typed totals. Overtime from approved attendance, wage from the employee master, rates from period-dated tables.
  2. Show the working for every line. Open any payslip line and see the formula, inputs, and rate version.
  3. Handle irregular events natively. THR, bonus, retro pay, resignation, and December, with no spreadsheet detour.
  4. Produce every output from one run. Bank file, payslips, PPh 21 slips, BPJS reports, and the cost-centre journal from the same locked numbers.
  5. Log every change. Who changed a salary, bank account, or PTKP status, when, old and new value, and which run used it.

Payroll calculation dependency map from inputs through overtime, BPJS base, TER base, and PPh 21 to payslip, bank file, and journal

When Is Off-the-Shelf Payroll Software Enough, and When Do You Need Custom?

Stay on SaaS when your pay rules are standard, even if you have thousands of employees. Volume alone does not justify a custom engine.

SaaS is enough when allowances are fixed or attendance-based, overtime follows PP 35/2021 directly, and the journal can be exported as a file.

Build an edge when one of these is true and measured:

  • incentives depend on sales or production data from another system;
  • piece rates or project allowances change by site or client;
  • the journal must post into your ERP by cost centre, project, or client, every run;
  • you run payroll for workers placed at many client companies.

Quadrant mapping pay-rule uniqueness against payroll scale to SaaS, multi-entity SaaS, hybrid, or custom payroll

Count the rule first. An incentive formula for 800 sales staff every month is a real edge.

An allowance for three people is a procedure.

Validate it in 2 weeks. Before you commit budget to payroll software, Blueprint & Prototype maps your pay rules, prototypes the riskiest calculation, and gives you real cost numbers plus a buy, build, or wait recommendation.

How to Choose Payroll Software: 10 Vendor Tests

Bring your own hardest employees to the demo. A vendor’s sample company calculates correctly by design.

  1. Rebuild last month’s real payslips and match every line to the rupiah.
  2. Show the TER base line by line, including employer JKK, JKM, and BPJS Kesehatan.
  3. Change a PTKP status for next year and show the TER category switch.
  4. Apply the right BPJS wage cap for the period to a high earner, and show which cap version was used.
  5. Pay approved overtime only, show the 1/173 working, and keep unapproved hours unpaid.
  6. Run a THR month for one employee, then show the same employee’s December recalculation.
  7. Resign an employee mid-year with final pay, leave encashment, and progressive tax in the final period.
  8. Process a retro raise across two closed months without reopening them.
  9. Generate your bank’s transfer file and a cost-centre journal your accounting system imports (ERP integration guide).
  10. Show the audit trail for one salary change: who, when, old value, new value, and which run used it.

Then run software vendor due diligence on security, SLA, and exit terms.

How Much Does Payroll Software Cost in Indonesia?

The subscription is one line of four. Illustrative first-year ranges for 250 employees, not vendor quotes:

First-year componentSaaS payrollHybridCustom engine
Subscription or buildIDR 60–120mIDR 60–120mIDR 500m–1.5bn
Data and policy setupIDR 10–30mIDR 20–50mIDR 50–150m
Custom edge and integrationIDR 5–20mIDR 100–300mIDR 100–300m
Parallel runs, support, contingencyIDR 10–30mIDR 20–80mIDR 100–250m
Illustrative totalIDR 85–200mIDR 200–550mIDR 750m–2.2bn

Illustrative first-year payroll software cost ranges for SaaS, hybrid, and custom

SaaS scales with headcount. Custom scales with rules, and you own every future TER and BPJS change.

Next: How to Implement Payroll Software Without a Big-Bang Failure.

How to Implement Payroll Software Without a Big-Bang Failure

Keep the old payroll running until two month-ends match. Start with one legal entity.

Swimlane of a 14-week payroll software rollout with two parallel runs and a reconciliation gate

  • Weeks 1–3, import and clean. Employees, PTKP, NPWP, BPJS numbers, bank accounts, wage components. Gate: no missing mandatory field.
  • Weeks 4–6, configure and test. 20 test cases from your hardest employees: THR, resignation, retro raise, high earner. Gate: every case matches.
  • Weeks 7–10, parallel run 1. Run month-end in both systems. Explain every difference, fix, rerun.
  • Weeks 11–13, parallel run 2. Gate: zero unexplained differences, to the rupiah.
  • Week 14, go live. Switch off the spreadsheet for this entity, then add the next one.

If you validated a custom edge, Production Grade Software turns it into secure, observable, maintainable software around the SaaS core.

What I Would Do Before Buying Payroll Software

  • Write your pay rules down first. If two HR staff calculate overtime differently, no vendor can configure either.
  • Test December before January. It tells you more than any feature list.
  • Check the TER base, not the rate. Most errors hide in the base.
  • Budget on employer cost, not gross pay.
  • Buy the engine, build only the edge.

Run the ten tests on last month’s payroll with two vendors. Choose the one that explains every line, not the prettiest payslip.

Next: FAQ About Payroll Software.

FAQ About Payroll Software

What is payroll software?

Payroll software calculates earnings, deductions, PPh 21, and BPJS, then produces the bank file, payslips, tax and BPJS reports, and the journal from one locked run.

What is the best payroll software in Indonesia?

The one that passes your own data. Run last month’s payroll, a THR month, a resignation, and a December recalculation in each sandbox, and compare every line to the rupiah.

How much does payroll software cost?

Illustrative first-year cost for 250 employees: IDR 85–200 million for SaaS, IDR 200–550 million for hybrid, IDR 750 million to 2.2 billion for custom. Rules and integrations drive the real number.

Can payroll software be custom-built?

Yes. Custom makes sense for outsourcing firms, staffing agencies, and platforms that run payroll for many clients.

For most companies, a SaaS core with a custom edge is cheaper and safer.

Is custom payroll software better than off-the-shelf?

Not by default. Off-the-shelf is better for standard pay rules, because the vendor maintains TER and BPJS changes.

Custom is better only when a measured rule creates value configuration cannot.

Two weeks to a real answer

Need help putting this into practice?

Book a Blueprint session and we'll turn the ideas in this article into a tested prototype in front of real users—2 weeks, from $3,000.