All posts
Getting started

Timesheet to payroll in one pass

Formclock Team · June 2, 2026 · 3 min read

The gap between a timesheet and a payroll file is where most of the administrative pain in a shift operation lives. The hours exist. The rates exist. And somehow the fortnight still ends with somebody exporting to a spreadsheet, patching it by hand, and hoping. Closing that gap is mostly a matter of deciding things earlier.

Decide the rules once, not every period

Most of the manual work at period close is re-litigating decisions that were never written down. Does a punch two minutes early count as early? What happens to a shift where somebody forgot to clock out? Are unpaid breaks deducted automatically, or only when they're actually taken?

  • Rounding, if you round at all, and in whose favour
  • How breaks are treated when nobody records them
  • What counts towards overtime, and over what period
  • Which premiums apply, and what triggers each one

Written down, each of these takes a minute to answer and then never needs answering again. Left implicit, they get answered slightly differently every period by whoever happens to be doing the close, which is both slow and, more importantly, inconsistent in a way that eventually surfaces as a pay query.

Handle exceptions when they happen

A missed punch is trivial to resolve on the day, because the person is standing there and remembers. The same missed punch is genuinely difficult eleven days later, because it has become an archaeology problem. Yet the default in most operations is to collect exceptions silently and deal with them all at the end, at the worst possible moment.

Surface them immediately instead. The employee sees that the punch is incomplete and can request a correction with an explanation attached. The manager approves or amends it while the context is free. By period close there's nothing to investigate, because the investigating already happened, in seconds, spread across a fortnight.

Approve once, and mean it

Approval should be a real boundary rather than a formality. Once a period is approved it should stop moving, and any later change should be a visible, recorded amendment rather than a silent edit. This sounds bureaucratic and is in fact the thing that makes the export trustworthy: if the file can be regenerated and come out different from the one you sent, you have no way of knowing which version payroll actually used.

It also settles who is allowed to do what. Approving your own timesheet is the most common control weakness in a small operation, and it's almost always an accident of convenience rather than a decision anybody made deliberately. Separating the person who records the hours from the person who approves them costs nothing at the point you set it up, and is awkward to retrofit once everyone is used to the shortcut.

Export the format payroll actually wants

The last mile is unglamorous and worth getting right. A file that needs manual reshaping before it can be imported isn't an export, it's a draft. Match the identifiers your payroll system keys on, produce the columns it expects, and keep that mapping in one place so it survives a change of whoever runs the close.

What one pass actually looks like

Punches arrive with the rules already applied. Exceptions get resolved on the day they occur. At the end of the period a manager reviews what's genuinely unusual, approves the period, and exports it. There's no spreadsheet stage, because nothing was left undecided long enough to need one.

Period close should be a review, not an investigation. Everything that makes it an investigation happened weeks earlier.

See it on your own floor.

Spin up a real workspace in under four minutes.

See it with your own schedule

Set up a workspace, add your team, and build a week. It takes about ten minutes and costs nothing.

Start free

© 2026 Formclock. All rights reserved.