Introduction

Using Parent and Child flows in Power Automate is a best-practice approach for managing complex automation. Instead of building one large, hard-to-maintain flow, you break tasks into smaller, reusable components (Child Flows) that are triggered by a main workflow (Parent Flow).

This guide walks through a practical scenario—Automated Invoice Approval—to demonstrate how to set up flows, pass data, and return results effectively.

Why Use Parent and Child Flows?

Prerequisites

Before you begin:

🛠️ Practical Example: Invoice Approval Workflow

We’ll create a system where:

Phase 1: Create the Child Flow (Reusable Approval Logic)

2CF1

1️⃣ Create a Solution

2️⃣ Create the Child Flow

3️⃣ Add Inputs (Data from Parent)

Click “Add an input” in the trigger and define:

These inputs allow the parent flow to pass invoice data.

4️⃣ Add Approval Action

Add: Start and wait for an approval

Use dynamic content from the trigger:

Example Title:

Approval Request - {VendorName}

5️⃣ Add Response Action

Add: Respond to a PowerApp or flow

✅ Save and exit.

Your reusable approval component is now complete.

Phase 2: Create the Parent Flow (Trigger & Orchestration)

34

1️⃣ Create the Parent Flow

2️⃣ Add “Run a Child Flow” Action

3️⃣ Map the Data

Map SharePoint fields to child inputs:

SharePoint ColumnChild Input
InvoiceIDInvoiceID
InvoiceAmountInvoiceAmount
VendorNameVendorName

4️⃣ Handle the Response

After Run a Child Flow, add a Condition:

✅ Save and test your workflow.

⚠️ Crucial Tips & Best Practices

🔧 Fix “Run Only User” Errors

If the parent flow fails to call the child:

  1. Open the Child Flow

  2. Click Run-only users

    5
  3. Change connections to:

    6
    • A specific service account

    • Or Use this connection

Avoid using “Provided by run-only user” unless required.

Conclusion