People · Payroll
Payroll with the approvals on the record, not in the mail.
Included from Growth upward.
The run is a spreadsheet, the approval is an email, and the payslip is a PDF somebody made by hand. Six months later nobody can say who signed off which month.

What it does
A run that is approved before it is paid.
- 01
A run with states
Opened, calculated, approved, released. A run cannot be paid from the 'calculated' state, and the screen shows which one it is sitting in and who it is waiting on.
- 02
The sign-off chain, stored
Every past run carries the people who approved it, in order, next to its gross and net. That is the audit answer.
- 03
Salary components
Earnings and deductions defined once and applied across the run, rather than re-derived per person per month.
- 04
Payslips people can fetch themselves
Each employee reaches their own payslip and nobody else's — self scope, enforced in the query.
For example
Who signed off August?
- 1The August run is opened for 34 people and calculates from attendance — no separate import.
- 2It reaches “calculated”: ₹26,42,806 gross, ₹25,74,806 net, and the screen says it is waiting for an approver.
- 3July shows what happens next: Hari M → Farah C → Dev Iyer, stored on the run in that order.
- 4Only then can it be released and paid. A run cannot be paid out of the wrong state.
- 5Each of the 34 fetches their own payslip and nobody else's.
Six months later, “who approved August?” is a column on the run — not an archaeology project through somebody's mail.

How it runs
In, through, out
The month is opened
Attendance and components calculate it
It is approved, released, and the payslips exist
'Who approved this run?' is a column, not an archaeology project.
It does not work alone
What Payroll is connected to
The point of one set of records is that these are not integrations. They read the same rows.
Problems it solves