Building and approving a pay run
A pay run is the moment a fortnight of clocked hours stops being a timesheet and becomes what somebody is owed. It is built from a period, checked, and then approved, and approving it locks the lot.
On this page
Pay runs is the last tab of Payroll, subtitled "What each period came to, and what approving it locked." Its ingredients are the hours on the Timesheets tab, any approved mileage, and any expense reimbursement owed. Nothing is built automatically: you pick a period and build the run.
Building one
Two date fields, From and To, and a button that builds the run for that period. Before there is one at all, the tab reads No pay run yet, with the reassurance that matters: "Pick a period and build one. Nothing is locked or paid until you approve it."
Once there is more than one run, a row of chips across the top lets you move between them. Each chip is the period and its status: Draft, Approved, Exported or Paid.
What each period came to, and what approving it locked.
A line names its own working rather than presenting a total on trust: the basic hours, then overtime, holiday and sick where there are any, then approved mileage, then any expense reimbursement, then the hourly rate it was all costed at. The reimbursement is deliberately named on the line rather than folded into the gross, because it is money being paid back rather than earned, and somebody checking the total needs to see the difference.
A dash, never a zero
The run's own headline carries the count as well, so it is never something you have to spot on one row: "One person has no pay rate on file, so their hours are not in this total. Set their rate on the Staff page and build the run again."
The fix is to set the rate on their staff record, then build the period again. The database refuses the approval too, so this is not a warning you can accidentally walk past without being asked.
Approving, and what it locks
Check the lines
Every person, their hours by kind, and the rate each was costed at. This is the last moment any of it can be changed.
Press Approve this run
It does not approve. It asks, and the question is the consequence: "Approving locks every hour in this run. After that a mistake can only be corrected in a later period, never edited here."
Confirm with Yes, approve and lock
CleanFlo confirms with "Approved. Every hour in it is locked now." The run's status becomes Approved and the screen says when.
Where somebody is unrated the wording changes to match what you are actually agreeing to. The warning reads "Approving now leaves those people's hours unvalued in this run. They will not be paid for them here", and the button says Approve anyway rather than Yes, approve and lock. It is allowed, because sometimes a run has to go out and one person's rate is a separate problem. It is never allowed quietly.
A draft you no longer want is removed with Delete draft, which confirms with "Draft deleted." Nothing about the underlying hours is touched: a run is a reading of the timesheet, not the timesheet itself, so deleting a draft and building it again gives you the same figures.
Handing it to your payroll package
Export for payroll appears only once a run is settled, and that restriction is the point: a file built from a draft would be an import of figures still able to change. The database refuses it too.
The sheet is titled Export this pay run and subtitled with the period and one promise: the file is built in your own browser and downloaded, and nothing is uploaded or stored. Pick a Payroll package and press Download the file.
- BrightPay
- The import format BrightPay expects.
- Xero Payroll UK
- The import format Xero's UK payroll expects.
- Generic CSV
- For anything else, and for your accountant to map by hand.
Pay elements go out as separate lines rather than one lump per person, so your package can map basic, overtime, holiday, sick, mileage and reimbursement to its own codes on import. The period is written on every row, which is how you can tell later that you have already imported a given run.
Before you download, the sheet tells you what you are about to get: how many lines, across how many people. After an export the run reads Exported and shows when, and in which format.
Common questions
I approved a run with a mistake in it.
Somebody shows a dash instead of an amount.
Why can I not export a draft?
Does CleanFlo pay anybody or file anything with HMRC?
Where do expenses and mileage come into it?
Still stuck?
Open Support in the app and send us a ticket, or email the team. A real person reads every one.