One approval engine governs everything in People that needs a sign-off. You configure a chain per entity type; when someone submits a request, the runtime resolves each step to a real person and walks the chain in order.
Where chains apply
- LEAVE_REQUEST: leave requests.
- EXPENSE: expense claims.
- REQUISITION: hiring requisitions in recruiting.
- COMPENSATION_CHANGE and GENERAL exist as entity types, but compensation is cycle-based and is not wired to chains.
Step types
- MANAGER: the submitter's reporting manager (Reporting manager).
- DEPARTMENT_HEAD: the head of the submitter's department.
- HR: any HR / Admin user.
- SPECIFIC_USER: a named person, chosen with specificUserId.
Building a chain
- 1Open People > Approvals and choose the entity type (for example EXPENSE).
- 2Add step 1 and choose its approver type.
- 3Optionally add a label, an SLA in hours, and mark the step Optional.
- 4Add further steps in the order they should run; drag to reorder.
- 5Save. New submissions use the chain immediately.
[
{ "approverType": "MANAGER", "slaHours": 24 },
{ "approverType": "DEPARTMENT_HEAD", "optional": true },
{ "approverType": "HR", "label": "Finance sign-off", "slaHours": 48 }
]Runtime behaviour
- Steps run strictly in order; a rejection at any step ends the request.
- If a MANAGER or DEPARTMENT_HEAD cannot be resolved (empty field), the request needs HR attention rather than silently passing.
- slaHours defines how long a step may wait before it is flagged overdue.
- Optional steps may be skipped when they cannot be resolved.
