Payroll Reconciliation: A Month-End Close Checklist
A complete month-end payroll close checklist for Indian payroll teams: input and output tie-outs, variance bridges, statutory and GL reconciliation, and a five-day close plan.
Payroll reconciliation is the quiet control that decides whether your salary run is finished or merely executed. Most payroll teams in India treat the bank transfer as the finish line, then spend the next two weeks fielding queries, issuing off-cycle payments, and patching statutory returns. This guide lays out a practical month-end payroll close checklist: what to tie out before you process, what to verify after, how to explain every rupee of movement, and how to leave behind an audit trail that survives scrutiny.
If your close currently ends with someone saying "looks fine," this article is written for you.
What Payroll Reconciliation Actually Means
Payroll reconciliation is the process of proving that your payroll output agrees with independent sources of truth. Not "the software calculated it, so it must be right." Proving it, with numbers that agree.
Three separate reconciliations sit inside every close, and teams tend to do only the first one:
- Input reconciliation — the data going into payroll matches HR records, attendance systems and approved documents.
- Output reconciliation — the payroll register agrees with itself, with last month, and with the bank file.
- Downstream reconciliation — statutory returns, the general ledger, and provisions all agree with the register.
A close is complete when all three tie out and someone has signed to say so. Anything less is a payroll run with optimism attached.
Why This Is The Control That Catches Everything Else
Payroll sits at the intersection of HR data, attendance data, finance data and statutory obligations. That makes it uniquely good at surfacing problems that originated somewhere else entirely.
A headcount roll-forward that doesn't balance often means an exit was never recorded in the HRMS. An unexplained jump in employer PF contribution often means someone changed a salary structure template without telling anyone. A reimbursement clearing account that keeps growing means claims are being paid but never expensed correctly.
None of these are payroll errors in origin. All of them get caught by payroll reconciliation if you actually do it. That is the argument for treating the close as a control rather than a chore.
Why Indian SMBs Usually Find Out Too Late
In most small and mid-sized Indian companies, payroll errors surface in one of three ways, all of them bad.
An employee complains. Someone notices their net pay dropped by ₹4,000, raises a ticket, and HR discovers a leave-without-pay day that shouldn't have been applied. One employee noticed. You have no idea how many didn't.
An auditor asks. During statutory audit, someone asks for a reconciliation between the salary expense in the books and the wages reported in your PF returns. The numbers don't match. Now you're reconstructing twelve months of history under time pressure.
A portal rejects something. A return fails validation because a UAN is wrong or a wage base doesn't align. You correct it late, and the correction is now visible in your compliance history.
All three are detection by accident. A structured month-end payroll close replaces accident with process.
"Payroll Ran" Versus "Payroll Is Closed"
These are different states and they should be treated as such. Payroll ran is a system event. Payroll is closed is an assertion you are willing to defend.
Define your close as a fixed set of tie-outs. Here is a workable definition — a payroll month is closed only when all of the following are true and evidenced:
- Opening headcount plus joiners minus leavers equals closing headcount, and the closing headcount equals the number of payslips generated.
- Every variance greater than your threshold, month on month, has a written explanation.
- Gross pay in the register equals gross pay in the GL journal.
- Net pay in the register equals the total of the bank file, adjusted for held salaries.
- Bank file total equals amount actually debited, with all failures identified and tracked.
- Statutory contribution totals in the register equal the totals in each return or challan.
- All liability accounts show the expected balance or a documented reconciling item.
- Provisions for gratuity, leave and bonus have been updated for the month.
- The exception report pack has been run and every exception is either cleared or explained.
- A named person has reviewed and a named person has approved, with dates.
Ten tie-outs. If your team cannot produce evidence for all ten, the month isn't closed, whatever the calendar says.
The "Feeling" Problem
Experienced payroll administrators develop good instincts. They glance at a register and sense that something is off. This is genuinely valuable and completely insufficient.
Instinct fails on small errors distributed across many employees. It fails on errors that offset each other. It fails when the person with the instinct is on leave. And it produces nothing you can hand to an auditor.
Write the tie-outs down. Make them numeric. Make them repeatable by someone who joined three weeks ago.
The Monthly Payroll Calendar
Most payroll chaos is calendar chaos. Inputs arrive whenever, processing starts whenever, and review happens in whatever time is left before the bank cut-off. Fixing the calendar fixes a surprising share of the errors.
Below is an illustrative calendar for a company that pays on the last working day of the month, with an attendance cycle running from the 21st of the previous month to the 20th of the current month. Adapt the dates; keep the structure.
| Day | Activity | Owner | Output / Gate |
|---|---|---|---|
| 15th | Reminder to managers: pending leave approvals, attendance regularisation | HR Ops | Manager task list issued |
| 18th | Variable pay, incentive and overtime data requested from business heads | Payroll | Input request emails sent |
| 20th | Attendance cycle closes | System | Attendance period locked |
| 21st | Attendance regularisation window opens (48 hours) | Employees / Managers | Corrections captured |
| 22nd | Input freeze. No further changes without exception approval | Payroll Lead | Input freeze declared in writing |
| 22nd | Input reconciliation pack prepared and reviewed | Payroll | Headcount roll-forward, LOP tie-out signed |
| 23rd | Payroll processed in test/simulation mode | Payroll | Draft register generated |
| 23rd–24th | Variance analysis and exception reports run | Payroll | Exception log with explanations |
| 24th | Review by second person (maker-checker) | Finance / HR Head | Review checklist signed |
| 25th | Corrections applied, payroll reprocessed, delta re-verified | Payroll | Final register locked |
| 26th | Approval and sign-off | CFO / Founder | Approved register with signature |
| 26th | Bank file generated, checksum verified, uploaded | Finance | Bank file with control totals |
| Last working day | Salary credited; payslips released | Finance / HR | Credit confirmations |
| +1 to +2 days | Failed credit follow-up, re-issue | Payroll | Unpaid salary register updated |
| +2 days | GL journal posted; accruals booked | Finance | Posted journal with reference |
| Per statutory due dates | Statutory remittances and returns filed | Compliance | Challans and acknowledgements |
| +7 days | GL and liability account reconciliation | Finance | Reconciliation statements |
| +10 days | Close binder assembled and archived | Payroll Lead | Evidence pack locked |
Two features of this calendar matter more than the specific dates.
The input freeze is a real gate, not a suggestion. After the freeze, changes require an exception approval from a named authority and get logged. Without this, you are reconciling against a moving target, and every reconciliation you complete becomes stale within hours.
Review happens before disbursement, not after. Many teams discover errors while preparing the GL entry, which is three days after the money left. Reviewing a draft register costs an hour. Recovering an overpayment costs weeks and goodwill.
Handling The Mid-Month Joiner And Leaver Problem
Any attendance cycle that doesn't align with the calendar month creates a gap. If your cycle closes on the 20th, someone joining on the 25th still needs to be paid for those days.
Handle this explicitly with a "post-cutoff events" schedule — a short, separately maintained list of joiners, leavers, and changes falling between the cut-off and month end. Reconcile that list independently and attach it to the input pack. Treating it as an afterthought is how new joiners end up unpaid in their first month, which is a memorable way to start an employment relationship.
Input Reconciliation: Before You Process
Everything you check after processing is more expensive than the equivalent check before. Input reconciliation is where the return on effort is highest.
Headcount Roll-Forward
The single most useful control in payroll, and the one most often skipped. The logic is simple: opening headcount plus joiners minus leavers must equal closing headcount, and closing headcount must equal the number of payslips you generated.
Here is a worked example for a fictional 300-person company:
| Line | Count | Source |
|---|---|---|
| Opening headcount (1st of month) | 312 | Previous month's closing, per signed close pack |
| Add: joiners during month | 14 | Onboarding tracker / offer acceptances |
| Less: resignations (last working day in month) | (9) | Exit tracker / relieving letters |
| Less: terminations | (2) | HR action log |
| Less: absconding cases regularised | (1) | HR action log |
| Expected closing headcount | 314 | Calculated |
| Payslips generated in this cycle | 317 | Payroll register |
| Difference to investigate | 3 | — |
A difference of three is the whole point. In this example, investigation reveals: two employees who resigned last month were not deactivated and got paid again, and one payslip is a duplicate record created when an employee ID was re-entered.
Without the roll-forward, those three payments go out and you find them next quarter, if at all. With it, you find them in twenty minutes.
Run the roll-forward before you process, and again after, using the final register. If the two versions disagree, something changed after your input freeze and you need to know what.
The Full Input Checklist
Work through this before processing. Each item should have a named source you are reconciling against — not a memory, a source.
- Attendance and LOP tie-out. Total LOP days in payroll must equal total unapproved absence days in the attendance system. Reconcile the count, not just a sample.
- Leave balances. Opening balance plus accrual minus availed minus encashed equals closing balance, at company level and for any employee with an unusual movement.
- Overtime and shift allowances. Hours claimed must be approved. Reconcile total OT hours to the attendance system, and check the rate applied against policy.
- Variable pay and incentives. Reconcile to the approved incentive calculation sheet. Confirm the version you loaded is the approved version, not a working draft.
- Reimbursements. Only approved claims, only within policy limits, only once. Check for the same bill submitted in two months.
- Arrears. Every arrear amount should have a calculation showing the period, the old rate, the new rate and the difference. Arrears without a calculation trail are the most common source of unexplained variance.
- One-time payments. Joining bonuses, retention payouts, referral bonuses, ex-gratia. Each needs an approval document reference.
- Salary revisions effective mid-month. Confirm proration logic. Confirm whether the revision affects statutory bases from the effective date or the month start.
- Loan and advance recoveries. Reconcile the outstanding balance schedule: opening balance minus recovery equals closing balance, employee by employee.
- Investment declaration changes. Confirm which declarations were locked and which changed. Late declaration changes are a leading cause of tax variance complaints.
- Bank detail changes. Any account number changed this month deserves a second look. Verify against a signed request, not an email.
- New joiner master data. PAN, UAN, ESIC number, date of joining, location, cost centre, salary structure. Missing data here becomes a statutory rejection later.
- Exit data. Last working day, notice period recovery, leave encashment, gratuity eligibility, full and final trigger.
- Post-cutoff events list. The joiners, exits and changes falling after your attendance cut-off.
A Practical Way To Run The Input Review
Don't review inputs as one giant spreadsheet. Split by source system and assign an owner to each.
- Attendance owner confirms attendance and LOP totals in writing.
- HR Ops owner confirms headcount movements and master data changes.
- Business heads confirm variable pay and OT for their teams.
- Finance owner confirms recoveries, advances and reimbursement approvals.
- Payroll lead consolidates, checks the roll-forward, and declares the freeze.
Written confirmation matters. It converts a vague shared responsibility into a specific one, and it gives you something to point at when a number turns out to be wrong.
Output Reconciliation: After You Process
You have a draft register. Now prove it is right before anyone gets paid.
Month-On-Month Payroll Variance Analysis
Payroll variance analysis is the core discipline of output reconciliation. The rule is simple and demanding: explain every delta.
Compare this month's register to last month's, component by component. Any component that moved by more than your threshold needs a written reason. Any employee whose net pay moved by more than your threshold needs a written reason.
Reasonable starting thresholds for a mid-sized company:
- Component level: movement greater than 2 percent or ₹50,000, whichever is lower.
- Employee level: net pay movement greater than 10 percent or ₹5,000, whichever is lower.
- Any negative net pay: zero threshold, always investigate.
- Any employee whose pay changed when nothing about them changed: always investigate.
Tighten the thresholds as your data quality improves. Loosen them and you will stop catching things.
The Variance Bridge
A bridge shows how you got from last month's gross to this month's gross, one driver at a time. When the bridge balances to zero unexplained, you have genuinely understood your payroll movement.
Illustrative example for the same fictional company, all figures rounded:
| Step | Driver | Amount (₹) | Notes |
|---|---|---|---|
| A | Opening gross (previous month) | 2,48,00,000 | Per previous signed register |
| B | Add: joiners (14, prorated) | +9,60,000 | Avg. ₹68,570 each after proration |
| C | Less: leavers (12, prorated) | −7,40,000 | Includes 3 mid-month exits |
| D | Add: annual increments effective this month | +6,20,000 | 210 employees revised |
| E | Add: promotions and off-cycle revisions | +1,15,000 | 8 employees |
| F | Add: variable pay and incentives | +14,50,000 | Quarterly payout month |
| G | Less: previous month's one-time payments not repeated | −3,80,000 | Referral and joining bonuses |
| H | Add: arrears for revisions effective earlier | +2,90,000 | Two months' arrears for 210 employees |
| I | Less: LOP impact | −1,35,000 | 96 LOP days vs 61 last month |
| J | Add/less: overtime movement | +45,000 | Higher production volume |
| K | Add: leave encashment on exits | +1,10,000 | 12 exits |
| L | Calculated closing gross | 2,71,35,000 | A through K |
| M | Actual closing gross per register | 2,71,52,000 | Per draft register |
| N | Unexplained variance | 17,000 | Investigate before approval |
That ₹17,000 is the entire value of the exercise. It is small enough to ignore and exactly the size of an error you should not ignore. In this illustration, investigation shows one employee's special allowance was manually overridden during a data correction and never reverted.
Build the bridge every month, in the same format. Once the template exists, it takes under an hour. The first time you build it will take a day, and you will find things.
Employee-Level Exception Checks
Company totals can be right while individual employees are wrong. Run these checks on every cycle:
- Negative net pay. Usually caused by recoveries exceeding earnings. Never let a negative net pay reach the bank file — decide the treatment and document it.
- Zero net pay. Legitimate in some cases (full-month LOP, employee on unpaid sabbatical). Confirm each one rather than assuming.
- Net pay above a sanity ceiling. Set a ceiling above your highest expected net pay. Catches decimal errors and duplicated components.
- Duplicate bank accounts. Two employees with the same account number is occasionally legitimate (spouses) and frequently a data error or worse. Review every instance.
- Blank or malformed bank details. Should block the payslip, not fail silently at the bank.
- Duplicate employee records. Same PAN, same name plus date of birth, or same bank account with different employee IDs.
- Paid twice. Employee appearing in both the regular run and an off-cycle run in the same period.
- Not paid. Active employee with no payslip. The reverse of the roll-forward difference and just as important.
- Missing or invalid PAN. Affects tax computation and downstream reporting.
- Missing or mismatched UAN. Blocks PF return processing.
- Missing or invalid ESIC number for employees within the coverage criteria.
- New joiner proration. Recalculate a sample manually. Confirm the day-count convention matches policy — calendar days, working days, or fixed days changes the answer.
- Full and final settlements. Confirm notice recovery, leave encashment, gratuity where applicable, recovery of assets and advances, and correct tax treatment.
- Employees with identical net pay to last month when their inputs changed. Suggests a stale record or a component that didn't refresh.
The Explain-Every-Delta Discipline
The habit that separates competent payroll teams from excellent ones is refusing to accept "probably the increments" as an explanation.
An acceptable explanation names the driver, the number of employees, and the amount. "Basic salary up ₹6,20,000 because 210 employees received increments averaging ₹2,952 effective the 1st, per the approved increment file dated the 8th." That is an explanation. "Increments" is a guess.
Keep the explanations in a standing variance log. Over a few months, the log becomes a map of where your payroll actually moves, and reviewing next month's variance takes half the time.
Statutory Reconciliation
Statutory reconciliation is where errors become externally visible. A wrong payslip is an internal problem. A wrong return is a compliance record.
An important note before the detail: rates, wage ceilings, coverage thresholds and due dates change, and several vary by state. Nothing below states a current rate. Verify every rate and threshold on the relevant official portal — EPFO, ESIC, the Income Tax Department, and your state government's labour and commercial tax departments — before you rely on it.
Provident Fund
The reconciliation has three layers, and most teams only do the third.
Layer one: the wage base. Confirm which earning components are included in PF wages according to your policy and current legal position, and confirm the payroll system applies that definition consistently. A component added to the salary structure six months ago may never have been mapped to the PF base. Reconcile total PF wages in the register to the sum of the included components, computed independently.
Layer two: the contribution calculation. Employee contribution, employer contribution, and the split of the employer share between the pension and provident components follow defined rules. Recompute for a sample of employees at different salary levels, including at least one at the wage ceiling and one who joined mid-month, and confirm the system agrees.
Layer three: the ECR tie-out. Total PF wages, employee contribution and employer contribution in the electronic challan-cum-return must equal the totals in your payroll register. Then the challan paid must equal the ECR. Three numbers, two comparisons, and both must be exact.
Common PF reconciliation findings:
- Employees with a UAN in the HRMS but not in the ECR, usually new joiners whose UAN linkage is incomplete.
- Exited employees still appearing in the ECR because the exit date was not marked.
- Arrear payments where the PF impact was calculated on the arrear but not reported in the correct wage month.
- Employees who crossed the wage ceiling mid-year where the treatment changed without documentation.
- International workers, where the contribution rules differ and manual handling is common.
Employees' State Insurance
ESI has a structural feature that causes recurring errors: contribution periods. An employee's coverage status is determined at the start of a contribution period and holds for that period even if their wages change mid-period. Teams that reassess coverage every month generate incorrect deductions and confusing employee queries.
Reconcile these points each month:
- The list of employees within ESI coverage matches the applicable wage criteria, evaluated with the correct contribution-period logic.
- Employees who crossed the threshold mid-period are still being handled per the contribution-period rule.
- The ESI wage base includes the correct components — the definition differs from the PF wage base, and using one for the other is a frequent error.
- Employees at covered locations are included, and employees at non-covered locations are correctly excluded. Multi-location companies get this wrong often.
- Contribution totals in the return equal the register totals, and the challan equals the return.
- New joiners have valid insurance numbers, and employees pending registration are tracked with a resolution date.
Verify current wage thresholds, contribution period dates and rates on the ESIC portal.
Professional Tax
Professional tax is a state subject. Slabs, frequency of deduction, filing formats and due dates differ across states, and some states do not levy it at all.
For a single-state company, reconciliation is straightforward: total PT deducted per the register equals the amount remitted for that state.
For multi-state companies, it gets more interesting:
- Employees must be mapped to the correct state — the state of the work location, per that state's rules, which is not always the state in the employee's address.
- Remote and hybrid employees need a documented policy on which registration applies, applied consistently.
- Employees who transferred between states mid-year need their deduction history reconciled across both states.
- Some states apply differential rules for particular months or categories. Confirm your system reflects the current position for each registration.
Maintain a PT reconciliation table by state: number of employees, total deducted, amount remitted, difference. A persistent difference in one state usually means an employee mapping error.
Verify current slabs and due dates with each relevant state authority.
TDS On Salary
Salary TDS reconciliation has a monthly component and a cumulative component, and both matter.
Monthly. Total TDS in the register equals the amount deposited. This is the easy one and it should never fail.
Cumulative. Tax deducted year to date should track sensibly against projected annual liability for each employee. The projection depends on the declared regime, declared investments, other income declared, and expected earnings for the remaining months. When variable pay lands or an investment declaration changes, projections shift and monthly deduction should shift with them.
Run these checks:
- Employees with zero TDS whose projected income suggests a liability. Usually a missing PAN, a wrong regime flag, or an unverified declaration accepted at face value.
- Employees whose monthly TDS jumps sharply. Often correct — a variable payout or a withdrawn declaration — but always explain it, because this generates employee queries.
- Employees whose year-to-date deduction is far behind the pro-rata projection with few months remaining. Left alone, this becomes a painful February and March.
- Regime selection recorded and locked per your policy, with evidence.
- Perquisite values computed and included where applicable.
- Previous employer income included for mid-year joiners who submitted it.
Quarterly. The salary TDS return for the quarter must tie to three months of payroll registers and to the challans deposited. Reconcile before filing, not after. Corrections after filing are visible and avoidable.
Form 16 readiness. Treat this as a monthly habit rather than an annual scramble. Each month, confirm PANs are valid, employee names match PAN records, and the year-to-date figures in payroll match what will eventually be reported. A company that reconciles monthly issues Form 16 in days. A company that doesn't spends April and May correcting returns.
Labour Welfare Fund And Other State Levies
Applicable in some states, with varying frequency — monthly, half-yearly or annual — and typically small amounts. Small amounts are exactly why they get missed.
Keep a simple compliance calendar entry per state and per levy, with the applicability criteria, the frequency, the due date and the evidence of the last payment. Reconcile the covered employee count each period, because coverage criteria differ from PF and ESI.
Gratuity Provision
Gratuity is not a monthly remittance for most companies, but the provision is a monthly reconciliation item. See the provisions section below.
The Statutory Summary Table
Keep one table per month showing every statutory head in one place:
| Head | Register total (₹) | Return/Challan total (₹) | Difference (₹) | Status | Evidence reference |
|---|---|---|---|---|---|
| PF — employee | 9,84,000 | 9,84,000 | 0 | Tied | ECR-ref / challan-ref |
| PF — employer | 9,84,000 | 9,84,000 | 0 | Tied | ECR-ref / challan-ref |
| ESI — employee | 41,000 | 41,000 | 0 | Tied | Return-ref |
| ESI — employer | 1,78,000 | 1,78,000 | 0 | Tied | Return-ref |
| Professional tax — State A | 1,32,000 | 1,32,000 | 0 | Tied | Challan-ref |
| Professional tax — State B | 46,000 | 44,800 | 1,200 | Open | 6 employees mapped to wrong state |
| TDS on salary | 21,60,000 | 21,60,000 | 0 | Tied | Challan-ref |
| Labour welfare fund | 9,400 | 9,400 | 0 | Tied | Receipt-ref |
One page. Anyone can read it. An auditor can read it. That is the standard to aim for.
Bank And Disbursement Reconciliation
Money leaving the company is a control point that deserves more attention than it usually receives.
Before The Transfer
- Bank file total equals net pay total in the approved register, adjusted for any held or excluded salaries. Compute the adjustment explicitly rather than accepting a difference.
- Record count matches payslip count after exclusions.
- The file was generated from the approved register, not from a working version. Version-stamp the register and reference that stamp in the file.
- No manual edits to the bank file after generation. If your process allows editing the file in a spreadsheet before upload, you have a serious control gap. Close it.
- Held salaries are listed separately with the reason and the authorising person.
- Split payments — where an employee's salary goes to more than one account — are individually verified and the split totals to the full net pay.
After The Transfer
- Amount debited equals bank file total. Compare the bank statement to the file, not to your expectation.
- Failed and returned credits identified on the day. Common causes: closed accounts, name mismatch, dormant accounts, incorrect IFSC.
- Re-issues tracked to completion. A failed credit that gets re-issued and fails again should escalate, not loop.
- Bank charges accounted for. Recorded as company expense, never netted against employee pay.
- Unpaid salary register maintained. Every employee whose salary did not reach them, with the reason, the action and the resolution date. This register should be empty within a few days; if it carries balances for weeks, that is a finding in itself.
The Unpaid Salary Register
Keep it as a standing document:
| Employee ID | Month | Net pay (₹) | Reason unpaid | Action taken | Resolution date | Status |
|---|---|---|---|---|---|---|
| E-1042 | Current | 48,500 | Account closed | New details collected, re-issued | +3 days | Cleared |
| E-0876 | Current | 62,000 | Name mismatch | Bank confirmation requested | Pending | Open |
| E-1190 | Previous | 39,000 | Absconding, salary held | Held pending HR decision | — | Held |
The register does two things: it makes sure no employee is quietly forgotten, and it explains why your bank debit doesn't equal your register total.
General Ledger Reconciliation
GL reconciliation is where payroll meets finance, and where balances go to accumulate quietly for years.
Component To GL Code Mapping
Every payroll component must map to exactly one GL account, and the mapping must be documented and reviewed. When a new component is created — a new allowance, a new deduction, a new reimbursement head — it needs a mapping decision before its first use, not after.
Review the mapping table at least twice a year. Look specifically for components mapped to a generic "salary — other" account. That account is where unmapped things go to hide.
The Monthly Payroll Journal
A simplified illustrative entry for a single month. Real charts of accounts are more granular, but the structure holds.
| Account | Debit (₹) | Credit (₹) |
|---|---|---|
| Salaries and wages — basic and allowances | 2,71,52,000 | |
| Employer PF contribution — expense | 9,84,000 | |
| Employer ESI contribution — expense | 1,78,000 | |
| Gratuity expense (provision for the month) | 4,20,000 | |
| Leave encashment expense (provision for the month) | 2,60,000 | |
| Bonus provision — expense | 3,10,000 | |
| Salary payable (net pay) | 2,26,50,000 | |
| PF payable (employee + employer) | 19,68,000 | |
| ESI payable (employee + employer) | 2,19,000 | |
| Professional tax payable | 1,78,000 | |
| TDS on salary payable | 21,60,000 | |
| Loan and advance recovery — asset account | 1,45,000 | |
| Gratuity provision — liability | 4,20,000 | |
| Leave encashment provision — liability | 2,60,000 | |
| Bonus provision — liability | 3,10,000 | |
| Reimbursement clearing | 9,94,000 | |
| Total | 2,93,04,000 | 2,93,04,000 |
Three checks on the journal itself:
- Total debits equal total credits. The system enforces this, but confirm the journal you posted is the journal you intended.
- Gross pay per the register equals the sum of expense lines relating to employee earnings.
- Net pay per the register equals the salary payable credit, adjusted for held salaries.
Clearing The Balance Sheet Accounts
Expense accounts are checked once. Balance sheet accounts need to be reconciled every month, because they carry forward.
Salary payable. Should clear to zero (or to the value of held salaries) once salaries are disbursed. A residual balance means either a credit that didn't go out, a payment posted to the wrong account, or a journal that doesn't match reality.
Statutory liability accounts. Each should clear when the remittance is made. The balance at any point should equal exactly what is due and not yet paid. If PF payable carries a balance after the remittance date, either the payment was posted elsewhere or the liability was overstated.
Reimbursement clearing. Claims accrue as a liability and clear on payment. Persistent growth means claims are being paid without being cleared, or accrued without being paid.
Employee loans and advances. Reconcile the GL balance to the employee-wise schedule every month. These accounts drift because recoveries stop when someone exits and nobody adjusts the balance.
Prepaid and advance accounts. Salary advances paid outside the payroll cycle need to be recovered through payroll and cleared. Advances that sit unrecovered for months become write-offs and awkward conversations.
How To Investigate A Stuck Balance
A methodical approach beats staring at a ledger:
- Age the balance. Sort transactions by date. Most stuck balances are one or two old items, not a general mess.
- Match what you can. Tick off debits against credits of the same amount. What remains unmatched is your actual problem.
- Check the sign. A liability with a debit balance usually means you paid more than you accrued — a duplicate payment or a missing accrual.
- Compare to the register. Does the accrual match what payroll computed for that month? If not, the journal is wrong, not the payment.
- Check for posting errors. Right amount, wrong account is extremely common, especially with similarly named accounts.
- Look for a timing difference. A remittance made after the reporting date is a legitimate reconciling item. Document it and move on.
- Escalate a decision. If a balance is genuinely irrecoverable, someone with authority needs to approve writing it off. Carrying it forward silently is not a decision, it's avoidance.
Document the outcome. A reconciliation that says "difference ₹3,240 — under review" for eight consecutive months is not a reconciliation.
Reconciliation Of Provisions
Provisions are the accounts most likely to be ignored monthly and most likely to cause pain at year end.
Gratuity
Gratuity liability grows with employee tenure and salary. If you compute it once a year, you get a large, unexplained adjustment in March and an actuary asking questions.
Monthly reconciliation approach:
- Opening provision plus charge for the month minus payments to exiting employees minus reversals for employees who left before becoming eligible equals closing provision.
- Reconcile the movement to headcount changes. A large drop should correspond to actual settlements.
- Where an actuarial valuation is obtained, reconcile your monthly accruals to the valuation and understand the difference. The difference is informative; the surprise is not.
Leave Encashment
The liability equals encashable leave balance multiplied by the applicable rate. Both variables move monthly.
- Reconcile the leave balance used for the provision to the leave management system.
- Confirm only encashable leave types are included, per your policy.
- Confirm any leave caps or lapse rules have been applied. A provision computed on uncapped balances is overstated.
- Reconcile encashment payments made during the month to the reduction in provision.
Bonus And Incentive Accruals
- Accrue monthly based on your best estimate rather than booking the whole amount when paid. Monthly accrual makes each month's cost meaningful.
- Reconcile the accrued balance to the expected payout as the year progresses. Revise the estimate when the expectation changes, and note why.
- On payout, confirm the provision clears fully. A residual balance means the estimate was wrong and needs a documented true-up.
Why This Breaks At Year End
Provisions computed once a year produce three problems: a large distorting entry in the final month, no reliable monthly cost picture for management, and no audit trail explaining how the number was derived.
Thirty minutes a month prevents all three. The monthly provision reconciliation is the highest-value, lowest-effort item on this entire checklist.
The Standing Exception Report Pack
Reconciliation improves dramatically when the checks are automated and run identically every month. Here are twelve reports worth having as standing outputs, with what each catches.
- Headcount roll-forward report. Opening plus joiners minus leavers versus payslip count. Catches ghost employees, missed exits and duplicate records.
- Month-on-month variance by component. Every earning and deduction head, current versus previous, with rupee and percentage change. Catches structure changes, mapping errors and formula changes.
- Employee-level net pay variance report. Employees whose net pay moved beyond threshold. Catches individual data errors that averages hide.
- Negative and zero net pay report. Catches over-recovery, full-month LOP that wasn't intended, and structure errors.
- New joiner and leaver proration report. Shows days paid, days in period, and computed proration for every joiner and leaver. Catches wrong dates and wrong day-count conventions.
- Statutory master data exception report. Missing or invalid PAN, UAN, ESIC number, bank details. Catches problems before they become return rejections.
- Duplicate detection report. Duplicate bank accounts, PANs, or name plus date-of-birth combinations. Catches duplicate records and payment irregularities.
- Off-cycle and manual adjustment report. Every payment outside the regular run, with reason and approver. Catches unauthorised adjustments and highlights process failures.
- Arrears and retro report. All arrear amounts with the period, old value, new value and computed difference. Catches unexplained retro amounts.
- Loan and advance schedule reconciliation. Employee-wise opening, recovery, closing, reconciled to the GL. Catches stopped recoveries and orphaned balances.
- Statutory tie-out report. Register totals versus return totals versus challan amounts for each head. Catches remittance and reporting mismatches.
- Bank file control report. File total, record count, exclusions and reconciliation to the register. Catches disbursement errors before the money moves.
Run all twelve every month, even in a quiet month. The value of a standing report comes from consistency; a check you run only when you're suspicious catches only what you already suspected.
Attach an exception log to the pack: each exception, the explanation, the action, the person, the date. Clear it before sign-off.
Segregation Of Duties And Maker-Checker
Payroll moves large amounts of money to individual bank accounts every month. It needs the same controls you would apply to any other payment process.
The Four Roles
- Preparer. Collects inputs, processes payroll, prepares the reconciliation pack.
- Reviewer. Independently checks the reconciliation, variance explanations and exception log. Must be able to say no.
- Approver. Authorises the payout on the basis of the review. Usually finance leadership or a founder.
- Releaser. Uploads and releases the bank file. Should not be the preparer.
The important separations: the person who creates payroll data should not be the person who releases the money, and the person who maintains employee master data should not be the only person who reviews it.
When You Are A Two-Person HR Team
Full segregation is impossible in a small team, and pretending otherwise produces controls that exist on paper only. Use compensating controls instead.
- Move the release outside HR. Even in a very small company, someone in finance or a founder can be the second pair of hands on the bank file. This is the single most important separation.
- Approve a checklist, not a total. The approver signs a short reconciliation summary — roll-forward, variance bridge, exceptions cleared — rather than glancing at a number.
- Automate the checks that a second person would perform. System-generated exception reports do not get tired or rushed.
- Restrict master data changes. Bank account and salary changes should require a documented request and generate a change log entry that someone outside payroll reviews.
- Rotate a sample review. Once a quarter, someone outside payroll picks five random employees and traces their payslip end to end. It takes an hour and it is remarkably effective.
- Log every exception to the freeze. If a change was made after the input freeze, it should be visible, with who and why.
A two-person team can run a genuinely controlled payroll. It just has to be deliberate about it rather than relying on trust as a control.
Documentation And The Audit Trail
If you cannot show how a number was produced, you cannot defend it. A payroll audit trail is not bureaucracy — it is the difference between a five-minute answer and a five-day reconstruction.
The Close Binder
Assemble one evidence pack per month. Digital, in a consistent folder structure, with consistent file names:
- Approved input files, version-stamped, with the approval emails.
- Input reconciliation pack including the headcount roll-forward.
- Draft register and final register, both version-stamped.
- Variance bridge with explanations for every movement.
- Complete exception report pack and the cleared exception log.
- Bank file with control totals, plus the bank confirmation and debit statement.
- Unpaid salary register for the month.
- Statutory tie-out table with challans and acknowledgements.
- GL journal with supporting schedule.
- Balance sheet account reconciliations for every payroll-related account.
- Provision workings for gratuity, leave and bonus.
- Signed sign-off sheet.
The Sign-Off Sheet
One page, and it should be genuinely signed:
| Assertion | Verified by | Date | Comments |
|---|---|---|---|
| Headcount roll-forward balances | |||
| All input files approved and version-controlled | |||
| Variance bridge fully explained | |||
| All exception reports run and cleared | |||
| Register to bank file reconciled | |||
| Statutory totals tied to returns and challans | |||
| GL journal posted and balanced | |||
| Liability accounts reconciled | |||
| Provisions updated for the month | |||
| Reviewed by (name and role) | |||
| Approved by (name and role) |
Version Control On Inputs
The most common cause of a "we processed the wrong file" incident is three files named some variant of "incentive_final." Fix it with a convention:
- File name includes the period, the content and a version:
2026-08_incentive_v3_approved.xlsx. - Only one version is ever marked approved.
- Approved files live in a folder no individual can overwrite.
- The register records which file version was loaded.
Why "We Fixed It Next Cycle" Isn't A Control
Correcting an error in the following month's payroll is a remedy. It is not a control, and the distinction matters.
A control prevents or detects an error before impact. Correcting after the fact means the employee was paid wrong, the return may have been filed wrong, and the books were wrong for a period. It also depends entirely on someone remembering.
Rolling errors forward also compounds. An error corrected in the next cycle appears as an unexplained variance in that cycle, which makes that month's reconciliation harder. Two or three of these and your variance analysis stops being useful.
Fix errors in the cycle where they occur, before disbursement. Where that is impossible, document the error, the correction plan and the correction date, and confirm the correction actually happened.
Common Causes Of Payroll Error, Ranked
Ordered roughly by how often they cause real problems, with the prevention that works.
1. Late Inputs
The dominant cause. Variable pay arrives after the freeze, an exit is communicated on the day of processing, an attendance correction lands during final review.
Prevention. A published calendar with a hard freeze. An exception process requiring named approval for post-freeze changes. Report the exceptions monthly — visibility changes behaviour faster than policy does.
2. Manual Spreadsheets Between Systems
Every spreadsheet handoff is an opportunity for a wrong paste, a filtered row, a broken reference or a stale version.
Prevention. Reduce handoffs. Where a spreadsheet is unavoidable, use a locked template with validation, and reconcile row counts and control totals before and after transfer.
3. Mid-Month Salary Revisions
Revisions effective mid-month create proration, arrears and shifting statutory bases simultaneously.
Prevention. Default to revisions effective from the first of a month. Where mid-month is unavoidable, require a documented calculation, and verify the statutory impact separately.
4. Attendance And Leave Disputes
An employee disputes LOP after payroll is processed. The dispute is often valid and the timing is always painful.
Prevention. Publish attendance data to employees before the freeze with a regularisation window. Most disputes are visibility problems, not disagreements.
5. Master Data Errors
Wrong bank details, wrong PAN, wrong location, wrong cost centre, wrong date of joining. Individually small, cumulatively expensive.
Prevention. Validation at entry. A monthly master data exception report. Employee self-service so people can correct their own details, with approval on sensitive fields.
6. Formula And Structure Changes
Someone modifies a salary structure template or a component formula. It applies to more employees than expected.
Prevention. Treat structure changes as changes requiring approval and testing. Run a before-and-after simulation on the affected population and review the difference before going live.
7. Untested Statutory Rule Changes
A rate or threshold changes. The configuration is updated. Nobody verifies it against a manually computed example.
Prevention. Every rule change gets tested against at least three manually computed cases at different salary levels, including boundary cases. Keep the test evidence.
8. Reimbursement And Claim Errors
Duplicate claims, claims above limits, claims paid twice through different routes.
Prevention. Single channel for claims. System-enforced limits. Duplicate detection on bill numbers and amounts.
9. Exit Processing Gaps
An employee leaves, the exit isn't recorded, and they get paid. Or their full and final settlement misses a recovery.
Prevention. Exit checklist linked to payroll deactivation. Reconcile the exit tracker to payroll deactivations every month — this is exactly what the roll-forward catches.
10. Communication Gaps With Finance
Payroll and finance work from different versions of the truth. The GL entry doesn't match the register and nobody notices for months.
Prevention. Post the journal from the approved register, reconcile it in the same close, and hold a short joint review each month.
A Five-Day Close Plan For A Team That Takes Twelve
If your close currently drags across two weeks, the cause is usually not effort. It is sequencing — checks happening after disbursement, corrections triggering rework, and no clear definition of done.
Here is a compressed plan. Day 1 is the day after your input freeze.
Day 1 — Input Lock And Verification
- Confirm the freeze in writing to all input owners.
- Run the headcount roll-forward and resolve every difference before processing.
- Verify all input files are the approved versions.
- Reconcile attendance and LOP totals to the attendance system.
- Confirm approvals exist for variable pay, OT, arrears and one-time payments.
- Gate: do not process until the roll-forward balances.
Day 2 — Process And Analyse
- Process payroll in simulation mode.
- Run all twelve exception reports.
- Build the variance bridge and draft explanations.
- Investigate every exception and record the finding.
- Gate: unexplained variance must be zero or documented before review.
Day 3 — Review And Correct
- Independent reviewer works through the reconciliation pack and challenges explanations.
- Apply corrections and reprocess.
- Re-run the variance comparison against the previous draft to confirm only intended changes occurred.
- Gate: reviewer signs the review checklist.
Day 4 — Approve And Disburse
- Approver signs off on the reconciliation summary.
- Lock the register with a version stamp.
- Generate the bank file, verify control totals, release with dual control.
- Publish payslips.
- Gate: bank file total reconciles to the approved register before upload.
Day 5 — Post, Reconcile And Archive
- Post the GL journal and reconcile to the register.
- Update provisions for the month.
- Reconcile all payroll-related balance sheet accounts.
- Prepare statutory summaries for remittance.
- Assemble the close binder and archive it.
- Gate: sign-off sheet complete.
Statutory remittances and returns follow their own due dates, which sit outside this five-day window. Everything else is done.
What Actually Makes This Work
Three things, in order of impact.
Move review before disbursement. Most twelve-day closes are five days of work and seven days of rework. Reviewing a draft register eliminates most of the rework.
Automate the checks. If your exception reports are manual spreadsheet exercises, they will be skipped in a busy month. Standing automated reports run whether or not anyone feels like it.
Define done and gate on it. Each day has an exit criterion. If the criterion isn't met, you don't advance — you fix. Without gates, problems slide downstream and get more expensive.
Metrics For Payroll Operations
You cannot improve what you don't measure, and payroll teams are chronically under-measured. Track these monthly, review them quarterly.
| Metric | Definition | Why it matters | Direction |
|---|---|---|---|
| Cycle time | Days from input freeze to close binder archived | Overall process health | Lower |
| Error rate per 1,000 payslips | Payslips requiring correction ÷ total payslips × 1,000 | Accuracy, normalised for size | Lower |
| Off-cycle payment count | Payments made outside the regular run | Signals input and process failures | Lower |
| Query volume per 100 employees | Payroll queries received ÷ headcount × 100 | Clarity and accuracy as employees experience it | Lower |
| First-response time | Median hours to first substantive reply to a query | Employee experience | Lower |
| Query resolution rate within SLA | Queries closed within target ÷ total queries | Follow-through | Higher |
| Statutory filing on-time rate | Filings on or before due date ÷ total filings | Compliance discipline | 100 percent |
| Post-freeze change count | Input changes after the freeze | Discipline of upstream teams | Lower |
| Unexplained variance | Rupee value unexplained in the bridge at sign-off | Reconciliation quality | Zero |
| Cost per payslip | Fully loaded payroll cost ÷ payslips processed | Efficiency over time | Lower |
Two cautions. First, don't optimise cycle time alone — a fast close with a rising error rate is worse than a slow accurate one. Read the metrics together. Second, error rate only means something if errors are reported honestly, so make reporting an error a neutral act rather than a blame event.
Establish your own baseline over three months rather than chasing external benchmarks. The trend in your own numbers is the useful signal.
How Integrated Systems Remove Reconciliation Work
A large share of payroll reconciliation exists only because data lives in separate systems. When attendance, leave, employee master data and payroll share one database, entire categories of checking disappear.
What Integration Eliminates
Attendance-to-payroll transfer errors. No export, no import, no version confusion. LOP days flow from the same attendance record the employee saw and the manager approved. The reconciliation becomes a confirmation rather than an investigation.
Leave balance mismatches. One balance, used for approvals, encashment and provisioning. The classic disagreement between the leave tracker and the payroll leave field cannot occur.
Master data drift. One employee record. A location change updates PT mapping, ESI applicability and cost centre allocation together. No possibility of updating one system and forgetting another.
Joiner and leaver gaps. Onboarding creates the payroll record. Exit deactivates it and triggers full and final. The headcount roll-forward becomes a system-generated report rather than a manual assembly.
Version confusion on inputs. Approvals happen in the system with a timestamp and an approver. There is no "final_v3" problem because there is no file.
What Integration Does Not Eliminate
Be realistic about this. Software does not remove judgement.
- Deciding whether a variance is acceptable still requires a person.
- Confirming that a statutory configuration matches the current rate still requires someone to check the official source.
- Approving an exception still requires authority.
- Reconciling to the bank statement still requires a human to look.
- Reviewing provisions for reasonableness is a judgement call.
Integration removes clerical reconciliation and frees time for analytical reconciliation. That is a substantial gain, but it is a different claim from "the software closes payroll for you."
What To Look For
If you are evaluating whether a system will genuinely reduce reconciliation effort, test these specifics:
- Are attendance, leave and payroll genuinely one system, or separate modules with a sync in between?
- Can it produce a headcount roll-forward without manual assembly?
- Does it generate month-on-month variance reports at component and employee level?
- Are exception reports standing outputs, or do you build them yourself?
- Is there an immutable audit log of who changed what and when?
- Does it support maker-checker on payroll approval and master data changes?
- Does it produce statutory outputs that tie directly to the register?
- Can it export a GL journal in your chart of accounts?
- Does employee self-service cover payslips, tax declarations and queries?
The answers tell you how much reconciliation work will actually shift from your team to the system.
Frequently Asked Questions
How long should a payroll close take?
For a company of a few hundred employees with reasonable data discipline, five working days from input freeze to archived close binder is a realistic target, with statutory filings following their own due dates. Under three days usually means checks are being skipped. Over ten days usually means review is happening after disbursement and generating rework. Measure your own cycle time before setting a target.
What is the difference between payroll reconciliation and a payroll audit?
Reconciliation is an internal control you run every month to prove your numbers agree across sources. A payroll audit is a periodic independent examination, usually by internal or statutory auditors, testing whether those controls exist and work. Good monthly reconciliation makes audits short, because the evidence already exists in your close binder.
We are a 40-person startup. Is this level of process overkill?
Scale the checklist, not the principle. A 40-person company can run the headcount roll-forward, a variance comparison, a negative net pay check, a bank file tie-out and a statutory tie-out in about an hour. Skip the elaborate binder if you like, but keep the tie-outs — small companies have less tolerance for a payroll error, not more.
What should we do if we find an error after salaries are paid?
Act quickly and document. Establish what happened, how many employees are affected, and the total value. Inform affected employees before they discover it themselves. For underpayments, correct through an off-cycle payment rather than waiting. For overpayments, agree a recovery approach in writing with the employee. Correct any statutory impact in the appropriate period, and record a root cause so the same error doesn't recur.
How do we handle payroll reconciliation for employees in multiple states?
Add a state dimension to your reconciliation. Maintain an employee-to-state mapping based on documented rules, reconcile professional tax by state registration, verify ESI applicability by location, and confirm minimum wage and leave rules per the applicable state. Remote employees need a written policy on which state applies, applied consistently and reviewed if their location changes.
What is a payroll variance bridge and do we really need one every month?
A variance bridge starts with last month's gross pay and adds or subtracts each driver — joiners, leavers, increments, variable pay, arrears, LOP — until it reaches this month's gross. Yes, run it monthly. Once the template exists it takes under an hour, and the unexplained residual is often the only thing standing between you and an error that otherwise reaches an employee's bank account.
How do we do maker-checker with only two people in HR?
Move one role outside HR. The most valuable separation is between whoever prepares payroll and whoever releases the bank file, and a finance person or founder can hold the release role. Add automated exception reports as a substitute reviewer, restrict master data changes with a logged approval, and have someone outside payroll trace a few random employees end to end each quarter.
Where should we check current PF, ESI, PT and TDS rates?
Always from official sources: the EPFO portal for provident fund, the ESIC portal for state insurance, your state government's commercial tax or labour department for professional tax and labour welfare fund, and the Income Tax Department for salary TDS. Rates, wage ceilings and due dates change, and several vary by state. Verify at least annually and whenever a change is announced, then test the configuration against manually computed examples before the first live run.
Closing The Loop
Payroll reconciliation is not glamorous work, and it rarely gets noticed when it goes well. That is exactly what makes it valuable. A payroll team that reconciles properly is a team that is not spending its month explaining, correcting and apologising.
Start with three things this month, in this order. Run the headcount roll-forward before you process. Build the variance bridge and refuse to accept an unexplained residual. Get one person outside payroll to review before disbursement rather than after. Those three changes catch most of what typically goes wrong, and none of them requires new software.
Once the discipline is in place, the tooling question becomes worth asking. If your close is slow because attendance sits in one place, leave in another and payroll in a spreadsheet, an integrated system removes whole categories of reconciliation rather than making them faster. CozyHR was built for exactly that — attendance, leave and payroll on one record, with the exception reports, audit trail and statutory outputs that a real month-end close needs. If that sounds like the problem you have, it is worth a look when you are ready.
Either way, write your tie-outs down, gate on them, and sign the sheet. That is the whole discipline.
