Chain Multiple Flows for Extended Processes

As your automation grows, you’ll often want to break one long flow into smaller, reusable flows. The Enter Another Flow action lets you move a contact from the current flow into a new one—cleanly and intentionally—so you can keep logic modular and easier to maintain.

Break long journeys into reusable flows (clean handoffs)

If you just need the essentials, follow this quick path:

  1. Confirm you actually need to move into another flow (modularity vs one long flow)
  2. Build or select the child flow (the next “module”)
  3. Collect and save the data you’ll reuse (named results)
  4. Add Enter Another Flow at the exact handoff point
  5. Reference parent values in the child flow using @parent
  6. Test the handoff end-to-end in the Simulator

This approach keeps complex automations readable, reusable, and easier to troubleshoot over time.

Step-by-Step Process

1
Confirm you actually need to move into another flow

Use Enter Another Flow when you want to:

  • Split a large process into multiple flows (registration → onboarding → follow-up)
  • Reuse the same “child” flow from different places (shared verification flow, shared FAQ flow)
  • Keep complex logic readable and easier to debug
⚠️
Warning: When a contact reaches Enter Another Flow, they exit the current flow and immediately start the next one.
💡
Tip: Name your flows like building blocks (example: “Create Patient Record”, “Collect Consent”, “Send Follow-up”) so you can reuse them confidently.

2
Build (or select) the child flow you want to start
  1. Go to Flows.
  2. Create the destination flow, or choose an existing one.
  3. Ensure the child flow contains the next steps your contact should receive.

[CAPTURE: Flows list showing the destination flow that will be used as the “child flow”.]

3
Collect and save any data you want to pass to the child flow

In the parent flow, collect information using nodes like:

  • Wait for Response (save results like name, phone, case_id, etc.)

Make sure each captured value is saved as a named result (example: @results.name, @results.phone).

[CAPTURE: Parent flow showing a Wait for Response saving “name” and “phone” as results.]

⚙️
Technical Detail: Flow results are typically limited in length (some results store up to ~640 characters). Keep results short and structured when possible.

4
Add “Enter Another Flow” at the exact handoff point
  1. In your parent flow, create a new node where the handoff should happen.
  2. Choose Enter Another Flow (or “Start another Flow”, depending on UI label).
  3. Select the destination flow (the child flow).
  4. Save your changes.

[CAPTURE: Node editor showing the Enter Another Flow action with the child flow selected.]

⚠️
Warning: Once the contact hits this node, they won’t continue the parent flow unless your design brings them back via another mechanism (e.g., another trigger or a separate path).

5
Reference parent variables inside the child flow

In the child flow, use the @parent prefix to reuse values collected in the parent flow session.

Examples:

  • Parent result @results.name → Child reference @parent.results.name
  • Parent result @results.phone → Child reference @parent.results.phone
  • Parent result @results.case_id → Child reference @parent.results.case_id

[CAPTURE: Child flow Send Message node using @parent.results.name and @parent.results.phone.]

⚙️
Technical Detail: @parent variables are available when a contact starts the child flow through Enter Another Flow or Start Somebody Else in a Flow.

6
Test the handoff end-to-end
  1. Open the Simulator in the parent flow.
  2. Run through the steps until the contact reaches Enter Another Flow.
  3. Confirm the contact starts the child flow and that @parent.* variables render correctly.

[CAPTURE: Simulator showing the contact leaving the parent flow and starting the child flow.]

💡
Tip: Add a temporary debug message in the child flow (example: “Debug: Name=@parent.results.name”) during testing, then remove it before publishing.

Common Issues & Quick Fixes

The contact doesn’t continue after the handoff

Problem: You expected the contact to keep going in the parent flow after Enter Another Flow.

Fix:

  • This is expected behavior: Enter Another Flow ends the parent flow run.
  • Make sure the child flow actually contains a next message/action.
  • Confirm the child flow is saved/published and accessible in the workspace.
@parent variables show blank in the child flow

Problem: The child flow starts, but values like name/phone are empty.

Fix:

  • Confirm the data was collected before the Enter Another Flow node.
  • Ensure the result names are correct (example: @results.name in parent → @parent.results.name in child).
  • Confirm the child flow is started via Enter Another Flow or Start Somebody Else in a Flow (a keyword/manual start won’t provide @parent context).
I expected the child flow to message someone else (not the active contact)

Problem: You want to notify a third party or start a different contact, but the child flow messages the current contact.

Fix:

  • If the goal is to message a third party, use Send Message to Third Party.
  • If the goal is to start a different contact or group, use Start Somebody Else in a Flow.