Leave types
A leave type identifies why someone is away, whether the leave is paid or unpaid, and the maximum working days allowed in one request. Its optional balance policy controls annual entitlement and accrual separately. Set both deliberately before employees start requesting leave.
Access needed
Access depends on your assigned permissions and workflow scope.
- Read types, search/filter, or read a policy
leave.types.readRead access alone does not allow changing the catalogue or a balance policy.
Role and permission labels
Typical responsibility: Employee or authorized reader. Role names alone do not grant access.
- Read leave types and policies
- Create/edit types, configure policies, activate/deactivate or retire
leave.types.manageThe catalogue and policy interface also reads types with leave.types.read. Codes remain fixed after creation. Status and non-cancelled-request restrictions still apply.
Role and permission labels
Typical responsibility: HR policy administrator. Role names alone do not grant access.
- Manage leave types and policies
- Load suggested default types
- All:
leave.types.readleave.types.manageBoth are required to inspect existing types and avoid duplicate defaults. Matching inactive types are left unchanged.
Role and permission labels
Typical responsibility: HR policy administrator. Role names alone do not grant access.
- Read leave types and policies
- Manage leave types and policies
- View the type’s Activity log
audit.readActivity log access is separate from type read or management.
Role and permission labels
Typical responsibility: Authorized investigator. Role names alone do not grant access.
- Read the service Activity log
Demo screenshots may show broader access than your account.
Review the existing list
Open Leave → Leave Types. Check the Leave type, Code, Working days per request, Pay, and Status columns before adding another category. Use search, Filter, Sort, column options, and pagination as needed. Clear filters before deciding that a type is missing.
The screenshots use paid and unpaid demo categories. These illustrate the interface; they are not a recommended employment policy or a statement of legal entitlement for your organization.
Employees choose an active type through the request form. They do not need to configure the catalogue themselves. Reading the catalogue is separate from changing it.
Create a leave type
Select Add leave type to open the three-step wizard.
- Define the category
Enter a recognizable Name and Description. The Code is generated from the name and kept unique. Set Maximum working days per request, then choose whether Paid leave applies. Uncheck it for unpaid leave.
- Choose whether balances are tracked
Select Continue to reach Balance policy. Keep Set up a balance policy enabled when the type needs entitlement and accrual rules. Fill in the policy, or turn it off to create a type without a tracked balance.
- Review the whole setup
Continue to Review and check the name, code, per-request limit, payment treatment, and policy summary. Go Back to correct the setup before creating it.
- Create and verify
Select Create leave type or Create leave type and policy, as offered. Wait for the result and check the saved row and policy. Avoid submitting another copy while the first save is pending.
Name can contain up to 200 characters and Description up to 1,000. The per-request limit is between 0 and 366 working days. Treat 0 as a zero limit, not an unlimited allowance.
The generated Code cannot be changed after creation. If creating fails because a code already exists, check the existing types, including inactive ones, and choose a distinct name/code through the available form behavior rather than repeatedly submitting the same setup.
Keep request limits and entitlement separate
Maximum working days per request limits a single booking. It does not grant that many days each year. A balance policy defines Annual entitlement, Accrual schedule, hire-date proration, carryover, expiry, permitted negative balance, and minimum service.
Without a policy, requests of this type have no tracked balance check. They still need valid dates, an active type, at least one working day, an allowed per-request size, no conflicting booking, and approval.
Use Leave balances and policies for the detailed policy instructions and recorded balance history. Saving a policy does not immediately mean that the annual entitlement has already accrued.
Check the final review and save result
The Study Leave form above was reviewed and cancelled. The saved demo categories in the list are separate examples.
Paid, unpaid, and approval
Paid leave identifies the treatment passed to Payroll when the request receives final approval. It is not proof of a completed payroll calculation or payment, and it does not itself create a tracked allowance.
Every request follows the workspace's configured approval flow. Requires approval remains enabled in the form; the current workflow does not provide a no-approval type. Choosing a paid or unpaid category does not bypass review.
Public holidays are separate shared dates used in working-day calculations. Do not add holidays as personal leave categories or infer payment treatment from a holiday's name.
Edit an existing type
Open the type's row or Leave type actions → Edit. Update Name, maximum days per request, payment treatment, or Description, then select Save leave type and verify the result. The Code remains fixed; its policy is managed separately.
Existing requests are not re-checked merely because the type changes. Review the effect of changes with the people responsible for leave and payroll; do not assume that editing a limit repairs an existing request or rewrites balance history.
Use the row's Manage balance policy action to inspect or configure its policy. A “not configured” hint means there is no saved policy, not that the leave type is inactive.
Deactivate, reactivate, or retire
Use Leave type actions → Deactivate to stop offering a type for new requests and edits. Read the confirmation, confirm only when intended, and verify its inactive status. Existing Pending requests can still be reviewed after the type is deactivated.
To bring a type back, include inactive types using the list's Status filter, find it, and choose Activate when offered. Check the result before expecting it to appear in new request choices.
Retire also deactivates the type rather than erasing it. Retirement is refused when any non-cancelled request uses the type, including a Rejected request. Do not change request history merely to make retirement succeed. Decide whether ordinary deactivation meets the intended need.
The pictured deactivation confirmation was cancelled; the demo types remain active.
Load suggested starter types
Open Options → Load defaults when you want to review suggested categories before setting up your own catalogue. Check the names, codes, payment labels, and per-request limits before selecting Load default types.
Review the result for every type. If loading partly fails, use Retry missing types where offered after checking the messages. Avoid creating replacements for entries already saved. The default-loading dialog shown here was cancelled.
Troubleshooting
| Problem | What to check |
|---|---|
| Add, edit, or availability actions are missing | Read access does not grant leave-type management. |
| A type is missing from employee choices | Check that it is active, the employee has type-read access, and the request form has reloaded. |
| The code cannot be edited | Codes remain fixed after creation; identify the existing type by its saved code. |
| The limit looks like an annual allowance | Maximum working days per request is a booking limit; annual entitlement belongs to the balance policy. |
| Policy saving fails after type creation | Retry or manage the policy on the existing type; do not create it again. |
| Retirement is refused | Check for non-cancelled requests using the type, including Rejected requests. |
| Loading defaults skipped a category | A matching name or code, including an inactive type, may already exist. |
| Editing did not alter an old request or ledger entry | Existing requests are not re-checked automatically and policy edits do not rewrite recorded history. |

