Help
How data gets into ClockCover, what the files must look like, and what happens to a gap once it is found.
How it works, end to end
- Roster. A CSV of your employees and their managers. Upload it in the console, or point us at an https address where your HR system publishes it.
- Export. The shift schedule and the clock entries from your attendance system, one CSV. Uploaded by hand or fetched every morning from an https address you set in Settings.
- Detection. Every scheduled shift is checked for a clock-in and a clock-out. A missing one is a gap: no clock-in, no clock-out, or no record at all.
- Digest. Each morning every manager with open gaps gets one email listing their own team's gaps and a link to resolve them. No account, no password.
- Resolution. The manager either approves the hours (the person worked, the entry is missing) or reports an absence (with a note). A clock entry that arrives with a later export closes the gap on its own.
- Escalation. A gap nobody touches within the SLA (48 hours by default) goes to the payroll accountant by email, with a link to close it when the entry will never arrive.
- Corrections. The console exports everything people closed in a period as CSV — approved hours and reported absences with notes — for your payroll run.
Roster file
CSV, UTF-8, header row required. One row per employee. Managers are created from the rows that name them.
employee_id,employee_name,manager_id,manager_name,manager_email
E-001,Ada Sample,M-100,Manager North,north@example.com
E-002,Ben Sample,M-100,Manager North,north@example.com
employee_idandmanager_idare your own identifiers — payroll numbers work well. They must be stable between uploads.- Re-uploading is how changes are recorded: a moved employee gets the new manager; anyone missing from the file is deactivated (no new gaps, not counted for your tier). Gaps already detected keep the manager they were routed to.
Shifts & clock entries file
CSV, UTF-8, header row required. One row per employee per day. A row with planned times is a shift; a row with clock times is an attendance record; a row can be both.
employee_id,date,planned_start,planned_end,clock_in,clock_out
E-001,2026-03-02,08:00,16:00,08:02,16:05 ← complete
E-001,2026-03-03,08:00,16:00,, ← shift, no entry yet → gap
E-002,2026-03-02,08:00,16:00,08:01, ← no clock-out → gap
E-002,2026-03-01,,,09:00,17:00 ← worked without a shift → noted, not a gap
- Dates are
YYYY-MM-DD; times areHH:MM(24 h). Overnight shifts are fine:23:00–07:00. - Two rows for the same employee and day are rejected with the line numbers — one shift and one entry per day in this version. If your people work split shifts, tell us.
- Employees not on the roster are skipped and listed in the result, so a typo in an id never silently disappears.
- Re-uploading the same day replaces the earlier values. A gap whose entry arrives is closed automatically as “hours approved”.
Common cases
- Badge left at home, the person was at work
- Manager: Approve the hours, optional note. The corrections export lists the planned hours to credit.
- Sick day, nobody told the system
- Manager: Report an absence with a note (“sick, called in 07:30”). Appears in the corrections export as an absence.
- Terminal was down for a whole department
- Fix the entries in your attendance system and re-export; the next import closes the gaps by itself. Nobody has to click through them.
- Employee left the company mid-month
- Remove them from the roster (they stop producing gaps). Any open gap will escalate; the payroll accountant closes it from the escalation email with a note.
- Manager on holiday
- Gaps escalate after the SLA to the payroll accountant, who can close them. Or forward the digest: the link works for anyone who has it for 14 days.
- Wrong manager on a gap
- Fix the roster and re-upload for future gaps; the existing gap keeps the manager it was routed to (by design — the SLA clock does not move).
Questions we get
- Where do I set the timezone, SLA and language?
- Console → Settings. “Today” for digests follows the timezone; the job runs at 08:00 UTC.
- Can I re-send a digest?
- Not from the console — one digest per manager per day, on purpose. The link in yesterday's email still works for 14 days.
- What does the payroll accountant see?
- Only escalations, by email — never a list of all gaps. That is the point.
- Is any of this biometric data?
- No. We read only that a clock event exists or does not; never the template behind it. Files are deleted after parsing.
Stuck on a file? Send us a sample — during early access we build the connector for you.