Timecards & timeclock
Timecards track actual hours worked per shift. The timeclock is built into the app — staff clock in with a single tap, and every action they take during their shift is linked to that timecard.
Clock in / clock out
When timecard enforcement is on and a staff member tries to take an action without being clocked in, a modal overlay appears — "You're not clocked in. Start timecard?" One tap to clock in, then the action they were trying to take resumes automatically. No lost context, no redirect to a separate page.
The overlay follows the same pattern as the NFC visit overlay — it appears on top of whatever screen you're on and returns you to exactly where you were.
What a timecard captures
Audit linking
Every action in the system gets a timecardId field in the audit log — linking that action to the active timecard at the time. This is what makes the productivity picture possible: you can see not just that 12 tasks were completed during a shift, but exactly which ones, in what order, with what time gaps.
If timecard enforcement is off and someone works without clocking in, their actions log with a null timecardId. You can audit the gap later — untracked time is visible in reporting, not hidden.