BXUP Track progress & test yourself — free
AI at Office · Playbook · Advanced · ~5 min read
AI AT OFFICE · PLAYBOOK · ADVANCED

Build a Multi-Step Approval Workflow with Escalation

Approvals die in inboxes: the request is fine, the approver is busy, and three weeks later someone asks what happened. This playbook builds an approval workflow in Power Automate or Zapier with conditional routing by amount, automatic reminders, timeout escalation to the next level — and the test matrix that proves every path actually works.

Workflow area: Automation · Tier: Advanced · Hands-on time: ~45 minutes to design; a half-day to build and test

An approval workflow is the most consequential thing most office professionals ever automate, because it moves real authority: who can say yes, and what happens when they don't answer. The design work is 80% policy and 20% flow-building — which is why this playbook starts on paper.

When to use — and when not to

  • Use it for high-volume, rule-describable approvalsexpenses, purchase requests, discount approvals, leave, content sign-off. If you can write the routing rules in a table, you can automate them.
  • Use it where delay has a real costvendor payments missing due dates, candidates waiting on offer approvals, campaigns stuck on sign-off.
  • Skip it for judgment-heavy, low-volume approvalsa twice-a-year capex decision needs a meeting, not a flow.
  • Skip auto-approval logic entirelytimeout behavior is escalate to a person, never approve by default. A flow that silently approves whatever nobody looked at is an audit finding waiting to be written up.

The recipe

  1. Write the approval policy as a routing table first. Get the process owner to sign off on paper before you open any tool:

    Amount / type            → Approver         → Timeout → Escalates to
    ------------------------------------------------------------------
    Expense < 10,000         → Line manager     → 48 h    → Dept head
    Expense 10,000–1,00,000  → Dept head        → 48 h    → Finance head
    Expense > 1,00,000       → Finance head     → 72 h    → CFO
    Any amount, new vendor   → +Procurement (parallel, both must approve)
    Rejected at any level    → Requester notified with reason; flow ends
    

    Decide now: What happens on final-level timeout? (Answer: alert the process owner — a human always terminates the chain.) Can approvers approve their own requests? (No — add a same-person check.) What counts as a duplicate submission?

  2. Standardize intake. A Microsoft Form or Google Form with required fields: requester, amount, category, vendor, justification, attachment. Free-text email requests are why the current process fails — the form is what makes routing computable. Land every submission in a tracking list (SharePoint list or Google Sheet) with a status column: Submitted → Pending L1 → Pending L2 → Approved / Rejected / Escalated.

  3. Build the flow — Power Automate version (Zapier maps one-to-one):

    • Trigger: new form response / new row.
    • Condition blocks: implement the routing table with nested conditions or a Switch on amount band. Add the same-person check (requester = approver → route up one level).
    • AI summary step (optional but valuable): before the approval action, an AI step drafts a three-line summary for the approver — amount, what it is, anything unusual versus policy:
    Summarize this approval request for a busy approver in 3 lines:
    what is being requested, the amount, and any flag worth attention
    (over-band amount, new vendor, weekend submission, missing
    attachment noted as [MISSING]). Use only the submitted fields —
    do not infer or add information. Never recommend approve or
    reject.
    
    • Approval action: Start and wait for an approval (Approvals in Teams/Outlook) or Zapier's approval step by email/Slack. Record outcome and comment to the tracking list.
    • Reminder: a parallel delayed branch — at 24 h still pending, send the approver a nudge with the same summary.
    • Timeout escalation: at the routing table's timeout, mark the row Escalated, notify the original approver, and create a fresh approval for the next level. Chain terminates at the top level with an alert to the process owner — never with an automatic yes.
    • Closure: on approve/reject, update status, notify the requester (with reason on reject), and log everything: who, when, at which level, after how long.
  4. Write the test matrix before testing, then run all of it. Every row is a synthetic request; every one must pass:

    #  Case                          Expected result
    1  4,000 expense                 L1 approves → done, requester told
    2  45,000 expense                Routes to dept head, not manager
    3  2,50,000 expense              Finance head path
    4  9,999 (boundary)              L1 path — check your < vs <=
    5  L1 ignores 48 h               Reminder at 24 h, escalation at 48 h
    6  Escalated, L2 also silent     Top-level alert, NO auto-approval
    7  Rejection with comment        Requester gets reason; flow ends
    8  Requester = approver          Routed up one level automatically
    9  Duplicate submission          Flagged, not double-routed
    10 New vendor, small amount      Parallel procurement approval fires
    11 Missing attachment            Summary flags [MISSING]; flow holds
    

    Shorten timeouts to minutes for testing, then restore. Do not skip case 6 — timeout-of-the-escalation is the path nobody tests and everybody eventually hits.

  5. Pilot with one team, publish the rules, name an owner. Two weeks with a single department, watching the tracking list daily. Then publish the routing table where requesters can see it (mystery approvals breed workarounds), document the kill switch (deactivating the flow reverts to manual email approvals), and name the flow's owner — the person who maintains it when the org chart changes. Approver lists rot; schedule a quarterly review of the routing table against reality.

Make it yours

  • Leave-approval variant. Route by leave type and duration; escalate to HR rather than up the finance chain; add a calendar-write step on approval.
  • Discount approvals for sales. Bands by discount percentage; the AI summary includes deal size and margin impact fields from the CRM row; timeout is short (24 h) because deals are perishable.
  • Sequential + parallel mix. For contracts: legal and finance approve in parallel, then the signatory approves sequentially — both platforms support branch-and-join; draw it on paper first.

Quality check

  • The routing table is signed off by the process ownerthe flow implements policy; it doesn't invent it.
  • All eleven test cases passed, including both timeout levelswitnessed, not assumed.
  • No path auto-approvesevery terminal state is a human decision or a human alert.
  • Every decision is loggedrequester, approver, level, timestamps, comments; the list is the audit trail.
  • Kill switch and owner are documentedand the approver list has a quarterly review date.
Warning

Approval flows carry financial data, vendor details and requester information through connected services — and the flow itself is a control in your company's financial governance. Build it on your organization's tenant with IT's knowledge (not a personal Zapier account — that is shadow IT holding payment authority), keep the AI summary step to enterprise API credentials, and check whether finance approvals in your company fall under internal-controls requirements before replacing the existing process. pb-12 covers the full pre-flight.

Key Takeaway:

Reminders and escalation are the product — routing was never the hard part. The flow earns its keep the first time a 48-hour silence escalates itself instead of becoming a three-week mystery, and it keeps its license to operate because timeout never, ever means yes.

This is the free reading view. Open BXUP to track your progress, run the hands-on labs, and prove it with original, exam-pattern assessments.
© Anvi Innovate · BXUP — Be Exponentially Upskilled · BXUP is an independent learning platform, not affiliated with or endorsed by AWS, Microsoft, Google, NVIDIA, IBM, Salesforce, Databricks, Oracle or Anthropic. All trademarks belong to their respective owners. · bxup.in