How can I pass data between two flows on the same canvas in n8n?

In my workflow (attached image), I have two separate flows on the same canvas:

  • The first flow processes a refund request from Gmail, uses AI (Google Gemini Chat and Structured Output Parser), and sends the result to Slack.
  • The second flow is triggered later by a Webhook and continues the process based on manager actions.

I need to pass data from the first flow to the second flow inside the same canvas—for example, the AI decision, reason, and email draft—so the second flow can continue using this information without repeating the same processing.

:backhand_index_pointing_right: What’s the best way to transfer or share data between two flows on the same canvas in n8n?

Thank you!

The best way of passing information between stuff within the canvas is a direct link. In your situation thought, you need to wait for something outside to happpen before the second workflow starts, right? There is a wait node with an option to wait for a resume webhook.

See if this would help you -

This way all the context is preserved and process can just “continue”, but it does require the external system to call a resume url - “$execution.resumeUrl“.

1 Like

have you tried a merge node ?