Work-time check in the monthly check workflow
The Work hours step of the monthly check workflow compares, for each colleague who tracks time, the hours logged for the month with the hours expected from their HR profile, and gives a status: OK, Under-reported, Over-reported, Missing or Not required. It never blocks closing the month – it only warns.
On the Finance → Monthly check workflow page, the Work hours step shows one row per person with the month's work-time balance: Expected (hours), Logged time (hours), Difference (hours), Leave (days), Status and the corrective actions. The page requires the manage right of the Billing module.
How are the expected hours calculated?
- Daily expectation = the weekly hours on the HR profile divided by the working days per week (40 / 5 = 8 hours a day, for example). A contract covering fewer days than the team's working week (four days in a five-day team, say) owes a proportionally smaller month.
- Working day = every day that is not among the team's company holidays (Holiday settings → Company holidays). The calendar says which days are not worked: the weekends, public holidays and shutdowns entered there. So in a team that works weekends Saturday is a working day, and a rescheduled working Saturday counts as one too. Anything not entered in the calendar is a working day – a missing public holiday raises the expected hours for nothing.
- Leave and absence: accepted leave requests reduce the expectation for the working days they cover (a half-day request by half a day), and so do the absences recorded in HR (sickness, parental leave, unpaid leave) – those always count as a whole day. A day covered by both is deducted once. A day on a weekend or holiday deducts nothing.
- Partial month: if employment starts or ends within the month, only the active days count.
Logged time: the total length of time logs started within the month. Difference = logged − expected (negative means less). The Leave (days) column shows the calendar days of accepted leave in the month, while only the working-day part is deducted from the expectation – so the two figures need not match.
Statuses (the tolerance is team-wide, ±8 hours by default):
- OK – the difference is within the tolerance.
- Under-reported – logged hours fall short of expected by more than the tolerance.
- Over-reported – more hours are logged than the tolerance allows; look for duplicated time logs.
- Missing – there is an expectation and not a single hour is logged for the month.
- Not required – the person's HR profile has no weekly hours or working days, or a flexible schedule. If the team switched the work-time check off in the HR settings, every row gets this status.
Row actions (depending on permissions): Issue leave (pre-filled with a day count derived from the shortfall), HR note, Open HR profile, open the monthly time logs, and Send reminder to the person. Leave can be issued and reminders sent only for under-reported or missing rows.
The number of warnings also shows on the step header. Recurring automatic reminders can be switched on in the HR settings.
More: work time and attendance sheets in Demona HR (Hungarian).