New Time Tracker for Azure DevOps- track developer hours directly inside work items. No ghosted hours. Learn More
logo

How to Automate Approval Workflows in Power Automate

A Power Automate approval workflow replaces email-and-spreadsheet approvals with a tracked, auditable flow: requests route automatically to the right approvers, every decision is recorded, and all parties are notified without manual follow-up. This guide, part of the QServices automation guides, walks you through building one end-to-end.

What you need before you start

Confirm the following before you create your first approval flow:

Step-by-step: automate approval workflows in Power Automate

  1. Map the current approval path. Before opening Power Automate, document who submits requests, who approves at each stage, and what the rejection path looks like. Draw this out explicitly, including what happens on a tie or partial approval. A clear map prevents discovering a missing approver or undefined rejection branch mid-build, which means rebuilding the branching logic from scratch.
  2. Choose the trigger. In Power Automate, create a new automated cloud flow and select your trigger: When an item is created (SharePoint), When a row is added (Dataverse), or When a new response is submitted (Microsoft Forms). Connect it to the specific list, table, or form collecting requests. The trigger determines which fields are available as dynamic content in every subsequent action.
  3. Add the Approvals action and configure the approval type. Add Start and wait for an approval from the Approvals connector. Choose Approve/Reject - Everyone must approve for sequential multi-stage sign-off, or Approve/Reject - First to respond for a single-approver stage. Set the Assigned to field using the approver's email address, which can be a dynamic value pulled from the request record. For multi-stage flows, chain multiple Approvals actions in sequence: each action starts only if the prior stage returns Approve, and each carries its own title (e.g., Stage 1: Department Head) so the Microsoft 365 Approvals hub stays readable.
  4. Branch on the outcome. After the Approvals action, add a Condition control. Set the left value to the approval Outcome field and the right value to Approve. In the Yes branch, continue the process and update the source record's status field. In the No branch, send the requester a notification that includes the Response comments field so the rejection reason is always on record, not buried in an approver's inbox.
  5. Notify and record. In the approved branch, post an Adaptive Card to Microsoft Teams using Post a message in a chat or channel, and update the source SharePoint item or Dataverse row to reflect the approved status. Approval details (approver name, timestamp, and comments) are stored automatically by the Approvals connector and visible in the Microsoft 365 Approvals hub. Recording back to the source record means the audit trail is in the system of record, not just in email history.
  6. Handle reassignment, timeouts, and out-of-office. In the Start and wait for an approval action, set a Request expires value (48 or 72 hours is typical). Enable the Reassignment toggle so approvers can delegate to a colleague without contacting a flow owner. After the approval action, add a Condition branch that checks for the Timeout outcome and routes it to an escalation step, typically a manager email or a Teams alert, so no request stalls silently while an approver is out.

Choosing the right approval configuration

Power Automate's Approvals connector offers three built-in types. Picking the wrong one is the most common source of rework on early builds, since changing it later requires rewiring the branching logic.

Approval typeHow it worksBest for
Approve/Reject - First to respondAny assigned approver can approve or reject; the first response closes the request for all approvers.Low-stakes requests with a pool of approvers where speed matters more than unanimity
Approve/Reject - Everyone must approveAll assigned approvers must respond; one rejection closes the request as rejected regardless of other responses.Financial sign-offs, compliance checkpoints, multi-department approvals requiring full consensus
Custom responsesYou define the response options (e.g., Approve, Approve with conditions, Reject). The flow branches on the specific response text.Procurement workflows where a conditional approval routes to a second review stage before final sign-off

For multi-stage workflows, where a department head approves first and finance approves second, chain sequential Approvals actions rather than assigning multiple approvers to one action. Chaining gives each stage its own timeout window, comment field, and audit entry, making it straightforward to see exactly where a request is in the process at any point.

Where this gets tricky

Three problems appear regularly on approval flow projects, usually discovered after the flow is already running in production:

For exception cases where the right approval path depends on context a rule cannot encode, a human review point is necessary. QServices implements Human-in-the-Loop checkpoints at these junctures: the flow pauses, flags the item, and routes it to a named reviewer before continuing rather than forcing a binary outcome.

How QServices can help

QServices builds Power Automate approval workflows as part of our Power Automate development service. Most approval workflow projects fall in the 80 to 200 hour range for a straightforward multi-stage flow, and 200 to 600 hours when the flow integrates with ERP, CRM, or a custom data source. See our Power Automate cost guide for a full cost breakdown including premium connector licensing considerations.

Every flow we build runs under a service account, documents license requirements before any work starts, and includes timeout and reassignment handling by default, the three things most self-built flows omit. We also document the flow for the people who will maintain it after the build is done.

For a manufacturing client, we built a multi-warehouse inventory system with supervisor approval workflows at each stage, replacing spreadsheet-based tracking entirely:

Case Study

Manufacturing Inventory ERP Portal Integrated with Syspro (Hyspan)

Manufacturing and stocking company

Digitized full lifecycle of inventory operations with barcode and QR scanning, replacing error-prone spreadsheet tracking

Multi-warehouse management with FIFO/LIFO valuation, batch tracking, and supervisor approval workflows

Power Apps.NET Framework 4.7.2MySQLSyspro ERP

Typical timelines run 3 to 8 weeks depending on the number of approval stages and the systems involved.

Can a Power Automate approval flow handle more than two approvers?

Yes. Assign multiple approvers to a single Approvals action for parallel approval, where any one or all must respond depending on the type you choose, or chain multiple Approvals actions in sequence for multi-stage sign-off where each stage has a distinct approver set. Each sequential stage has its own timeout window and response comments field, giving you a clean per-stage audit trail. There is no hard limit on the number of stages a flow can include.

Ready to discuss your project?

Share your requirements with QServices. Our engineers will give you a straight answer on fit, timeline, and cost — no sales scripts.

Book a Free Consultation
Frequently Asked Questions
Do I need a Power Automate Premium license to build an approval flow? +
Standard approval flows using SharePoint, Teams, and Outlook work with the Microsoft 365-included Power Automate license. Adding Dataverse or any premium connector requires a Power Automate Premium per-user license for every user whose actions trigger the flow, or a per-flow license assigned to that specific flow. Check each connector's license tier before you design the flow, not after.
Can I use a SharePoint list as the trigger for a Power Automate approval flow? +
Yes. The When an item is created or When an item is modified trigger on a SharePoint list is the most common starting point for approval flows. The flow reads list fields such as requester name, amount, and department as dynamic content and passes them into the Approvals action. SharePoint-triggered flows run on the standard M365-included license with no premium license required.
What happens if an approver does not respond in Power Automate? +
Set a Request expires duration on the Start and wait for an approval action. When the time runs out, the Outcome field returns Timeout instead of Approve or Reject. Add a Condition branch that catches the Timeout outcome and routes it to an escalation step, typically a manager email or Teams alert, so the request does not sit indefinitely in a pending state.
How many approval stages can a Power Automate flow have? +
There is no hard limit. For multi-stage workflows, chain sequential Start and wait for an approval actions. Each action handles one stage with its own approver, timeout window, and response comments field. A later stage starts only if the prior stage returns Approve. This gives you a clean per-stage audit trail and independent timeout control for each approver in the process.
How does Power Automate store approval history for audit purposes? +
The Approvals connector records all responses automatically in the Microsoft 365 Approvals hub: approver name, decision, timestamp, and comments. You can also map the Outcome, Response summary, and Response comments outputs to update actions in your flow to write these values back to the source SharePoint list or Dataverse record, keeping the audit trail in your system of record.
Book Appointment
Sahil kataria (1)
Sahil Kataria

Founder and CEO

amit Kumar
Amit Kumar

Chief Sales Officer

Talk To Sales

USA

+1 270-550-1166

flag

+1 270-550-1166

Phil J.
Phil J.Head of Engineering & Technology​
QServices Inc. undertakes every project with a high degree of professionalism. Their communication style is unmatched and they are always available to resolve issues or just discuss the project.​

Get Your Free 2026 Software
Buyer Demand Report

Based on 35,705 Upwork jobs, uncover
what software buyers want, where budgets are
growing, and where AI demand is highest.

Thank You

Your details has been submitted successfully. We will Contact you soon!