Skip to main content

How attendance works

Every day, HCM Cafe works out an attendance status for each employee, such as Present, Half day, Absent, Week off or a leave code. The status comes from the employee's punches and the rules that apply to them.

What an employee needs​

Attendance can only be processed for an employee who has, in their employee record under additional details:

  • an attendance group, which sets their attendance rules,
  • a base shift,
  • a week off, and
  • a holiday calendar.

If any of these is missing, requests fail with a message naming the missing item. You can set defaults for all four in Attendance parameters.

Where the rules live​

SettingWhat it controlsArticle
Attendance parametersAccount-wide defaults, processing window and request windows.Attendance parameters
Attendance group parameterFull-day and half-day hours, how worked hours are counted, which shifts apply.Attendance group parameters
ShiftStart and end times, grace, cut-offs and breaks.Shifts
Week offWhich days of each week are off.Week offs
Holiday calendarHoliday dates and their types.Holiday calendars
Request groupWhich requests employees can raise and their limits.Request group
Permission, overtime, comp-offRules for short permissions, overtime and compensatory off.Permission rules, Overtime rules, Comp-off rules

Request groups, permission, overtime, comp-off and shift groups are each set per attendance group.

How a day is processed​

Attendance is processed automatically every day, and again whenever something that affects a day changes, such as an approved request or leave. For each employee and date, HCM Cafe:

  1. Finds the shift for the date. An approved shift change or roster entry wins; otherwise the employee's base shift is used.
  2. Collects the punches within the shift's window, from an hour before the shift starts to an hour after it ends. Night shifts that cross midnight are handled as one shift-day. Repeated taps within a few seconds are treated as one punch. If punches have no in/out direction, they're read as alternating in and out.
  3. Applies approved requests. An approved swipe regularization or on-duty request fills in missing punches with its approved times. An approved permission excuses late arrival or early leaving but doesn't add worked time.
  4. Counts worked time from the first to the last punch, according to the group's Work hour calculation type, then removes the shift break if breaks are excluded.
  5. Checks the day type: week off, half week off or holiday.
  6. Applies approved leave, including two different half-day leaves on one day.
  7. Works out late arrival and early leaving against the shift times and grace.
  8. Sets the status (see below).
  9. Calculates overtime under the group's overtime rules, and flags the day for comp-off if the employee worked on a week off or holiday.

How the status is decided​

The first rule that matches wins:

  1. Approved leave for the day → the leave code, for example EL.
  2. On duty with no punches → On duty.
  3. Week off or holiday, with no punches → WO or the holiday.
  4. No punches → WFH if approved, otherwise Pending until the shift ends plus grace, then Absent.
  5. Exactly one punch → Single punch until the shift ends plus grace, then the status your organization uses for single-punch days.
  6. Otherwise, by time worked: at least the full-day hours → Present; at least the half-day hours → Half day; less → Absent.

Punches on a week off show as Present on off. Punches on a holiday show the worked status against the holiday, for example NH/P. Optional holidays (RH or OH) are normal working days unless the employee has taken that holiday as leave.

See Attendance statuses for every status.

Corrections​

  • Employees correct a day by raising a request: swipe regularization for missed punches, on duty, work from home or permission. See Raise an attendance request.
  • Admins can reprocess days for employees after changing rules. See Reprocess attendance.

Attendance and payroll​

Payroll reads each employee's processed attendance for the pay period: paid days, loss of pay, overtime and late coming. While a payroll run is being processed, requests and leave in its attendance window are locked until the run is published.

Next steps​