Policies set the rules once
Each leave type carries its own accrual and carry-forward policy. Define it once and every request of that type is measured against it, so entitlement is never argued case by case.
Every approval carries the context the decision needs — the balance it leaves behind, who else is already off, and what happened last time — so the answer takes seconds and survives being questioned.
Written for: the manager approving from a phone between two other things
Each leave type carries its own accrual and carry-forward policy. Define it once and every request of that type is measured against it, so entitlement is never argued case by case.
The manager sees the balance the request would leave, the team's coverage for those dates, and the person's recent history — on one card, without opening anything else.
Earned leave · 14–16 Jul · 3 days
Some request types need HR as well as the manager. That is set on the type, so the chain is consistent for everyone rather than depending on who happens to be reviewing.
Punch fixes, off-zone punches and overtime all land in the same queue as leave. Anything still pending after 48 hours is surfaced as aged, so it can be chased before it reaches payroll.
Balance after the request, who else is off that week, and the person's history — on the same card as the approve button. No opening three screens to answer one question.
Some requests should need HR as well as the manager. That is a property of the request type, set once, rather than a rule people remember differently.
There is no silent auto-approval anywhere in the chain. A request that nobody touches stays pending and is surfaced as aged — visible, not resolved.
Policies define accrual and carry-forward per leave type, and the accrual run applies them. The run is triggered from the admin console when you want it — it is not on a timer.
Team coverage for the requested dates is shown on the approval card itself, so the clash is visible at the moment of deciding rather than discovered afterwards.
It stays pending with the manager. Once it passes 48 hours it is surfaced as aged on the queue and the dashboard, so it can be chased. It is not reassigned or approved on its own.
Set up in an afternoon. Free for your first 10 employees.