All attendance status types

Present
Full day attendance. Employee checked in on time (within the shift's grace period) and worked at least the shift's minimum full-day hours. No deductions apply.
Late
Present but arrived after the grace period. Employee worked a full day but checked in after the shift start time plus grace period. Late has no payroll effect on its own. See Grace Period Configuration.
Half Day
Worked less than a full day. Hours worked fell below the shift's full-day threshold (but were at least half of it). Salary is deducted for half a day. Can also be set manually (e.g., an approved half-day).
Absent
No attendance with no approved leave. Employee did not check in — or worked less than the shift's minimum half-day hours — and has no leave application for the day. Full day salary deducted.
On Leave
Approved leave application. Employee's leave request was approved via the leave module. No salary deduction (for paid leave types); leave balance is reduced.
Holiday
Public holiday. The day is declared a public holiday in the company calendar. No deduction.

How statuses are set

A status reaches an attendance record in one of three ways:

  1. Auto-derived from biometric punches: When a punch is captured from a biometric device, Octal HR reads the punch times against the employee's assigned shift and derives Present, Late, Half Day, or Absent. A check-in after the shift start plus grace period is marked Late; worked hours below the shift's half-day threshold are marked Absent, below twice that threshold Half Day. Overnight shifts (e.g. 22:00 in → 06:00 out) are handled correctly across midnight.
  2. From leave / holiday records: An approved leave record sets On Leave, and a public holiday in the company calendar sets Holiday. These are preserved and are not overwritten by punch derivation.
  3. Manual entry: HR enters or corrects a record from Daily Attendance and sets the status directly. Manual entries and Excel imports keep the HR-selected status — they are not auto-overridden by shift rules.

Auto-derivation from punches applies to biometric device data only. On Leave and Holiday are never overwritten by punches. All changes are logged in the audit trail.

Payroll impact by status

StatusPayroll deductionLeave balance impact
PresentNoneNone
LateNoneNone
Half Day0.5 day salary deductedNone
AbsentFull day salary deductedNone
On Leave (paid)None1 day deducted from leave balance
On Leave (unpaid)Full day salary deducted1 day deducted from leave balance
HolidayNoneNone

Status priority rules

When multiple conditions apply on the same day, the priority order is:

  1. Manual entry / correction by HR (highest)
  2. Approved leave record (On Leave) or public holiday (Holiday)
  3. Auto-derived from biometric punches (lowest)

Changing a status

An authorized HR user can change any status. Go to Attendance → Daily Attendance, select the date, open the employee's record, choose the new status and save. A note is optional. The change is recorded in the audit trail.

Tip: Export the attendance audit log before payroll processing so you have a record of who changed which status and when.