Attendance Rules determine how employee time, shifts, and pay are calculated based on attendance behaviour and defined conditions.
Rule types
The following rule types are available when configuring an Attendance Rule:
Rule Type | Code | Description |
Apply pattern for status | — | Applies a shift type or pattern based on a status code (e.g. WRK, RW). Acts as a fallback for Apply Default Status Shift for Part-Time. |
Exceed Rostered Daily Hours |
| Determines overtime when an employee works beyond their scheduled hours. |
First Clocking Before/After |
| Evaluates the first clock-in time relative to shift start. This is the first rule checked in the overtime cascade for part-time employees. |
Make-Up Hours |
| Handles the calculation and payment of hours worked to make up for previously missed time. |
No Rule – All Hours at Attached Pay Code | — | Applies a single pay code to all hours. This is the simplest rule type. |
Part-time overtime cascade
For part-time employees, the system checks rules in the following order:
First Clocking Before/After rule (checked first).
If not found — Exceed Rostered Daily Hours.
Fallback — Apply pattern for status.
Configuring Attendance Rule fields
The table below describes each field available when setting up an Attendance Rule:
Field | Database Field | Description |
Shift Type |
| The employee's base shift (e.g. Resting pattern). |
Rule Type |
| Defines which rule logic applies. |
Override Shift Type |
| The shift type applied when the rule is triggered. |
Date Effective |
| The date from which the configuration becomes effective. |
Fully Replace Pattern |
| When set to Y, the override completely replaces the assigned pattern. |
Compare Type |
| The comparison logic applied (e.g. >, <). |
Comparison Threshold |
| The threshold value used for comparison. |
Threshold Time |
| A time-based threshold value. |
Compare Unit |
| Specifies whether the comparison is based on Time or Hours. |
Status |
| The status code the rule applies to (e.g. WRK, RW, S). |
Pay Code |
| The pay code applied when the rule is triggered. |
Ignore Entry |
| When enabled, skips this rule during processing. |
Active |
| Y/N — inactive rules are ignored during processing. |
Calculate Roster Time |
| When enabled, calculates hours from actual clocked time. |
Special Day Payment Rule |
| Links the rule to a special day payment scheme. |
Late In / Early Out |
| Defines how late clock-ins or early departures are handled. |
Pay Rostered Hours |
| When enabled, the employee is paid on rostered hours rather than actual hours worked. |
Exceed Rostered Hours |
| When enabled, applies the overtime pattern when rostered hours are exceeded. |
Use Assigned Pattern for Part-Time Overtime |
| When enabled, uses the assigned daily pattern as the overtime pattern for part-time employees. |
Sum Worked Hours Based On |
| Controls how make-up hours are calculated — either Clocks or Pay Code Multiplier. |
Use Default Hours for Empty Day |
| Uses default hours when calculating pay for empty days. |
Apply Default Status Shift for Part-Time |
| Part-time employees use the default (WRK) shift pattern for certain statuses. |
Ignore Exceed Rostered Hours for Part-Time |
| Prevents part-time employees from switching to an overtime pattern when they exceed rostered hours. |
Make-Up Hours pay codes by day
When using the Make-Up Hours rule type, a separate pay code can be assigned for each day of the week:
Day | Database Field |
Monday |
|
Tuesday |
|
Wednesday |
|
Thursday |
|
Friday |
|
Saturday |
|
Sunday |
|
How Make-Up Hours calculation works
The Sum Worked Hours Based On field controls how make-up hours are calculated. There are two available methods:
Method | Description | Example |
Clocks | Based on actual worked time. | Target 8 hrs; worked 5 hrs — system pays an additional 3 hrs. |
Pay Code Multiplier | Based on weighted (multiplied) hours. | Target 8 hrs; worked 5 hrs @ x1.5 = 7.5 equivalent — system pays an additional 0.5 hrs. |
📌Note: The Pay Code Multiplier method accounts for weighted hours, meaning fewer make-up hours are owed when a higher pay rate multiplier has already been applied to worked time.
