Timesheets for Jira now supports approval chains: several stages in
order, each with its own approvers and its own rule for clearing. We built it for a services
company whose auditor rejected single-button approval.
The common setup is two stages. The team lead confirms the hours happened, then
finance confirms they're billable. A submission reaches finance only after the
lead clears it, so finance never reviews unverified hours, and a billing
correction no longer means un-approving and re-approving the whole timesheet.
Approvers are set by role or by name. Naming them directly matters when the
person who signs off isn't in any delivery team, which is usually the case with
a finance reviewer who covers every team but belongs to none.
Each stage carries its own rule: any approver, or all of them. A lead stage
usually clears on any approver, so one available lead unblocks the week. A
finance stage may require all of them when two signatures are the policy.
Self-approval can be blocked at the policy level. With it on, a lead who is the
only approver on his own team can't clear his own week, so small teams usually
add a second named approver for that stage.
Policy is snapshotted when a submission is filed. If someone edits the chain
mid-quarter, pending submissions keep the rules that were in force when they
were filed, which is what auditors expect.
Team Settings → Workflow. Existing single-approver setups keep working: a chain
with one stage is the same thing.