Prerequisites
Before setting up attendance penalisation, ensure:
You have Admin access in Asanify.
You have set up your attendance and leave structure — including holidays, leave policies, and at least one attendance policy with shift timings defined. Shift timings are required for the system to determine late arrivals and expected work hours.
If you plan to use Loss of Leave (LOL) as the penalty type, ensure you have created the relevant leave policies first, as the system will deduct from those leave balances.
Step 1 - Navigate to the Attendance Policy
From the left navigation bar, click on the Attendance dropdown.
Click on Policies.
Click on the name of the policy you want to configure, then click the Edit button to enter edit mode.
Note: If you have not yet created an attendance policy, click + Create Policy and proceed through the setup wizard. Penalisation rules are available in the Defining Late Arrivals and Work Hour Details sections during or after creation.
Step 2 - Configure Late Arrival Penalisation
This section is found under the Defining Late Arrivals section of the attendance policy edit screen.
Under Late Arrival Rule, choose one of the following:
Employee is not penalised — No deduction is applied for late clock-ins.
Yes, Loss of Pay (LOP) — A salary deduction is triggered once the late arrival threshold is met.
Yes, Loss of Leave (LOL) — A leave balance deduction is triggered once the threshold is met.
If you select Loss of Pay (LOP):
Set the threshold (N) and penalty (M): "For every N late day(s) in a month, deduct M day(s) of pay."
Example: For every 3 late days in a month, deduct 0.5 days of pay.
The system groups late days in batches of N and applies M days of LOP for each complete group. Remaining late days below the threshold carry over to the next group count.
If you select Loss of Leave (LOL):
Set the same threshold (N) and deduction (M), but the deduction is taken from the employee's leave balance.
Leave Balance Deduction Priority — Select one or more leave policies in priority order. The system exhausts the first leave type before moving to the next.
When should penalised leaves be deducted? — Choose:
Deduct immediately when triggered — Leave is deducted as soon as the threshold is crossed during the payroll period.
Deduct at end of payroll cycle — Leave is deducted once the payroll period ends.
Fallback to LOP — If the employee's leave balance is insufficient to cover the full deduction, the remaining amount is automatically converted to a Loss of Pay deduction and picked up in payroll.
Buffer Days (applicable to both LOP and LOL):
The Buffer Period field lets you set a grace period (in days) between when an attendance event occurs and when the system evaluates it. For example, a buffer of 2 days means a given day's attendance is evaluated 2 days later — useful if your team regularly regularises attendance data after the fact.
Note: An employee is marked "late" when their clock-in time exceeds the shift start time by more than the configured grace period for that shift.
Step 3 - Configure Work Hour Shortage Penalisation
This section is found under the Work Hour Details section of the attendance policy edit screen.
Under Unmet minimum work hours requirement, choose one of the following:
No action — No deduction for working fewer hours than required.
Loss of Pay (LOP) — A salary deduction based on the hour shortage at the end of the tracking period.
Loss of Leave (LOL) — A leave deduction based on the hour shortage.
Tracking Basis — Currently, shortages are tracked on a Monthly basis. At the end of each payroll period, the system calculates the total hours the employee was expected to work (based on their assigned shifts) versus the hours they actually worked. Days where the employee was on approved leave, a public holiday, or a weekly off are excluded from this calculation.
Configuring Shortage Slabs:
You define penalty slabs — each slab maps a minimum hour shortage to a deduction amount. The system evaluates slabs from the highest shortage downwards and applies the first matching slab.
Click + New Rule to add a slab.
For each slab, enter:
Shortage above (hours) — The lower bound of hours short for this slab to apply.
Up to (hours) — (Optional for all but the last slab) The upper bound of this range.
Deduct (days) — The number of pay days (LOP) or leave days (LOL) to deduct.
Example slab configuration:
If total hours short is at least... | Deduct |
8 hours | 1 day |
4 hours | 0.5 days |
In this example, an employee who is 10 hours short will have 1 day deducted (matched to the 8-hour slab). An employee who is 5 hours short will have 0.5 days deducted.
Buffer Days (optional) — Same as for late arrivals; sets a processing grace period before the shortage evaluation runs.
If you select Loss of Leave (LOL) for work hour shortage:
Configure the Leave Balance Deduction Priority and Fallback to LOP in the same way as described in Step 2 for LOL.
Step 4 - Save and Assign the Policy
After configuring your rules, click Save to apply the changes to the policy.
To ensure the rules take effect for your employees, make sure the policy is assigned to the relevant employees.
Note: Penalisation rules only apply to employees who are assigned to the policy at the time the engine evaluates attendance.
Step 5 - Review Deductions in Payroll
Once the penalisation engine runs (automatically, on a daily schedule), LOP deductions are ready to be pulled into payroll.
Navigate to Payroll and open the relevant payroll run.
Click Sync LOP Days to pull in all LOP days computed from attendance, including those resulting from late arrivals and work-hour shortages.
Review the LOP Days column for each employee. You can manually adjust the value if needed before processing.
Click Process Inputs and Review to proceed.
Note: LOL deductions appear as leave transactions on the employee's leave balance and are not shown as LOP in payroll (unless the fallback to LOP was triggered due to insufficient leave balance).
Additional Information
Understanding LOP vs LOL
| Loss of Pay (LOP) | Loss of Leave (LOL) |
What is deducted? | A portion of the employee's monthly salary | Days from the employee's leave balance |
When does it apply? | Immediately at the end of the payroll period, picked up during payroll sync | As a leave transaction; immediately or at end of payroll cycle (as configured) |
What if leave balance is 0? | N/A | Fallback to LOP is enabled, the remainder converts to LOP and appears in payroll |
How the Engine Counts Late Days
The penalisation engine runs every day and checks each employee's clock-in against the configured shift start time. If the employee's clock-in exceeds the shift start time by more than the allowed late grace period for that shift, the day is recorded as a "late" violation.
These violations accumulate over the payroll period. Once the threshold is met, a penalty summary is created:
For LOP: the deduction is recorded immediately and included in the next payroll sync.
For LOL with Immediate timing: the leave is deducted from the employee's balance right away.
For LOL with End of payroll cycle timing: the deduction waits until the payroll period ends.
Example: Threshold = 3 late days, Penalty = 0.5 days LOP.
Employee is late 7 times in a month → 2 complete groups of 3 → 1.0 day LOP applied.
The 1 remaining late day does not trigger a penalty and is not carried forward — each payroll period is evaluated independently.
How Work Hour Shortage is Calculated
Shortage = Expected shift hours for the period − Actual hours worked
Only days where the employee was expected to work (not on leave, holiday, or weekly off) are included.
The calculation runs at the end of each payroll period (or each week, for weekly tracking).
The system matches the total shortage against your configured slabs, highest first, and applies the penalty for the first matching slab.
The Leave Deduction Waterfall
When LOL is configured with multiple leave policies in the priority list, the system deducts leaves in order:
Deducts from the first leave policy in the priority list until its balance is exhausted.
Moves to the next policy in the list and repeats.
If all leave balances are exhausted and a remaining balance is still owed:
If Fallback to LOP is enabled: the remainder is converted to an LOP deduction, which appears in the next payroll.
If Fallback to LOP is not enabled: the pending deduction stays in a PENDING state until leave balance becomes available.
