Inspiration

Payroll on plantations involves many interdependent rules—attendance, daily premiums, rice allowances, deductions, taxes, and THR (Holy Holiday Allowance). We wanted to make the process more transparent, measurable, and traceable without changing existing transaction sources.

What it does

Payroll orchestrates calculations from daily premiums to monthly payroll. The system calculates palm oil premiums (harvest, pruning, upkeep, and transportation), aggregates them per employee, then combines them with rice allowances, basic earnings, overtime, deductions, BPJS (Social Security Agency), taxes, loan/recovery, THR (Holy Holiday Allowance), and payment allocations.

How we built it

We developed a step-by-step process: daily premium results with FINAL status are aggregated into monthly aggregates, input into wage calculations, and then processed by sequential payroll components. The calculation results are stored in a SIGMA table as a staging/mirror so they can be compared with the existing Harvest system without directly disrupting official data.

Challenges we ran into

The biggest challenge was maintaining consistency between the old business rules and the new implementation, especially since each premium type has a different formula and data source. We also needed to ensure only final data was entered into the monthly payroll, address modules that had no transactions, and provide reconciliation down to the employee level.

Accomplishments we're proud of

We successfully integrated the four Premi Sawit subprocesses into a single payroll flow, created guardrails between stages to prevent calculations from running with unprepared data, and provided a reconcilable data trail from daily results to monthly payroll.

What we learned

Payroll isn't one big formula—it's a series of business decisions that must have a clear sequence, validation, and data source. We learned that separating calculation, staging, and publishing results makes changes safer and discrepancy investigations much faster.

What's next for Payroll

Next, we will expand parity validation on existing payroll results, complete more detailed earnings head mapping, strengthen reporting and account posting, and continue automating the payroll process for more periods, locations, and employee categories.

Built With

Share this project:

Updates