What syncs
Every approved timesheet is split into pay types first (regular, overtime, double time, holidays, break premiums, time off), using each site’s rules. Here’s where each lands in OnPay.
| ClockLap | Sent as | Notes |
|---|---|---|
| Regular, overtime, double time | Regular, Overtime, Double Time | – |
| Holidays and time off | Holiday, Vacation, Sick… | – |
OnPay has no public API for hours, so ClockLap builds the CSV. OnPay matches people by their Clock User ID, and CSV upload may need switching on by OnPay support.
How it works
- Give everyone a Clock User IDIn OnPay: the employee’s Job → Employment page. Add the same value as their OnPay Clock User ID in ClockLap (or use their employee number).
- Map pay typesCommon OnPay pay types are suggested.
- Pick deliveryDownload or email.
- Upload itIn OnPay: Payroll → Upload Hours, then Process.
Schedules and review
Choose when hours go to OnPay. Whatever you pick, nothing is sent twice: each period has one send, and anything after it is a correction.
I’ll send each period myself
Nothing goes until an admin presses Send. The default.
When the pay period is locked
Locking the period in Timesheets starts the send.
When every timesheet is approved
The last approval in the period starts the send.
On a schedule
A set number of days after the period ends (0 to 14), at a local time you pick.
- Which timesheets. Approved only (default), or approved and submitted.
- Rounding. Hundredths of an hour (default) or quarter hours.
- Split by. None, location, project or department, each mapped to the payroll system’s department or cost centre code.
- Holiday hours worked. As their own pay type (default) or folded into regular hours.
- Empty lines. People with no hours in the period are skipped.
- Unmatched people. Skip them and warn (default), or block the whole send until they’re matched.
Corrections, as changes
Fixed a missed clock-out after payroll went? Send the period again and ClockLap works out what changed since the last send.
A correction file carries only the differences; OnPay adds uploaded hours to what’s in the pay run.
People
The file uses each person’s OnPay Clock User ID (or employee number when there isn’t one).
People who can’t be matched are listed in the preview: skip them with a warning (default) or block the send until they’re matched.
The file
OnPay hours (CSV). Columns: Clock User ID Employee Name Pay Type Hours Date
OnPay doesn’t publish its column layout; check the first file with OnPay support.
Delivered by download (kept with the run), email to up to 20 people, or SFTP: ClockLap checks the server, pins its host key on the first connection and writes under a temporary name before renaming, so a payroll system watching the folder never picks up half a file.
What you need
- OnPay (US) with CSV upload switched on
- A Clock User ID for each hourly person
Every run keeps a history: who and what was sent, per-line results, plain-language errors with a fix, and a redacted request log for admins. Webhooks fire on payroll.run_ready, payroll.run_sent, payroll.run_failed.
Questions
What if someone isn’t matched?
OnPay lists them under Recent Exceptions after processing; add their Clock User ID and upload again.
Is the OnPay connection included in the price?
Yes. Payroll and HR connections are part of every ClockLap plan: $1 per staff member and $2 per manager or admin a month, with no add-ons.
Is ClockLap affiliated with OnPay?
No. ClockLap connects to OnPay using files it can import; it isn’t affiliated with or endorsed by OnPay. The connection is in beta while we verify it with live accounts.