Using the clock
Ask AI
Clocking in, taking breaks, clocking out, reading your own history, and requesting a correction
Attendance → Clock is one screen whose buttons change with the shift's state.
Reaching the clock
On a phone, Clock sits in the bottom bar whenever Attendance is on. With the Kiosk module on, the page header also carries Show my badge - the rotating code a shared kiosk tablet scans.
The four actions
| Shift state | Button | Result |
|---|---|---|
| Not clocked in | Start (Clock in) | The shift opens and the timer starts |
| Working | Break (Unpaid meal) | Work pauses, break time accumulates |
| On a break | Resume (End break) | Work resumes |
| Working or on a break | Stop (Clock out) | The shift closes |
Clocking out during a break closes the break at the same instant.
The browser counts elapsed time from the shift's start; server totals are the record.
Times are server times
The recorded instant is the server's, so a wrong device clock cannot shift a punch.
Concurrent clock-in attempts
A unique index permits one open shift per employee, so a second clock-in from another tab or device is refused with a 409. Every punch carries an idempotency key, so the same command sent twice replays the first punch instead of recording a second.
Clocking in on a day off
Whole-day approved leave is handled by the effective attendance policy:
- Warn - the first clock-in is refused with a 409
ATTENDANCE_LEAVE_CONFLICT; resending with the conflict confirmed opens the shift. - Block - clock-in is refused with the same 409, and no confirmation overrides it.
Pending leave never blocks anything. Partial leave reduces the day's expected time but does not say which half of the day is free, so it never blocks a clock-in.
Forgetting to clock out
An open shift left running past the workspace's stale threshold is closed automatically. The recorded end is the shift's start plus that threshold, not the moment the job ran. The employee is notified and one item appears in the Attendance review queue. Acknowledging it does not change the times; a wrong end needs a correction.
Your own history
Attendance → My attendance lists days newest first with worked, break and expected time, in two windows - This week and This month. A day carrying an open review item is flagged on its row. Opening a day shows the timeline - Work, Break, Work - and a Request correction action. The open shift's raw punches sit under Original punch records on the Clock page.
Requesting a correction
Nobody edits a punch, including admins. Instead:
- Open the day in My attendance and choose Request correction.
- Enter the corrected times and a reason - a correction submitted without a reason is refused.
The request lands in the Attendance review queue for a manager or admin to decide. An approval appends corrective records and recalculates the day's totals; the original punches stay as recorded, superseded rather than deleted.
Worked example
Bartek taps Start at 08:58, Break at 12:30 and Resume at 13:05, then never clocks out. Northlake keeps the 16-hour threshold, so the shift closes with an end of 00:58 and one review item opens. Bartek opens that day in My attendance, requests a correction ending 17:30 with a reason, and Marta approves it - corrective records recalculate the day and the original punches stay, superseded.