Mark attendance
Mark daily attendance for every active employee with quick bulk actions, per-row status pickers and a per-employee calendar view.
The Attendance screen is optimised for the most common HR flow — "everyone was present today, a few exceptions, save". Bulk actions handle the majority; per-row dropdowns catch the exceptions.
Supported statuses
| Status | Meaning |
|---|---|
PRESENT |
Full day worked. |
ABSENT |
Unapproved absence. |
HALF_DAY |
Half day worked. |
LEAVE |
Approved leave. |
WEEKLY_OFF |
Regular weekly off. |
HOLIDAY |
Declared company or public holiday. |
Mark attendance for a day
Step 1: Open HR & Payroll → Attendance
The default date is today. Change if you are backfilling.
attendance-01.png
Step 2: Use bulk mark
Click Mark all and pick a status. All visible rows get that status.
Step 3: Fix exceptions
Change the status dropdown on specific rows for anyone who deviates (half-day, absent, leave).
Step 4: Save
Pending changes are tinted. Click Save to commit. A rose "unsaved changes" badge warns if you try to leave without saving.
Mark attendance for a specific department only
Step 1: Pick the Department filter
The grid filters to only that department. Mark all / bulk apply then only affects visible rows.
Per-employee calendar
Step 1: Click the employee's name
Opens the employee edit page with an Attendance calendar section. Each day of the month is colour-coded by status.
Self-service clock-in
Employees with the Employee self-service role can mark their own attendance from the mobile app or from My payslips. HR can override any self-service entry.
What's next
- Payroll runs — attendance feeds the monthly payroll calculation.
- Self-service payslips — what employees see on their side.