Finalize timesheets

Build timesheets from clock-ins, check the punches, then finalize them for payroll.

guideUpdated 2026-10-11 Raw markdown

Timesheets are the hours your staff worked, built from their clock-ins. You finalize them before they feed into pay. They live under Staff & Time → Timesheets.

Staff and time, explained: the schedule, timesheets and time off (narrated, 3 minutes)

One pay period at a time

The page shows a single pay period, with Previous and Next to move between them and This period to jump back to now. Whether a period is one week or two is set by the gear beside the period dates, and it follows your payroll frequency.

Underneath, timesheets are always weekly. That is not an oversight: overtime is calculated per week under US law, so a two-week period is simply two weeks shown and totalled together.

Two states

A timesheet is either In progress or Finalized.

Finalizing signs the hours off and locks the punches behind them, which is what releases the week to payroll. The staff member gets a notification that their timesheet was approved. If you need to change something afterwards, Reopen unlocks it — unless the week is already inside a payroll run, in which case you will need to void that run first.

There is no submit-and-review round trip. You build the week and you sign it off.

Build timesheets from clock-ins

Build from clock-ins creates a timesheet for every staff member from their punches for the week you pick. Your break rules are applied automatically (see below). Running it again on the same week refreshes it and leaves finalized weeks alone, so it is safe to repeat.

If it builds nothing, nobody clocked in that week. Timesheets come from clock-ins, not from the schedule.

Add a timecard by hand

Add timecard records hours for someone who did not clock in — a forgotten punch, a shift covered at short notice, a day worked off-site. It works even when the week has no timesheet yet: the week is built as soon as you save, so the hours appear straight away.

You can also add or edit a punch from inside a timesheet, on the day it belongs to.

Punches worth checking

Before you finalize, the page flags three kinds of punch:

  • Still clocked in on a day that has passed. Those hours are missing from the totals entirely.
  • Over 12 hours in one punch. The clock-out is probably wrong.
  • Auto-closed at midnight, because someone forgot to clock out. The end time is our best guess, not something we observed.

Correcting the punch clears the flag.

Break rules and overtime

Break rules in the page header sets an automatic unpaid break by shift length, for example "Shifts of 6+ hours get 30 min unpaid". If someone records a longer break themselves, their recorded break counts instead. The two are never added together.

New rules apply to new punches straight away. To apply them to a week that is already built, run Build from clock-ins again. Finalized weeks are never rewritten.

Hours past 40 in a week count as overtime. The overtime pay rate (for example 1.5 for time-and-a-half) is set in Staff & Time → Payroll → Settings. See Run payroll and export it.

Feeding into pay

Finalized hours are ready for payroll. The owner turns Payroll on under Settings → Features. It works as a CSV export you import into your payroll provider. See Run payroll and export it.

Export CSV downloads the period on screen. You can also export a single week from its header, or tick specific rows and export just those. Paid time off appears as its own column and is deliberately not added into payroll hours — your payroll provider pays that from its own balance, so adding it here would pay it twice.

Hours on screen, decimals in the export

Everywhere you read hours, you see them the way people say them: 15h 44m, not 15.7. That holds on the timesheets page, in a staff member's profile, on the schedule, and in the emails NestliCare sends.

The CSV export keeps decimals, because that is what payroll systems expect. Nothing is lost in the conversion; it is the same number written two ways.

Leave is the exception. Leave requests are counted in days. A payroll run turns paid days into hours using PTO Hours per Day in Staff & Time → Payroll → Settings.

Troubleshooting

A timesheet shows no hours. Nobody clocked in for that person that week. Use Add timecard to enter the hours.

I cannot edit a punch. The week is finalized, so its punches are locked. Reopen the week, make the change, then finalize it again.

I cannot reopen a week. It is already in a payroll run. Void that run first.

An older timesheet says "In progress" but I remember approving it. Timesheets used to move through Draft, Submitted, Approved and Rejected. Anything that was not approved now reads as In progress; nothing was lost.

A week has far too many hours. Look for an Over 12 hours punch in the amber strip. Someone probably forgot to clock out. Fix the end time, then finalize.

Staff are clocking in before they arrive. You can require them to scan the center's QR code to clock in or out. See Require a QR scan to clock in.

Related: See your hours (what staff see).

Related articles

Was this article helpful?