Leave
Human resourcesA balance that is a ledger, not a number.
A leave balance that two approvals landing together cannot break.
Grants and days taken are movements with dates, so approving leave adds a row instead of editing a total and two approvals cannot lose one another. Your leave year is your own record: its anchor, its length and its days.
“Leave balances are a spreadsheet nobody trusts, and I cannot tell you what somebody has left without working it out by hand.”
What happens, in order
Every one of these is a step the service takes itself. Nothing in this list is somebody remembering to do it.
- The request is captured: the dates, the kind of leave and the reason.
- A rule checks the dates make sense.
- Your active policy is read, and the cycle those dates fall in is computed from your own anchor date.
- The ledger is read for that cycle, and for the next one too when your policy splits leave that runs over the turn of a cycle.
- Days are split into paid and unpaid, and recorded as movements.
- If the balance does not cover it, the shortfall is offered as unpaid rather than the request being refused.
- Who decides is worked out: the person’s manager, falling back to anyone else holding line manager, then to your administrators.
- They decide. If approved, the days come off the ledger, one movement per cycle where it was split, and the person is told.
- Awaiting a decision, scoped to you
Every figure opens what it counts and offers the next action. Nothing here is compiled at month end.
Pick the dates. Watch the days.
Working days, Monday to Friday, against the balance of the cycle they fall in. Run the leave over the turn of a cycle and switch the policy to see where the days are charged.
- Working days asked for
- 10
- Balance, cycle from Sun 1 Mar 2026
- 3
- Paid from it
- 3
- Unpaid
- 7
- Leave asked forMon 22 Feb 2027 to Fri 5 Mar 2027: 10 working days, Monday to Friday.
- Cycle worked outIt starts in the cycle Sun 1 Mar 2026 to Sun 28 Feb 2027, from your own anchor date.
- Over the turn: charged to the cycle it starts inAll 10 working days are checked against this cycle's balance of 3, though some fall after Mon 1 Mar 2027.
- Paid and unpaid3 days paid, 7 days unpaid.
- Shortfall offered as unpaidThe balance covers 3 of 10. They accept the 7 unpaid, so it goes on.
- Their manager decidesTheir own manager, else someone else holding line manager. Never themselves: if they are the only one who could, your administrators decide.
- Taken off this cycleA movement of −3, dated Mon 22 Feb 2027.
- They are toldApproved, 3 paid and 7 unpaid. Unpaid days are on the record, not on the balance.
Yours to change, and ours
Most vendors are vague about this line. Yours is everything about how your organisation works. Ours is the shape of the process itself.
Your administrators change these
- When a cycle starts, how long it runs, and how many days it carries
- Whether leave over the turn of a cycle is charged to the cycle it starts in, or split between the two
- The kinds of leave you recognise
- Who holds line manager, and who each person reports to
Authored with the service
- That a balance is a ledger of movements rather than a stored total
A change here is a draft, checked and published. Work already under way stays on the version it started on.
The part most pages leave out
A service that only ever says yes is not evidence. This is the place it deliberately refuses, and the suite that proves it still does.
Nobody approves their own leave
An approval refuses its own requester. If the only person who could decide is the person who asked, it goes to your workspace’s administrators instead, and the approval says why.
Every claim here runs on each build
Not a policy, a suite. This one is npm run leave, and it fails the build rather than a report nobody reads.