How it works
- An employee raises a request in self-service or the app, such as leave, an attendance correction, WFH or on duty, or a shift swap; overtime requests come from nightly detection or HR.
- ZeniaHR builds the steps: the reporting manager first, if the employee has one, then HR.
- The manager decides from My Team on the web or in the app, and ZeniaHR checks that the current step really is theirs.
- After the manager approves, the request moves to HR; a rejection at either step ends it.
- The last approval applies the request: leave is deducted, the attendance day is corrected with the original punches kept, or the roster changes.
- The requester or an admin can cancel a request that is still open, and the Company Head can decide any step.
What you can set
- Default chain: reporting manager, then HR; with no manager set, HR only.
- Attendance corrections raised by HR default to one HR step.
- Profile correction requests from the app go to one HR step.
- Overtime approval can be turned off in the overtime policy.
- WFH and on duty requests for today or later are approved at once when the policy needs no approval.
- Shift swaps: the colleague accepts first, then the manager and HR approve.
- Company Head and Super Admin can decide any step.
- The order of approvers is fixed and cannot be redesigned.
Why a fixed two-step chain works
The manager knows whether the team can spare someone on Friday. HR knows the policy, the balance and the payroll effect. Two steps cover both views without turning a day's leave into a week of chasing signatures. A fixed chain is also easy to explain: every request goes to your manager and then HR. The HR dashboard shows six approval queues, for leave, corrections, WFH and on duty, overtime, shift swaps and probation, so nothing waits unseen.
Worked example: a missed punch-out in Gurugram
Neha Gupta, an accounts executive in Gurugram, forgets to punch out on Tuesday 6 October 2026 and leaves at 6:40 pm. Under her company's rules a day without a punch-out counts as a half day, so the correction matters for her pay. Next morning she raises a Missed check-out correction in the app with 6:40 pm as the out time. It goes to her manager, Vikram, who approves it from My Team, and then to HR, who approves it too. The day is then graded with the corrected out time, while her original punches stay on record. Had HR raised the correction for her, it would have needed only the HR step.
Keeping approvals moving
Most approval delays come from missing or absent managers rather than from the chain itself. Fixing the reporting data and planning for absences keeps requests moving, especially in the last week of the month when leave and corrections decide the payable days.
- Set a reporting manager for everyone, so requests do not all land on HR.
- Before a manager leaves, move their team to a new manager.
- When a manager is on long leave, the Company Head can decide their pending steps.
- Watch the dashboard queues daily during payroll week.
See approval workflow in a demo
We show it on a video call with your own shifts, leave types and rules. Free for your first 50 employees.
Book a free demoSee pricingFrequently asked questions
Can I add a third approval level, such as a department head?
No. ZeniaHR uses a fixed chain of reporting manager, then HR, for every request, and there is no screen to add levels. If a department head should approve, make them the reporting manager for that team. Senior managers still see indirect reports on My Team without approving.
What happens if the reporting manager is on leave?
The request waits at the manager's step, because HR cannot decide a step that belongs to a named manager. The Company Head can decide any step, so they can approve or reject it. For long absences, move the team to another reporting manager so new requests reach someone available.
Who approves requests from an employee without a manager?
HR. When no reporting manager is set, ZeniaHR skips the manager step and the request goes straight to HR. That is right for the company head, but for other staff it usually means the record needs a manager, which HR can add in the organization assignment on the profile.
Can a rejected request be reopened?
No. One rejection ends the request. The employee raises a fresh request, for example for different dates or with a corrected time, and it goes through the chain again. The rejected request stays on record, so managers and HR can see what was asked and what was decided.