Skip to main content
Defining a leave type gives you a rule; it does not give anyone a usable balance. Allocation is the step that grants real days to real employees, creating the balances they can then spend. The Leave Control Panel does this in bulk: pick a group of employees, choose what they should get, preview exactly who is affected, then commit. Allocation is the right way to seed balances because it creates a proper ledger credit for each employee — so every granted day is auditable and reconciles against the balance. (Adjusting one person’s balance by hand from their profile is a different, narrower tool — see the note at the end.) You’ll find this at: /hr/leave/allocations
Allocation always targets your active business. The control panel reads the business from the switcher at the top of the app, and the server rejects any attempt to allocate into a different business. If no business is selected, the panel tells you to switch to one first. Re-run the preview whenever you change business.
📷 Screenshot: the Leave Control Panel with the settings card on the left and the preview table on the right — to be added.

The two modes

The panel works in one of two modes, chosen from the Mode dropdown. They serve genuinely different purposes and behave differently when you run them more than once:
Seed annual entitlements through Annual Entitlement so they are correctly tied to each contract and policy. Reach for Ad-hoc Top-up only when you deliberately want to add extra days outside the normal entitlement cycle.

Choosing who gets the leave

Below the mode you narrow the target group with optional filters. Leave any of them on “All” to include everyone in the active business: That’s it — there’s no date range or carry-forward option to set here. Carry-forward behaviour at year end is controlled entirely by the leave type’s own settings (its carry-forward percentage and maximum carried days), not by anything you choose at allocation time. See Leave types & settings to configure that.

Preview before you commit

Allocation is deliberately a two-step action.
  1. Choose Preview. The right-hand table fills with every employee the filters matched, showing each person’s Current Balance and the New Allocation they would receive.
  2. Review the list carefully. If anything looks wrong, change a filter — changing any setting clears the preview, so you can never accidentally commit an allocation against a different group than the one you reviewed.
  3. When the preview is correct, choose Allocate (N) (the count is shown on the button). Hitaji credits the balances, then confirms how many employees were allocated.
If you try to allocate without a current preview, the panel asks you to preview first.

What allocation actually does

  • Annual Entitlement creates (or confirms) a leave policy assignment linking the contract to the policy, and writes a positive ledger entry (transaction type Allocation) that bumps the Accrued figure on that contract’s balance for the period. An employee who already has an assignment for that policy/period is skipped.
  • Ad-hoc Top-up skips the assignment step entirely and writes the positive ledger entry straight to the employee’s balance. There’s no assignment record and no skip check — each run is a deliberate, standalone credit.
Because every grant is a ledger row either way, you can later see exactly who allocated what and when on the Leave ledger report.

Who can allocate

Reaching the page needs hr-leave:config. The allocation endpoints themselves additionally require hr:admin, so the person committing the allocation must hold that broader HR-admin permission.

Allocation vs. a manual balance adjustment

There are two ways a balance can change outside of an approved application, and they are not interchangeable:
  • Bulk allocation (this page) writes a proper ledger credit for each matched employee. This is the correct way to grant entitlements or top-ups — the balance is properly tied to the contract and policy, so applications draw against it.
  • A manual adjustment (the adjust balance action available to hr:admin from an employee’s leave detail) writes a one-off correction. A manual adjustment is not tied to a contract in the same way and should be reserved for genuine corrections, not for seeding entitlements or top-ups. If you allocate by hand via the adjust tool, an application may not find a contract-scoped balance to draw against.
When in doubt, allocate through the control panel.