Attendance

A payroll month, day by day

9 min readBizvora Team
  • Attendance
  • HR
  • Payroll
  • Playbook
A payroll month, day by day

It is the 2nd. Salaries went out yesterday, mostly. Two people were paid the wrong amount because their leave without pay came in after the file was sent, one new joiner was missed entirely because HR had the offer letter but accounts did not, and nobody can say when payslips will land because the person who generates them is travelling. Somebody asks in the group, politely, whether payslips are coming today.

None of that is a payroll software problem. It is a calendar problem. A payroll process that lives as a vague sense that salaries go out at month end will produce exactly this month, every month.

A checklist is not enough, you need dates and owners

Most small companies do have a payroll checklist somewhere. Attendance, leave, variable pay, deductions, bank file, payslips. The checklist is fine. What it lacks is the two things that make work happen: a date by which each item is due, and one named person who is responsible for it.

Without a date, every step waits for the step before it. Without an owner, every step waits for whoever notices first. Combine the two absences and the whole payroll process compresses into the last thirty six hours of the month, which is precisely when mistakes get made and nobody has time to catch them.

So write the calendar. Not as a policy document. As a list of dates with a name against each one, visible to the whole payroll chain, repeated identically every month. The value is in the repetition. When the 25th always means the same thing, people stop asking what the 25th means.

The seven fixed dates

Everything below assumes a calendar month cycle with salary credited on the 1st. If you pay on the 7th, shift each date by six days and keep the gaps identical. The gaps matter more than the absolute dates.

The seven dates that need to exist:

  1. Attendance cutoff
  2. Input freeze
  3. Draft run and variance check
  4. Approval
  5. Bank file release
  6. Payslip release
  7. Statutory deposits

Seven dates, seven owners. Some of those owners will be the same person in a company of twenty. That is fine. Name them anyway, because the point is that the name is written down, not that it is a different name each time.

Day 25: attendance cutoff

Owner: HR.

Attendance closes for the month on the 25th. Days from the 26th to the end of the month carry forward into next month’s cycle. That sounds odd the first time you say it out loud, and it is the single change that buys you the most breathing room. You cannot process a month accurately on the last day of that month, because the last day has not happened yet.

On the 25th, HR sends one message: attendance and leave for this cycle close today. Managers have until the 27th to approve pending leave. Anything not approved by then is treated as present or as leave without pay according to a stated rule, and the rule does not change monthly.

What this date produces: a locked attendance register with a day count per employee, and a list of leave without pay days.

Day 27: input freeze

Owner: HR, with Sales and Projects supplying their own numbers.

This is the hard one, and it is the date most often broken. Everything variable that affects a payslip has to be in by end of day on the 27th:

  • New joiners with date of joining, salary structure and bank details
  • Exits with last working day and full and final status
  • Salary revisions with effective dates
  • Incentives, commissions and overtime, signed off by the person who owns the number
  • Reimbursements approved for this cycle
  • Loan or advance deductions
  • Investment declaration changes affecting tax

After the 27th, the answer to any new input is the same: it goes into next month, with arrears. That answer has to hold, including when it is the founder asking. One exception a month teaches everyone that the freeze is negotiable, and then it is not a freeze.

Write the exception rule down instead of pretending there will never be one. Something like: an input after the freeze is processed only if it would leave someone unpaid entirely, and only with written approval from the person who signs off payroll.

Day 28: draft run and variance check

Owner: whoever runs payroll, usually HR or Accounts.

Process the draft. Do not send anything anywhere. Then run the variance check, which is the highest value fifteen minutes in the whole payroll process and the step most often skipped.

Compare this month’s register against last month’s, line by line, and look at four things:

  • Headcount. Does the number of people paid match your expectation, and can you name every addition and every removal.
  • Gross variance per person. Anyone whose gross moved by more than a small threshold should have a reason next to their name. Increment, incentive, leave without pay, arrears. If there is no reason, there is an error.
  • Total gross against last month. A large jump with no corresponding headcount or incentive change means something is double counted.
  • Deductions. PF, ESI, professional tax and TDS should move roughly in line with gross. A deduction that stayed identical while gross changed is worth opening.

The variance check catches the errors that a per-line review misses, because it compares against something. Reading a fresh payroll register in isolation tells you the arithmetic is consistent. It does not tell you that you paid a person who left in March.

Day 29: approval

Owner: one named approver. Usually the founder, the CFO or the head of HR.

One person, not a committee. They see the summary: headcount, total gross, total deductions, total net, the variance notes, and the exceptions list. They approve in writing, by email or in the system, not verbally in a corridor.

If your approver is regularly unreachable on the 29th, name a deputy in advance rather than discovering the gap at nine in the evening. This is the same failure mode described in why running payroll off one person’s laptop is a single point of failure, and it applies to the approval step just as much as the processing step.

Day 30: bank file release

Owner: Accounts.

The bank file goes out with enough lead time for the credit to land on the 1st. Check your bank’s cutoff rather than assuming same day processing, and check whether the 1st is a Sunday or a holiday, because it frequently is. If it is, the file goes earlier, not later. Paying on the 31st because the 1st is a holiday is a decision nobody complains about.

Two controls worth keeping: the person who prepares the bank file is not the person who releases it, and the total on the file is reconciled against the approved net total before release. Two people, two minutes, and the entire category of wrong-account and extra-zero errors becomes much less likely.

Day 2: payslip release

Owner: HR.

Payslips go out the day after credit, not two weeks later and not on request. A payslip released a fortnight after the money has landed invites questions that are hard to answer, because by then nobody remembers what the incentive line was for.

The format matters more than the timing. A payslip that shows a net figure and eleven abbreviations produces a queue at the HR desk every month. Payslips people can actually read covers what belongs on the document and which questions a clear layout prevents.

On BizvoraOne, payslip PDFs come out of the same run that produced the register, which removes the small but real risk of a payslip that disagrees with what was actually paid.

Days 7 and 15: statutory deposits

Owner: Accounts.

TDS deducted in a month is generally deposited by the 7th of the following month. PF and ESI contributions are generally due by the 15th. Professional tax dates vary by state. Confirm the current dates with your CA and put them on the same calendar as everything else, because a compliance deadline that lives only in your accountant’s head is a deadline you will miss during a busy quarter.

These dates are not flexible, and unlike a delayed payslip, missing them costs money. Put them in the calendar with the same weight as the salary credit date.

Mid month: the quiet week

Days 3 to 24 are not empty. They are where the work that used to happen in the last two days should now live:

  • Full and final settlements for the previous month’s exits
  • New joiner documentation, bank details and PF enrolment
  • Investment proofs and declaration updates
  • Reconciling the payroll register against the salary expense in your books
  • Answering payslip queries while the month is still fresh

If your mid month is empty and your month end is chaotic, the calendar is not being followed. That is usually a symptom of the input freeze being soft.

When a date slips

It will. Say in advance what happens.

  • Attendance not approved by the 27th: treated according to the stated default, and corrected next cycle.
  • An input arriving on the 29th: goes to next month as arrears, unless it leaves someone unpaid.
  • The approver unreachable on the 29th: the named deputy approves.
  • A bank rejection on the 1st: that person is paid by separate transfer the same day, and the reason is logged.

Each of those is a decision made once, calmly, instead of thirty times under pressure.

If you are a team of twelve

This calendar does not need eleven people. In a team of twelve, HR and Accounts may be the same person and the approver is the founder. The dates still apply. What changes is the segregation of duties: with one person doing both preparation and release, the approver has to look at the actual register rather than only the summary. That is the tradeoff, and it is worth naming rather than pretending the control exists when it does not.

Equally, if you pay weekly wages to shop floor staff alongside monthly salaries, you are running two cycles, not one. Give the wage cycle its own dates rather than bolting it onto the monthly calendar.

What to do first

Do not redesign everything this month. Do one thing: pick the attendance cutoff date and the input freeze date, write both against a name, and send them to the whole company on a single line.

Next month, add the variance check. The month after, formalise the approval step in writing.

Three months in, you will have a payroll process where every step has a date and every date has an owner, and the 2nd of the month will be quiet.

One plan, every module included

See all of it working together — on your data

₹199 per user per month, GST included — every module, every dashboard. You'll never discover a feature you need lives on a higher tier.

No per-module pricingAll 8 role dashboardsHosted in Mumbai