Approvals
Luna HR routes requests to the right people for approval. Leave requests, expense reports, and training requests all go through an approval workflow before being actioned.
How approvals work
When an employee submits a request, Luna HR determines who needs to approve it based on:
- The employee's line manager — the default approver for most requests
- The org structure — managers of the employee's department or team
- Workflow rules — configurable approval chains for more complex scenarios
The approval flow
For most requests, the flow is straightforward:
- Employee submits a request (leave, expense report, training)
- The request routes to their line manager
- The manager approves or declines from the Approvals page
- The employee is notified of the decision
Multi-level approvals (Expenses)
Expense reports can have additional approval steps:
- Manager approval — the employee's line manager reviews
- Finance authorisation — for higher-value claims, a second sign-off from finance
- Payment — finance marks the report as paid
The authorisation step is optional and configured via Policies.
The Approvals page
All pending items are consolidated in one place:
- Go to Approvals from the sidebar
- Switch between tabs: Leave, Expenses, Training
- Review each request — see the details, check team coverage (for leave), and view attached documents
- Approve or Decline with an optional comment
The approvals page also shows:
- Authorisations — expense reports awaiting finance sign-off
- Payments — approved expenses ready to be marked as paid
Bulk actions
For busy periods, you can select multiple requests and approve or decline them in bulk.
Actor resolution
Luna HR uses several strategies to find the right approver:
| Strategy | How it works |
|----------|------------|
| Line manager | The employee's direct manager (set on their profile) |
| Node manager | The person with the "manager" role on the employee's org node |
| Ancestor manager | Walks up the org tree until a manager is found |
| Role-based | Routes to anyone with a specific permission (e.g. expenses:approve) |
These strategies are used by Luna HR's workflow system and can be configured for different scenarios.
Approver preview
Before submitting a leave or expense request, employees see exactly who will approve it. The preview appears on the submission form and shows:
- The approver's name — so the employee knows who to expect a decision from
- "HR admin" — if no line manager or org tree manager was found and the request falls back to an HR admin
- "Automatically approved" — if the policy means no approval is required (e.g. auto-approve rules)
- Delegation info — if the usual approver has an active delegation, the preview shows the delegate's name with a note like "delegated from Sarah Jones"
This removes the guesswork from submitting requests and gives employees confidence that their request will reach the right person.
HR admin fallback
When Luna HR cannot find a suitable approver through the normal resolution chain (line manager, node manager, ancestor manager), the request is routed to an HR admin instead.
This prevents requests from being silently auto-approved when an employee has no line manager set or the org tree has gaps. The fallback works as follows:
- Luna HR attempts to resolve an approver using the configured workflow steps
- If no approver is found, it looks for any employee with the
adminpermission - If an HR admin is found, the request routes to them — the employee sees "HR admin" in the approver preview
- If no admin can be found at all, submission is blocked with a clear error message asking the employee to contact their HR team
This safety net ensures that every request gets a human review.
Approval trail
Luna HR records who acted on each request and displays this information for transparency:
- Leave requests — the activity timeline shows who approved or rejected the request, with their name and the date
- Expense reports — a dedicated Approval History card shows every step in the chain: submitted by X > approved by Y > authorised by Z > paid by W, with names, dates, and timestamps
- Delegation badges — if any step was handled by a delegate, the trail shows the delegate's name alongside a "delegated from [original approver]" badge
The approval trail is visible to the requesting employee, the approvers, and admins.
Delegation periods
Going on holiday? Delegate your approval responsibilities so requests don't pile up while you're away.
Setting up a delegation
- Go to Admin > Delegation Periods
- Click New Delegation
- Select the manager who is going away
- Select the delegate — the person who will handle their approvals
- Set the start and end dates
- Save
During the delegation period, any leave, expense, or training requests that would normally route to the absent manager are sent to the delegate instead. When the period ends, routing automatically reverts.
How it works
- Delegations cover all approval types — leave, expenses, and training
- The delegate sees delegated requests in their Approvals page alongside their own
- Delegations are logged for audit purposes
- Multiple delegation periods can be set up in advance (e.g. for planned holidays throughout the year)
- If no delegation is in place and the manager is unavailable, requests remain pending until they return
Departing employee reassignment
When marking an employee as inactive or a leaver, Luna HR checks whether they have approval responsibilities. If they do, a reassignment dialog appears listing:
- Direct reports — employees who have the departing person as their line manager
- Policy overrides — any policy sets where they are the designated approver
- Node roles — org nodes where they hold a manager or lead role
- Active delegations — any delegation periods where they are the delegate
- Pending approvals — requests currently awaiting their decision
You can bulk reassign direct reports to a new manager directly from the dialog. Policy overrides and node roles link to the relevant Company Structure pages for manual update. Active delegations are flagged for cancellation.
This ensures no approval responsibilities are left orphaned when someone leaves.
Related
- Leave — leave approval flow
- Expenses — multi-level expense approval
- Training — training request approval
- Roles & Permissions — permissions that affect approval routing