CozyHR
Menu
Products
Docs
Resources
Compliance
Company
Support
Blog
PayrollHR AnalyticsComplianceHRMS

Payroll Reconciliation: A Month-End Close Checklist

A practical month-end payroll close checklist for HR and finance teams in India: input freeze, headcount and attendance reconciliation, gross-to-net control totals, variance bri...

CozyHR editorial team 14 August 2026 47 min read
CozyHR Blog
Payroll Reconciliation: A Month-End Close Checklist

Payroll Reconciliation: A Month-End Close Checklist

Every payroll manager knows the feeling. It is the 26th, the bank file is due tomorrow, three cost centres are still arguing about attendance, and someone has just remembered that two people resigned mid-month. This is exactly the moment a payroll reconciliation checklist earns its keep. Payroll reconciliation is the disciplined comparison of what should have been paid against what the payroll engine has actually calculated, done before money leaves the account and before a single statutory return is filed. It is not a formality, and it is not the same thing as "checking the payroll register." It is a structured set of controls that converts a black-box calculation into something a finance controller can sign.

This guide lays out a complete month-end payroll close for Indian HR and finance teams: the calendar, the control totals, the headcount movement schedule, the variance thresholds, the statutory tie-outs, the bank file check, the general ledger posting, and the sign-off evidence pack. Every number used in the worked examples below is illustrative only — invented to show the arithmetic of a control, not to represent any real organisation, benchmark or statutory rate. Wherever statutory matters come up, treat the guidance as structural and confirm current rates, thresholds and due dates with official government sources or your compliance advisor before you act on them.

---

What Payroll Reconciliation Actually Is

Payroll reconciliation is the process of proving three things:

  1. Completeness — everyone who should be paid is in the run, and nobody who should not be paid is in the run.
  2. Accuracy — each person's gross, deductions and net are calculated from approved, current inputs.
  3. Consistency — the numbers in the payroll register, the bank file, the statutory challans and the general ledger all agree with each other, and any differences are explained.

Notice what is not on that list. Reconciliation is not the same as recalculating every employee's salary from scratch. Nobody has time for that, and the payroll engine is usually better at arithmetic than a human with a spreadsheet. Reconciliation is about proving relationships between totals and then investigating only the exceptions. You are looking for the handful of records where the relationship breaks.

A useful mental model: payroll is a system of linked balances. Opening headcount plus joiners minus exits equals closing headcount. Last month's gross plus explained changes equals this month's gross. Total net pay equals the sum of the bank file. Total employer cost equals the total debited to the general ledger. If every one of those equations holds and every difference has a name attached to it, your payroll is reconciled. If any of them does not hold, you have found your error before your employees did.

Reconciliation vs. verification vs. audit

These three words get used interchangeably and they should not be.

  • Verification is checking a single input against its source — does this employee's revised CTC match the signed increment letter?
  • Reconciliation is checking that two independently produced totals agree — does the sum of the bank file equal the net pay column of the register?
  • Audit is an after-the-fact examination of whether the controls themselves were performed and evidenced.

A good month-end close does verification on a sample and exception basis, reconciliation on 100% of totals, and leaves behind enough evidence that the audit is boring. Teams that try to verify everything run out of time and end up reconciling nothing.

---

Why Month-on-Month Variance Analysis Catches Most Errors

If you only have time for one control, make it month-on-month variance analysis. Here is the logic: in a stable organisation, payroll is a highly repetitive process. The same people get paid roughly the same amounts every month. Genuine change in the total comes from a small, knowable set of causes — joiners, exits, increments, promotions, variable pay cycles, arrears, attendance loss, and statutory changes. Everything else is an error.

So instead of asking "is this employee's salary correct?" (an unbounded question), you ask "why is this month's total different from last month's?" (a bounded question with a finite list of legitimate answers). If you can explain the entire delta with named causes, the payroll is almost certainly right. If you have an unexplained residual, that residual is your error, and it usually points straight at the employee or component that caused it.

This works at two levels:

  • Aggregate variance — total gross, total deductions, total net, total employer cost, month over month, with a bridge that explains the movement.
  • Employee-level variance — every employee whose net pay moved by more than a defined threshold appears on an exception report and must be explained by name.

The aggregate check tells you whether something is wrong. The employee-level check tells you what. You need both. A payroll where five people were overpaid and five were underpaid by similar amounts will show a clean aggregate variance and a filthy employee-level one.

The variance bridge, illustrated

Here is an illustrative variance bridge for a fictional 500-person company. All figures are made up for demonstration.

Bridge itemAmount (INR, illustrative)Explanation source
Previous month total gross3,10,00,000Prior month's signed register
Add: 9 joiners (part-month)+11,40,000Joiner list from HRMS
Less: 6 exits (part-month)-7,80,000Exit list + F&F schedule
Add: annual increment effective this month (128 employees)+9,60,000Increment master
Add: arrears for increments effective last month, processed now+2,15,000Arrears report
Add: quarterly incentive payout+6,50,000Approved incentive file
Less: loss of pay (unapproved absence)-1,05,000Attendance-to-payroll extract
Add: one-off relocation payment (2 employees)+1,20,000Approved reimbursement claim
Expected current month gross3,31,00,000Sum of above
Actual current month gross per register3,31,42,000Payroll register
Unexplained residual42,000Must be investigated before release

That 42,000 residual is the entire point of the exercise. In this illustrative case, investigation might reveal that a shift allowance was applied at the revised rate to employees who had already been paid it at the old rate, or that a single employee's basic was entered as an annual figure instead of a monthly one. Either way, you found it because the bridge did not close — not because someone happened to look at the right row.

Rule of thumb for the bridge: every line item must trace to a document or system report that exists independently of the payroll engine. A bridge built from numbers the payroll engine itself produced proves nothing.

---

The Month-End Payroll Close Calendar: D-10 to D+7

A payroll close fails for scheduling reasons far more often than for technical ones. Inputs arrive late, approvals arrive later, and the reconciliation gets compressed into the last four hours before the bank cut-off — which is precisely when nobody has the bandwidth to investigate a 42,000 residual properly.

Fix the calendar first. Define D as the disbursement date (say, the last working day of the month, or the 1st of the following month, whichever your policy states). Then work backwards.

DayActivityOwnerOutput / gate
D-10Publish close calendar reminder to all input owners; open input collection windowPayroll leadCalendar acknowledged by managers
D-9Attendance and leave regularisation window opens for employeesHR opsEmployee self-service reminder sent
D-7Attendance/leave regularisation window closes for employeesHR opsEmployee inputs locked
D-6Manager approval deadline for attendance, overtime, shift claimsReporting managersPending-approval report at zero
D-6Reimbursement claim submission deadlineEmployeesClaims queue frozen
D-5Input freeze — master data, joiners, exits, increments, one-time payments all lockedPayroll leadSigned input freeze declaration
D-5Headcount movement schedule preparedHR opsJoiner/exit/transfer reconciliation
D-4Trial payroll run #1Payroll executiveDraft register, error log
D-4Exception reports generated: negative net, zero net, high variance, missing bank detailsPayroll executiveException log with owners
D-3Exception resolution and corrections; trial payroll run #2Payroll executive + HR opsCleared exception log
D-3Variance bridge prepared vs. prior monthPayroll leadBridge with residual explained
D-2Statutory computation review (PF, ESI, PT, TDS) at aggregate levelPayroll lead + financeStatutory summary schedule
D-2Gross-to-net control totals reconciledFinance analystControl total sheet
D-2Four-eyes review by an independent reviewerFinance controller / senior HRReview notes, queries raised
D-1Final payroll run and lock; register frozenPayroll leadLocked final register
D-1Bank file generated, hash/control totals matched to registerPayroll lead + treasuryBank file with matched totals
D-1Authorised sign-off (dual signature)Controller + HR headSigned payroll authorisation
DBank file uploaded and released; payslips publishedTreasury + payrollDisbursement confirmation
D+1Bank confirmation reconciliation — successful vs. failed creditsTreasuryFailed-credit action list
D+1Payroll journal posted to general ledgerFinancePosted JV with reference
D+2Failed credits reissued; payslip queries triagedPayroll opsReissue log
D+3GL-to-payroll reconciliation; cost-centre allocation checkFinanceReconciliation statement
D+3Statutory payment preparation and challan generationComplianceChallan working papers
D+5Statutory payments made per applicable due datesFinancePayment confirmations filed
D+7Close pack archived; post-close review of exceptions and root causesPayroll leadEvidence pack + action items

Two notes on this calendar. First, adjust the absolute dates to your own disbursement policy and to applicable statutory due dates, which vary by contribution type and can change — always confirm them against current official notifications. Second, resist the temptation to compress D-5 through D-2. Those four days are where the reconciliation actually happens. If you squeeze them, you are not saving time; you are converting a controlled process into a gamble.

---

Step 1: Input Freeze and Cut-Off Discipline

Nothing in this checklist works if inputs keep changing. The single highest-leverage control in payroll is a hard input freeze, publicly declared and consistently enforced.

What "frozen" means

At the freeze point, the following are locked and no longer editable without an exception approval:

  • Employee master data — name, bank account, PAN, statutory identifiers, department, cost centre, location
  • Compensation master — CTC, salary structure, component-wise breakup, effective dates
  • Joiner and exit records, including exact dates of joining and last working day
  • Attendance and leave data for the pay period
  • Overtime, shift allowance and other variable claims
  • Reimbursement claims approved for this cycle
  • One-time payments — bonuses, incentives, retention payouts, relocation
  • Recovery instructions — notice pay, asset recovery, advance repayment, loan EMIs

The exception route

You will always get post-freeze changes. The answer is not to refuse them absolutely — it is to route them through a slower, noisier, documented path so that the default becomes "wait for next cycle."

A workable rule set:

  • Post-freeze changes require written approval from a named authority (typically the HR head or finance controller, not the requester's manager).
  • Only two categories qualify: (a) a change that would cause a legal or statutory breach, and (b) a change where an employee would receive materially wrong pay — for example, a joiner missed entirely, or a salary keyed at ten times its correct value.
  • Everything else moves to arrears next month. A delayed reimbursement is an inconvenience. A rushed change to a locked register is a control failure.
  • Every exception is logged with requester, approver, reason, timestamp and the record changed. Review the log monthly. If the same team generates five exceptions every cycle, the problem is their upstream process, not your freeze.

Cut-off boundary problems to watch

Cut-off dates create their own class of error. Watch for:

  • Attendance periods that do not match the pay period. If you pay for the calendar month but capture attendance from the 21st to the 20th, every exit and joiner near the boundary needs careful handling — and every new payroll executive will get it wrong at least once.
  • Joiners between freeze and disbursement. Decide the policy in advance: pay in the current cycle via an off-cycle run, or pay next month with arrears. Write it down. Ambiguity here produces both missed payments and duplicate payments.
  • Exits after freeze. An employee who resigns on D-3 may already be in the run. If their last working day falls before month-end, you have an overpayment to recover — which is far harder than not paying in the first place.
  • Retrospective attendance approvals. A manager approving leave for a past month after the books are closed creates an arrears or recovery item, not a change to the closed period.

---

Step 2: Headcount Reconciliation — Joiners, Exits and Transfers

Headcount reconciliation is the completeness control. It answers: is the right population in this payroll? It is also the control most often skipped, because it feels administrative. It is not. Missing joiners and paid-after-exit employees are among the most common and most expensive payroll errors.

The schedule is simple arithmetic that must tie exactly.

LineDescriptionCount (illustrative)Source document
AOpening headcount (paid in prior month's register)500Prior month locked register
BAdd: joiners in current period+14Onboarding report / offer acceptance list
CLess: exits in current period-9Exit clearance / resignation approvals
DAdd: rejoiners / returns from unpaid leave+2HR case records
ELess: employees moved to unpaid leave (full month)-3Leave register
FLess: employees transferred to another payroll entity-4Inter-company transfer approvals
GAdd: employees transferred in from another entity+3Inter-company transfer approvals
HExpected closing headcount (A+B-C+D-E-F+G)503Calculated
IActual employee count in current payroll register505Payroll register
JDifference (I - H)2Investigate before release

In this illustrative case, a difference of 2 might mean two exited employees were not deactivated, or two transferred employees are being paid by both entities, or two records were duplicated during a data import. Any of those is a real problem, and none of them would be caught by looking at salary calculations.

Sub-checks within headcount reconciliation

  • Joiner completeness. Cross-check the joiner list from the recruitment or onboarding system against the payroll additions. Anyone onboarded but not added is about to receive zero on their first payday — a memorable experience for the wrong reasons.
  • Joiner pro-ration. For a mid-month joiner, confirm the pro-ration basis (calendar days, working days, or fixed 30-day convention) matches policy and is applied consistently. Mixed conventions across components is a classic silent error.
  • Exit completeness. Cross-check exits against the register: no exited employee should appear with a regular salary line unless their last working day falls within the pay period.
  • Full and final settlements. Confirm whether F&F is processed in the regular run or separately. Either is fine; both at once is not. Employees settled in both places get paid twice.
  • Notice pay recovery. Where an employee leaves without serving notice, confirm the recovery is applied and that the resulting net is not negative in a way the system silently suppresses.
  • Transfers. For an intra-group transfer, the sending entity must stop and the receiving entity must start, on adjacent dates with no gap and no overlap. Reconcile both sides.
  • Dormant records. Employees on long unpaid leave, sabbatical or suspension should be explicitly flagged, not simply absent. An absent record is indistinguishable from a deleted one.

---

Step 3: Attendance and Leave-to-Payroll Reconciliation

This step proves that the days you paid for match the days the attendance system recorded.

The core identity for each employee:

Payable days + Loss-of-pay days + Unpaid-leave days = Total days in the pay period

If that does not hold for every employee, something is wrong with either the attendance extract or the payroll import. Run it as a computed check across the entire population, not as a spot check.

The reconciliation sequence

  1. Freeze the attendance period and generate the extract. Note the exact timestamp — you will need it for the evidence pack.
  2. Check for unapproved records. Any attendance entry still pending manager approval at freeze must be resolved by policy — either treated as present, treated as loss of pay, or held for arrears. Whichever you choose, apply it uniformly and document it.
  3. Reconcile record counts. Number of employees in the attendance extract should equal number of active employees in payroll, allowing for documented exclusions (for example, employees on retainer contracts outside the attendance system).
  4. Reconcile total days. Sum of payable days across all employees, compared against expected days multiplied by headcount, adjusted for joiners and exits. An unexplained gap means a mismatched calendar or a partially imported file.
  5. Check leave balances. Leave availed in the period should reduce leave balance by the same quantum. A leave that reduces pay but not balance (or vice versa) indicates a broken integration.
  6. Check holiday and week-off calendars. Different locations often have different holiday lists. If your payroll applies a single calendar to a multi-state workforce, employees at some locations will be marked absent on their own public holidays.
  7. Reconcile overtime and shift claims. Total claimed hours from the attendance system should equal total hours paid, at the approved rate. Confirm the rate itself against policy — overtime rate errors are silent and repeat every month.

Illustrative attendance reconciliation

CheckExpected (illustrative)Actual (illustrative)Status
Active employees in attendance extract5055014 missing — investigate
Total payable days (all employees)15,14015,092Gap of 48 days
Employees with loss of pay2222Match
Total LOP days4848Match
Overtime hours claimed1,2601,260Match
Employees with zero payable days352 unexpected — investigate

Reading this illustrative table: the 48-day gap is fully explained by the LOP days, so that is fine. The four missing employees and the two unexpected zero-payable-day employees are not explained, and both must be resolved before the run is finalised. Zero-payable-day cases deserve particular attention — they usually mean either a genuine full-month absence, or an employee whose attendance simply failed to import.

---

Step 4: Gross-to-Net Control Totals

Control totals are the arithmetic backbone of the close. The principle is that the payroll register must internally balance, and each balancing relationship should be computed independently of the payroll engine — ideally in a spreadsheet or BI report fed by an export, so that an engine bug cannot hide itself.

ControlRelationship to proveAmount (INR, illustrative)Tie-out
C1Sum of all earning components = Total gross earnings3,31,42,000Must equal register gross
C2Sum of all pre-tax deductions (employee PF, professional tax, etc.)24,86,000Feeds taxable income calc
C3Sum of all post-tax deductions (loans, advances, recoveries)3,42,000No impact on taxable income
C4Total income tax deducted at source41,20,000Feeds TDS liability
C5Total gross - total deductions = Total net pay2,61,94,000C1 - (C2+C3+C4)
C6Sum of bank file amounts2,61,94,000Must equal C5 exactly
C7Employee count in register505Must equal headcount schedule
C8Payment record count in bank file5032 held for bank detail issues
C9Total employer statutory contributions18,74,000Employer cost, not deducted from net
C10Total employer cost (C1 + C9)3,50,16,000Must equal GL debit total

The two relationships that matter most are C5 = C6 and C10 = GL debit. If net pay per the register does not equal the sum of the bank file to the rupee, do not release the file — no exceptions, no "we'll adjust next month." A mismatch here means either the file was generated from stale data or some employees were dropped in export.

Note the deliberate difference between C7 (505) and C8 (503) in the illustration. Two employees are held back because of bank detail issues. That is a legitimate difference, but it must be named: which two, why, and when will they be paid? An unnamed count difference is an error; a named one is a controlled exclusion. Track held payments on a separate schedule and clear them within a defined number of days.

Component-level sanity checks

Alongside the totals, run a component-level scan:

  • Negative earnings. A negative value in an earnings component almost always indicates a botched retro calculation.
  • Negative net pay. Deductions exceeding gross. Usually loan EMI or notice recovery applied to a low-pay month. Needs a policy decision, not a silent suppression.
  • Zero net pay with non-zero gross. Everything was deducted. Investigate.
  • Components outside expected range. For each component, compute minimum, maximum and median across the population and eyeball the extremes. A house rent allowance ten times the median usually means a data entry slip.
  • Ratio checks. Basic as a percentage of gross should sit in a narrow band across employees on the same structure. Outliers indicate structure misassignment.
  • Duplicate bank accounts. Two employees with the same account number is either a genuine family arrangement or a fraud indicator. Either way, it should be reviewed by a human every cycle, not ignored.

---

Step 5: Variance Analysis and Exception Thresholds

Once totals balance, move to variance. Aggregate variance tells you the payroll is plausible; employee-level variance tells you which records to open.

Set thresholds in advance and apply them mechanically. Thresholds set after seeing the results are not controls — they are rationalisations.

Variance testSuggested threshold (set your own)Action if breached
Total gross vs. prior monthMovement beyond a defined percentage bandPrepare full bridge; residual must be zero
Total net vs. prior monthMovement beyond a defined percentage bandReconcile to bridge and deduction changes
Individual net pay vs. prior monthChange above a defined percentage or absolute rupee value, whichever is lowerNamed explanation per employee
New employee with unusually high first-month payFirst-month net exceeding expected pro-rated valueVerify joining date and pro-ration basis
Employee paid this month but not last monthAny occurrenceConfirm against joiner list
Employee paid last month but not this monthAny occurrenceConfirm against exit list
Component appearing for the first timeAny occurrenceConfirm approval document exists
Component disappearingAny occurrenceConfirm intended, not a master data wipe
Employer cost per employeeMovement outside bandCheck statutory master changes
Deduction as a share of gross, per employeeOutside defined bandCheck loan, recovery and tax setup

Two design notes. First, use "percentage or absolute, whichever is lower." A pure percentage threshold ignores large-rupee changes on high salaries; a pure rupee threshold floods you with junior-employee noise. The combination gives you a workable list. Second, calibrate the thresholds so that the exception list is long enough to be useful and short enough to be read. If your exception report has 300 rows, nobody reads it, and the control has quietly failed while appearing to operate.

Worked illustrative example: employee-level variance

Assume a threshold of "net pay change greater than 10% or INR 5,000, whichever is lower."

Employee (illustrative)Prior netCurrent netChangeExplanationCleared?
E-104262,40078,900+16,500Promotion effective this month plus one month arrearsYes — increment letter on file
E-227745,00022,500-22,50015 days loss of payYes — attendance record
E-339188,00088,0000No changeNot on report
E-410851,20091,200+40,000No documented causeNo — investigate
E-5560034,800+34,800New joiner, part monthYes — joiner list
E-602373,50066,100-7,400Revised tax projection increased TDSYes — tax computation

Row E-4108 is the reason the control exists. In this illustration, an investigation might reveal that a one-time bonus intended for a different employee with a similar ID was applied here, or that a monthly figure was entered where an annual one belonged. Either way, it was caught before disbursement, which is the difference between a corrected line and an awkward recovery conversation.

---

Step 6: Arrears, Retro Pay and Off-Cycle Runs

Arrears are where most payroll errors are born, because they involve recalculating a closed period and layering the difference onto an open one.

The arrears checklist

  • Confirm the effective date of every retro change. An increment effective from the 1st of a past month generates a different arrear than one effective mid-month.
  • Confirm which components are retro-eligible. Basic and allowances typically recalculate; some fixed reimbursements do not. Get the rule stated in policy, not decided per case.
  • Recalculate the old period, not just the difference. Applying a flat difference ignores attendance in the retro period. An employee who had loss of pay in the retro month should not receive full arrears for it.
  • Check statutory impact. Retro earnings change the base for statutory contributions and for tax in the periods affected. Confirm how your system treats this and whether prior-period contributions require adjustment. Treatment varies by contribution type — verify against current official guidance.
  • Check for double-counting. The most common arrears error is paying the same arrear twice: once when it was manually processed as a one-time payment, and again when the effective-dated master change triggered an automatic retro. Reconcile the arrears report against the one-time payment file before finalising.
  • Cap and disclose. Show arrears as a separate line on the payslip with the period it relates to. Employees who cannot see what they were paid for will raise queries, and query volume is a hidden cost of the close.

Off-cycle discipline

Off-cycle runs — for missed joiners, corrections, or urgent settlements — must go through the same reconciliation as the main run, in miniature: control totals, variance against expectation, bank file tie-out, and independent sign-off. The shortcut version of this is where an unrecorded payment enters the ledger. Also confirm that off-cycle payments are picked up in the same month's statutory computations and GL posting, not orphaned between periods.

Off-cycle controlWhat to check
AuthorisationNamed approver, documented reason, before processing
PopulationExplicit employee list, no "all active" defaults
DuplicationConfirm employee not already paid in main run for same period
StatutoryContributions and tax computed on combined monthly earnings, not in isolation
Bank fileSeparate file, separate control total, separate release approval
GLPosted to the same period as the main run

---

Step 7: Reimbursements and Non-Payroll Components

Reimbursements sit awkwardly between payroll and accounts payable, and that ambiguity is exactly where controls fall through.

Checklist:

  • Claim-to-payment tie-out. Total approved claims in the claims system must equal total reimbursement amounts in the payroll register. Any difference means claims were dropped, duplicated, or partially processed.
  • Approval completeness. No claim should reach the register without an approval record. Run a report of reimbursements paid with no matching approval — it should be empty.
  • Eligibility and limits. Confirm each claim sits within the employee's entitlement for the component and the period. Systems that allow limit overrides need an override report reviewed every cycle.
  • Supporting documentation. Where policy requires proofs, confirm that the proof-verification status is complete. A claim paid with unverified proofs may create a tax treatment problem later.
  • Correct routing. Reimbursements paid through payroll versus through accounts payable must not overlap. Reconcile both, because an employee who claims in both systems will be paid twice and will not necessarily tell you.
  • Tax treatment. Confirm the taxable/non-taxable classification of each reimbursement component matches current rules and your declared policy. Misclassification here surfaces months later during annual tax reconciliation, when it is expensive to fix. Confirm current treatment with official sources or your tax advisor.
  • Carry-forward. Unclaimed entitlements and unprocessed claims should be tracked as a schedule, not lost at month-end.

---

Step 8: Statutory Reconciliation — PF, ESI, Professional Tax and TDS

This section is structural on purpose. Contribution rates, wage ceilings, eligibility thresholds, state-wise professional tax slabs and filing due dates are all subject to change and vary by state and by employee category. Do not take any rate or date from a blog post, including this one. Verify against the current official notifications from the relevant authority, or with your compliance advisor, before every filing cycle.

What does not change is the shape of the reconciliation. For each statutory item you should be able to answer four questions:

  1. Population — who is covered, and does the covered count in payroll match the eligibility rules?
  2. Base — what earnings form the contribution or tax base, and does the computed base tie to the register?
  3. Computation — does the amount equal base multiplied by the applicable rate, within rounding?
  4. Payment and filing — does the amount paid equal the amount computed, and does the return filed equal the amount paid?
Statutory itemPopulation checkBase checkComputation checkPayment/filing check
Provident fundCovered employee count vs. eligibility rules; new joiner enrolment; excluded employees documentedWage base per applicable definition ties to register componentsEmployee and employer shares recomputed independently; ceiling/opt-out cases reviewedChallan total = computed total; return employee count = payroll covered count
ESIEmployees within applicable wage threshold; contribution-period rules for those crossing the threshold mid-periodGross as defined for ESI ties to registerEmployee and employer shares recomputedChallan total = computed; coverage list matches
Professional taxState-wise applicable population by work locationSlab-determining earnings figurePer-state slab applied to correct locationState-wise challans total to payroll deduction
Income tax (TDS)All employees with taxable income; new joiners with prior-employer incomeAnnual projected income, declarations, proofsMonthly deduction = projected annual liability apportioned over remaining monthsChallan total = register TDS total; quarterly return ties to challans

Common statutory reconciliation failures

  • Multi-state professional tax applied by employer HQ rather than employee work location. Remote and hybrid working has made this materially harder; decide and document the basis.
  • Employees crossing an eligibility threshold mid-year being handled inconsistently across months. Contribution-period rules exist precisely for this — check them.
  • New joiners with previous-employer income who did not declare it, producing under-deduction that only surfaces at year-end. Build a declaration step into onboarding.
  • Investment declaration versus proof mismatch. Declarations drive deduction early in the year; proofs must be reconciled before the final quarter, and unproved declarations reversed.
  • Statutory amounts computed on a base that includes a component it should exclude (or vice versa) — this repeats silently every month until someone recomputes independently.
  • Challan paid but return not filed, or filed with a different figure. Reconcile the three-way relationship: computed, paid, filed.
  • Arrears and off-cycle payments excluded from the month's statutory base.

Keep a rolling statutory reconciliation register: for each month and each item, record computed amount, paid amount, payment date, filing reference and filing date, plus any difference with its explanation. When an assessment or audit query arrives eighteen months later, this register is the difference between an afternoon's work and a week of archaeology.

---

Step 9: Bank File and Payment Reconciliation

The bank file is the last point at which an error is cheap to fix.

Before release

  1. Sum check. Total of the bank file equals total net pay in the locked register, to the rupee.
  2. Count check. Number of payment lines equals number of employees due payment, with any exclusions named and approved.
  3. Format validation. Account numbers, IFSC codes and beneficiary names match the master. Run a validation pass in the bank's portal or your HRMS before upload, not after.
  4. Duplicate detection. No duplicate combination of employee and amount, and no duplicate account number without documented justification.
  5. Zero and negative amounts. Neither should exist in the file.
  6. Value date. Confirm the value date and the cut-off time for the bank's processing window. A file uploaded after cut-off pays a day late regardless of when you generated it.
  7. Funding check. Confirm cleared funds are available in the disbursement account before release. A rejected file for insufficient funds delays everyone, not just the shortfall.
  8. Authorisation. Dual authorisation on release, with the authorisers being different people from the preparer.

After release

Post-payment checkTimingWhat "done" looks like
Bank confirmation report obtainedD+1File status confirmed as processed
Successful credits reconciled to bank fileD+1Success count + failure count = file count
Failed credits listed with reasonsD+1Named list with root cause per record
Bank statement debit reconciled to file totalD+1Single or batched debit equals file total
Failed credits corrected and reissuedD+2Reissue log with new payment reference
Bank charges identified and postedD+2Charges booked separately, not netted
Unclaimed/returned amounts trackedD+3Suspense schedule with ageing

Failed credits deserve a formal process. They are usually caused by closed accounts, name mismatches or incorrect IFSC codes — all master data problems. Fix the master, not just the payment, or the same record fails again next month.

---

Step 10: GL Posting and Cost-Centre Reconciliation

Payroll's output is a journal entry. If that entry is wrong, the management accounts are wrong, and the error is usually discovered by an FP&A analyst asking why one department's cost jumped.

The payroll journal, in structure

GL account (illustrative mapping)Debit / CreditSource figureAmount (INR, illustrative)
Salaries and wages expenseDebitTotal gross earnings3,31,42,000
Employer statutory contributions expenseDebitEmployer contributions18,74,000
Salary payable / bank clearingCreditTotal net pay2,61,94,000
Statutory payable — provident fundCreditEmployee + employer PF27,10,000
Statutory payable — ESICreditEmployee + employer ESI2,90,000
Statutory payable — professional taxCreditPT deducted1,02,000
Statutory payable — TDSCreditTDS deducted41,20,000
Employee loans / advances receivableCreditRecoveries3,42,000
Reimbursement expense (by category)DebitReimbursement componentsIncluded in gross above
Total debits3,50,16,000
Total credits3,50,16,000

Checks to run on the journal:

  • Debits equal credits. Obvious, but a partially posted journal is a real failure mode when postings are split by cost centre.
  • Total debit equals total employer cost (control C10). This is the tie between payroll and finance.
  • Each payable account balance equals the amount due for the month. Then confirm it clears to zero when the payment is made. A statutory payable account with a growing unexplained balance is a red flag that either payments or postings are being missed.
  • Cost centre allocation totals to the payroll total. Every employee must map to exactly one valid, active cost centre. Run an unmapped-employee report — it should be empty. Employees mapped to closed cost centres are a common month-end surprise.
  • Cost-centre movement analysis. Compare each cost centre's payroll cost to prior month. Large moves should correspond to known transfers, hiring or exits.
  • Accruals. Where the pay period and the accounting period differ, confirm the accrual and its reversal. Also reconcile leave encashment liability, gratuity provision and bonus provision as separate schedules — these are balance-sheet items that payroll feeds but does not usually settle monthly.
  • Inter-company recharges. If employees work for a different legal entity than the one paying them, confirm the recharge is raised in the same period.

---

Step 11: Four-Eyes Review, RACI and Sign-Off

A reconciliation performed by the person who prepared the payroll is not a control. Independence is the whole point.

Minimum segregation

  • The person who maintains master data should not be the person who runs payroll.
  • The person who runs payroll should not be the person who releases the bank file.
  • The person who releases the bank file should not be the sole person who reconciles the bank statement.

Small teams cannot always achieve full segregation. Where you cannot segregate, compensate: add a monthly review by someone outside the payroll function (the controller, a founder, an external accountant), focused on exception reports and the variance bridge rather than on re-doing the work.

RACI for the monthly close

ActivityResponsibleAccountableConsultedInformed
Input collection and chasingHR ops executivePayroll leadLine managersEmployees
Master data changesHR opsHR headPayroll leadFinance
Input freeze declarationPayroll leadHR headFinance controllerAll managers
Trial run and exception clearingPayroll executivePayroll leadHR ops
Headcount reconciliationHR opsPayroll leadTalent acquisitionFinance
Variance bridgePayroll leadFinance controllerHR head
Statutory computation reviewCompliance/payroll leadFinance controllerExternal advisorHR head
Independent review (four-eyes)Finance controllerCFO / founderPayroll lead
Bank file releaseTreasuryFinance controllerPayroll leadHR head
GL posting and reconciliationFinance analystFinance controllerPayroll lead
Statutory payment and filingComplianceFinance controllerExternal advisorHR head
Evidence pack archivalPayroll leadFinance controllerInternal audit

What the reviewer actually reviews

Give the reviewer a defined pack, not a database login. A workable review pack:

  1. Variance bridge with residual and explanations
  2. Headcount movement schedule with differences resolved
  3. Exception report with disposition per line
  4. Gross-to-net control total sheet
  5. Statutory summary with prior-month comparison
  6. Bank file control totals and exclusions list
  7. Post-freeze exception log
  8. List of manual adjustments with approvals

The reviewer signs a short statement: reviewed the above, queries raised and resolved as noted, approved for release. Date it. Keep it.

---

Step 12: Audit Trail and the Evidence Pack

If the close was performed but not evidenced, you will re-perform it under pressure at audit time.

Archive the following as a single dated pack per pay period:

  • Locked payroll register (with a version identifier and lock timestamp)
  • Input freeze declaration and post-freeze exception log
  • Headcount movement schedule
  • Attendance extract with generation timestamp
  • Variance bridge and employee-level exception report with dispositions
  • Control total sheet
  • Statutory computation summary and, once available, challans and filing acknowledgements
  • Bank file control totals, release authorisation, bank confirmation and failed-credit log
  • Posted GL journal with reference number and cost-centre allocation summary
  • Signed review and authorisation
  • List of all manual overrides and adjustments with approver and reason

Two properties matter more than completeness. Immutability — the archived register must not change after the fact; if a correction is needed, it goes into the next period as a documented adjustment. Retrievability — you should be able to answer "what did we pay employee E-4108 in this month, and why" in minutes, not days. Store the pack in a controlled location with restricted access, since it contains sensitive personal and financial data.

Also keep a system audit trail distinct from the document pack: who changed which field, from what value to what value, when, and under what approval. Payroll systems that do not maintain field-level history make certain investigations effectively impossible.

---

Quarter-End and Year-End Extras

The monthly checklist stays constant. Certain periods add work on top.

PeriodAdditional activities
Quarter-endReconcile quarterly tax returns to the sum of three months' deductions and challans; resolve any short deduction before filing; reconcile provisions (bonus, leave, gratuity) to actuarial or policy-based computations; review variable pay accruals against expected payouts
Pre-year-end (final quarter)Collect and verify investment proofs against declarations; reverse unproved declarations and recompute remaining months' deduction; flag employees with large residual tax liabilities early enough to spread the deduction
Year-endReconcile full-year gross, deductions and tax per employee to the sum of twelve monthly registers; reconcile total tax deducted to total deposited and to what will appear on employee tax statements; issue employee tax certificates; reconcile full-year statutory contributions to annual filings
New financial yearRefresh tax computation parameters and statutory masters per current official notifications; reset annual entitlements and reimbursement limits; recompute projections for all employees; run a parallel calculation for a sample before the first live run of the year
Any structural changeWhen salary structures, statutory rules or the payroll system change, run a parallel run — old and new computed side by side for the same period, differences explained line by line before switching

The year-end reconciliation deserves special emphasis because it is the one that reaches employees directly. A mismatch between what was deducted, what was deposited and what appears on an employee's tax statement generates individual queries that are painful to resolve in bulk. Reconciling monthly makes year-end a formality; skipping monthly makes year-end a project.

---

Common Errors and How They Slip Through

Most payroll errors are not exotic. They are the same handful of failures, and each one slips through because of a specific missing control.

ErrorHow it typically happensControl that catches it
Exited employee paidExit recorded in HR system after payroll freeze; no deactivation stepHeadcount movement schedule; "paid last month, exited this month" report
Joiner not paidOnboarding completed after freeze; no cross-check against recruitment systemJoiner completeness reconciliation
Duplicate paymentEmployee paid in both main run and off-cycle/F&F runDuplicate employee-account-amount scan across all runs in the period
Wrong pro-rationMixed conventions (calendar vs. working days) across componentsRecompute a sample of joiners and exits independently
Annual figure entered as monthlyData entry during increment uploadEmployee-level variance threshold; component range scan
Arrears paid twiceManual one-time payment plus automatic retro from effective-dated changeArrears report reconciled to one-time payment file
Loss of pay not appliedAttendance not imported or import partially failedAttendance record count and total days reconciliation
Overtime at wrong rateRate master not updated after policy changeIndependent recompute of total OT hours x approved rate
Statutory computed on wrong baseComponent wrongly included in or excluded from the baseIndependent recomputation of base from register components
Multi-state PT applied incorrectlyLocation field stale after transfer or remote moveState-wise PT reconciliation by employee work location
TDS under-deductedDeclarations accepted without proof; prior-employer income undeclaredDeclaration-to-proof reconciliation before final quarter
Bank file mismatchFile generated from a pre-correction version of the runBank file total vs. locked register total, to the rupee
Payment to wrong accountBank details changed without verificationChange-of-bank-detail report reviewed every cycle
Cost centre misallocationEmployee mapped to closed or default cost centreUnmapped/invalid cost centre report; cost centre movement analysis
Statutory payable not clearedPayment made but posting missed, or vice versaPayable account roll-forward: opening + accrued - paid = closing
Reimbursement paid twiceClaimed through both payroll and accounts payableCross-system claim reconciliation

The pattern across all of these is worth naming: errors slip through when a number is only ever produced once. A figure that exists in exactly one place, computed by exactly one system, checked by exactly one person, has no way of being wrong-proofed. Reconciliation works by forcing important numbers to be produced twice, by different routes, and then insisting the two agree.

The "it netted off" trap

Watch for a particular reviewer failure mode: a variance that looks small at the total level because two errors offset. In one illustrative case, a company sees total gross move by only 0.1% month over month and passes it as normal. Underneath, a departmental restructure moved 40 employees onto a new structure at slightly higher pay while a delayed incentive payout of a similar magnitude was omitted entirely. The aggregate looked calm; two material errors were live. This is why employee-level variance is not optional, and why aggregate variance should be explained by a bridge, not merely accepted because it is small.

---

Automation and Exception Reports in an HRMS

Everything above can be done in spreadsheets. It is just slower, more error-prone, and dependent on whichever person built the workbook still working there.

The parts worth automating, roughly in order of return:

  1. Integrated attendance and leave. If attendance flows into payroll without a manual export-import step, an entire error class disappears. Most loss-of-pay errors are file-handling errors.
  2. Effective-dated master data. Systems that store changes with effective dates handle retro correctly by construction, rather than depending on someone remembering to compute arrears.
  3. Standing exception reports. Configure these once and have them run automatically on every trial run: negative net, zero net, high variance, missing bank details, missing statutory identifiers, unmapped cost centre, paid-this-month-not-last, paid-last-month-not-this, duplicate accounts.
  4. Automated control totals. The system should present gross-to-net totals and headcount movement as a report, not as something you assemble by exporting and pivoting.
  5. Workflow-based approvals with audit trail. Approvals captured in the system, timestamped and immutable, remove most of the evidence-gathering effort at audit time.
  6. Bank file generation from the locked register. Generating the file directly from the frozen run eliminates version mismatch entirely.
  7. Configurable GL mapping. Component-to-account and employee-to-cost-centre mapping maintained in the system produces a postable journal without manual re-keying.
  8. Statutory computation with maintained masters. Rates and slabs maintained centrally and updated when official notifications change, rather than hard-coded in a formula somewhere.

This is the practical case for running payroll inside an HRMS rather than beside one. A platform like CozyHR keeps attendance, leave, employee master data and payroll in a single system, so the reconciliation stops being an exercise in matching exports and becomes a set of reports you read. The value is not that the software is smarter than your team — it is that it removes the manual handoffs where errors are created in the first place.

A caution, though: automation does not remove the need for the control, it removes the labour. Someone still has to read the exception report, explain the residual, and sign. Teams that automate and then stop looking have replaced a slow control with a fast blind spot.

---

KPIs for Payroll Accuracy

Measure the process, not just the outcome. Define each metric yourself, compute it consistently, and track your own trend — do not chase external benchmark figures, which are rarely comparable across organisations of different size, structure and industry.

KPIHow to compute itWhy it matters
Payroll accuracy rate(Total payslips issued minus payslips requiring correction) / total payslips issued, per cycleHeadline quality measure; define "correction" precisely and apply it consistently
Error rate by root causeCount of errors grouped by cause (master data, attendance, statutory, system, manual entry) / total errorsTells you where to invest; most teams find one or two causes dominate
Off-cycle payment ratioNumber of off-cycle payments / total payments in the periodA rising ratio means the main run is not capturing reality
Post-freeze change countNumber of approved post-freeze exceptions per cycleMeasures cut-off discipline; trend matters more than level
Exception clearance timeAverage hours from exception report generation to dispositionLong clearance times compress the review window
Variance residualAbsolute unexplained residual in the bridge / total grossShould trend toward zero; a persistent residual means a persistent problem
Failed credit rateFailed credits / total payment linesProxy for master data quality on bank details
Query volume per 100 employeesPayroll queries raised in the cycle / (headcount / 100)Employee-facing quality signal; spikes follow structural changes
Query resolution timeAverage time from query raised to resolvedTrust is built on responsiveness as much as accuracy
Close cycle timeWorking days from input freeze to signed authorisationShorter is better only if exception clearance stays complete
Statutory payment timelinessPayments made on or before the applicable due date / total payments dueBinary and unforgiving; track at 100% or explain
Reconciliation completionReconciliation steps evidenced / steps in the checklistMeasures whether the control operated, not just whether payroll ran

Two habits make these useful. Compute them the same way every month — a metric whose definition drifts is worse than no metric. And review them in a short post-close meeting on around D+7, where each recurring error gets an owner and a fix, rather than being corrected in isolation and repeated next cycle.

---

Putting It Together: A One-Page Payroll Reconciliation Checklist

Print this. Tick it. File it.

Before the run (D-5 to D-4)

  1. Input freeze declared and communicated
  2. All manager approvals complete; pending-approval report at zero
  3. Master data changes for the period reviewed and approved
  4. Headcount movement schedule prepared and tied
  5. Attendance extract generated, timestamped and reconciled
  6. Reimbursement claims reconciled to approvals
  7. One-time payments and recoveries reconciled to approval file

During the run (D-4 to D-2)

  1. Trial run completed; system error log cleared
  2. Exception reports generated and every line dispositioned
  3. Gross-to-net control totals computed independently and tied
  4. Variance bridge prepared; residual explained to zero
  5. Employee-level variance exceptions explained by name
  6. Arrears reconciled against one-time payments — no double-count
  7. Statutory computations reviewed at aggregate and sample level
  8. Negative/zero net and out-of-range component scans complete

Before release (D-2 to D-1)

  1. Independent four-eyes review complete; queries closed
  2. Run locked; register version recorded
  3. Bank file generated from locked run; total and count tied
  4. Bank details validated; held payments named and approved
  5. Funding confirmed; dual authorisation obtained
  6. Sign-off signed and dated

After release (D to D+7)

  1. Bank confirmation obtained; success + failure = file count
  2. Failed credits logged, root-caused and reissued
  3. Payslips published; query channel monitored
  4. GL journal posted; debits = credits; total = employer cost
  5. Cost-centre allocation reconciled; no unmapped employees
  6. Statutory payables reconciled and cleared on payment
  7. Statutory payments made per applicable due dates; challans filed
  8. Evidence pack archived
  9. Post-close review held; recurring errors assigned owners

Thirty items. Most take minutes. The two that take real time — the variance bridge and the exception dispositions — are the two that catch the errors.

---

Frequently Asked Questions

1. How long should a payroll reconciliation take?

For a stable organisation with clean inputs and an integrated system, the core reconciliation work — control totals, headcount schedule, variance bridge, exception dispositions — is typically a few hours of focused effort spread over two to three days, plus the independent review. The variable is not the size of the workforce; it is the messiness of the inputs. Teams that spend a full week reconciling are usually spending it chasing approvals and fixing master data, which is an upstream problem wearing a reconciliation costume.

2. We are a 30-person startup. Is all of this overkill?

Scale it, do not skip it. At 30 people, the headcount schedule takes ten minutes, the variance bridge fits on one screen, and the exception scan is a glance. What you must not skip at any size is the input freeze, the bank-file-to-register tie-out, and independent sign-off by someone other than the preparer. Those three catch the errors that hurt most, and none of them requires a large team. Small organisations actually have the higher concentration risk, because one person often does everything.

3. What is the difference between payroll reconciliation and a payroll audit?

Reconciliation is a preventive control performed inside the close, before money moves. An audit is a detective review performed after the fact, usually by someone independent of the process, checking whether the controls operated and were evidenced. Reconciliation stops errors reaching employees; audit tells you whether your reconciliation is real. You need reconciliation monthly. Audit can be periodic.

4. How do we handle a payroll error discovered after disbursement?

Follow a fixed sequence: quantify the error and the affected population; inform affected employees before they discover it themselves; decide the correction route (off-cycle payment for underpayments, staged recovery for overpayments, in line with your policy and applicable law); document the approval; correct the underlying cause, not just the symptom; and record it in your error log for the post-close review. Recovery of overpayments involves legal and contractual considerations — take advice rather than improvising, particularly where the employee has already left.

5. Should full and final settlements go through the regular payroll run?

Either approach works as long as it is consistent and reconciled. If F&F runs separately, the critical control is a duplicate check confirming the employee was not also paid in the main run, and confirming that the statutory and GL treatment covers both runs in the same period. Whichever route you choose, F&F needs its own reconciliation — notice pay, leave encashment, recoveries, gratuity where applicable, and final tax computation are all easy to get wrong, and there is no next month in which to correct them.

6. How do we reconcile payroll when employees work across multiple states or entities?

Anchor everything to a well-maintained work-location field and a well-maintained legal-entity field on the employee master, because state-specific obligations and entity-level filings both follow from them. Then reconcile per state and per entity, not just in total: state-wise professional tax deduction totals to state-wise challans, entity-wise gross to entity-wise GL and statutory registers. Remote and hybrid arrangements make the location field harder to keep current — build a periodic confirmation step, and verify state-specific obligations with official sources since they differ meaningfully.

7. What should we do differently in a month with a mass event — an appraisal cycle, restructure or bulk hiring?

Expand the bridge and tighten the review. Before the run, obtain the definitive change file (increment master, restructure mapping, bulk joiner list) and reconcile record counts against it. After the run, reconcile the number of employees whose pay changed to the number in the change file — a mismatch either way is an error. Also expect arrears, and reconcile them separately. Mass-event months are when the "it netted off" trap is most dangerous, because large legitimate movements provide cover for errors of similar size.

8. Can we rely on the payroll system's own validation reports?

Use them, but do not treat them as the reconciliation. A system's internal checks validate its own logic against its own data — they cannot detect that the data itself was wrong, that a population was missing, or that an approved change never made it in. The controls with real assurance value are the ones that compare the system's output to something produced outside it: the recruitment system's joiner list, the claims system's approval totals, the bank's confirmation, the general ledger, the signed increment letters. Keep at least one independent source in every material tie-out.

---

Conclusion: Make the Close Boring

A good month-end payroll close is unremarkable. Inputs freeze on time, the bridge closes to zero, the exception report has eleven rows and all eleven have names against them, the bank file total matches the register to the rupee, and the reviewer signs at 4pm on D-1 without drama. That is the target state, and it is reachable by almost any team willing to fix the calendar and hold the freeze.

The payroll reconciliation checklist in this article is deliberately structural, because the specifics — rates, slabs, thresholds, due dates — change, and change at different times for different obligations. Confirm those against current official sources every cycle, or with an advisor who does it for a living. What does not change is the logic: prove completeness with a headcount schedule, prove accuracy with variance analysis and exception reports, prove consistency by tying register to bank file to challan to ledger, and prove that you did all of it by keeping the evidence.

If your reconciliation currently lives in a workbook that only one person understands, the highest-value change is not a better workbook — it is removing the manual handoffs that create the errors. CozyHR brings attendance, leave, employee records and payroll into one system so control totals, headcount movement and exception reports come out of the platform instead of out of a pivot table, and the audit trail builds itself as people work. If you would like to see what your month-end close looks like when the reconciliation is a report rather than a project, take CozyHR for a spin with your own structures and run a parallel cycle alongside your current process.

Freeze the inputs. Explain the variance. Sign the pack. Then go home on time.

---

This article is general guidance for HR, payroll and finance practitioners and is not legal, tax or accounting advice. All figures, employee identifiers and scenarios used are illustrative and invented for demonstration. Statutory rates, wage ceilings, eligibility thresholds, state-specific rules and filing due dates change and vary by jurisdiction and employee category — verify current requirements with official government sources or a qualified advisor before acting.