Shopify Flow is an e-commerce automation platform that connects Shopify with third-party apps through automated workflows. By integrating Shopify Flow with Omnisend, you can trigger Automations in Omnisend or update Contact data based on Shopify events.
This guide shows you how to connect Shopify Flow to Omnisend and build your first automated workflow.
Before You Begin
Shopify plan limitations: Most Shopify Flow features are available on all plans, but some are plan-specific. See Shopify's plan details.
Omnisend plan: All Omnisend plan users can integrate with Shopify Flow.
Direct integrations: Some apps (Yotpo, LoyaltyLion) integrate directly with Omnisend. Use those integrations instead of routing through Shopify Flow for a simpler setup.
Benefits
Trigger Omnisend Automation Workflows based on Shopify events (order fulfillment, customer tags, etc.).
Sync Contact data from third-party apps to Omnisend.
Build advanced automations without custom code.
Use Shopify Flow's event filters and conditions to refine which Contacts enter your workflows.
Setup Process
Step 1. Install Shopify Flow
Find Shopify Flow in the Shopify App Store → Click Add app and follow the prompts to install it.
Once installed, open Shopify Flow in your Shopify admin by navigating to Apps → Shopify Flow.
You can build workflows from scratch or use Shopify's preset templates. See Shopify's workflow builder guide.
Step 2. Choose an Omnisend Action
Shopify Flow apps can trigger events or execute actions. See the full list of integrated apps.
Omnisend supports two actions:
Create or update the customer – Syncs Contact data (name, email, phone, tags) to Omnisend.
Track an event – Triggers an Automation in Omnisend via a Custom Event (does not update Contact data except email/phone).
When to use each:
Create/update customer: When you need to sync new Contact details (e.g., Shopify adds a "VIP" tag → update Contact in Omnisend).
Track an event: When you want to trigger an Automation Workflow (e.g., order ready for pickup → send pickup reminder).
To add an Omnisend action, first select a trigger in Shopify Flow (from Shopify or another integrated app). Then add an action and choose Omnisend.
For the integration to be available, the Omnisend app (or any third-party app you want to connect) must be installed in your Shopify admin.
Example: Track an Event When Order Is Ready for Pickup
In this example, we’ll trigger an automation workflow when the order fulfillment status changes to Ready for pickup. Since no customer data update is required, select the Track an event action.
1. In Shopify Flow, select a trigger (e.g., Order fulfillment status updated).
2. Add an action → choose Omnisend → Track an event.
3. Provide the following details:
Customer email address (required): For email delivery.
Customer phone number (optional): For SMS delivery.
Customer first name (optional): Add to message content or subject line.
Customer last name (optional): Add to message content or subject line.
Event ID: In Omnisend, go to Store Settings → API → Custom Events → Create Event. Create your event (e.g., Order Ready for Pickup), add any required custom properties (e.g.,
ready_for_pickup,ready_for_pickup_time), then copy the generated Event ID and paste it into Shopify Flow. Learn more about custom events.Event custom fields (optional): map Shopify data to the Omnisend custom event properties using JSON syntax:
{
"ready_for_pickup": "#{{fulfillment.displayStatus}}",
"ready_for_pickup_time": "#{{fulfillment.estimatedDeliveryAt}}"
}ready_for_pickupandready_for_pickup_timeare the properties created in Omnisend.fulfillment.displayStatusandfulfillment.estimatedDeliveryAtare Shopify template variables. Use Add template variable in Shopify Flow to view all available variables.
Important Notes:
You must provide either an email address or a phone number for the event to trigger.
Default customer properties, as well as the custom properties you created, should be mapped to the corresponding Shopify Flow variables.
4. Click Turn on workflow to enable the workflow in Shopify Flow.
Step 3. Build the Automation Workflow in Omnisend
In Omnisend, go to Automation → Create workflow → Custom from scratch.
Select your custom event (e.g., Order Ready for Pickup) as the trigger.
Add an email or SMS message. You can insert custom properties (e.g.,
{{ready_for_pickup_time}}) into the message content or subject line.
Important: This automation triggers for all Contacts, regardless of subscription status. To filter by subscription status, add a rule in Shopify Flow or use Automation Channel Settings in Omnisend.
Use Cases
Shopify Flow + Omnisend lets you:
Send a "ready for pickup" email when order status changes.
Tag high-value customers and send VIP offers.
Trigger a loyalty points reminder when LoyaltyLion awards points.
Send a review request after Shopify marks an order as fulfilled.
More Shopify Flow use cases:
Flag and cancel high-risk orders before payment capture.
Manage loyalty programs and promotions.
Tag orders based on payment method.
💡 See more examples in Shopify's Help Center and Shopify's blog.
FAQ
How do I test if the integration is working?
To confirm that the Shopify Flow and Omnisend integration is working properly, follow these steps:
Trigger the Shopify event manually. In your Shopify admin, perform the action that should activate the flow. For example, update an order’s fulfillment status to Ready for pickup.
Open the contact in Omnisend. Go to Audience → Contacts and find the contact whose order you updated.
Verify the custom event. Open the contact profile and check the activity timeline to confirm that the custom event (e.g., Order Ready for Pickup) appears.
If the event is visible in the contact’s profile, the integration is working correctly. If it does not appear, review your Shopify Flow trigger, Event ID, and custom field mapping to ensure everything is configured properly.
Why isn't my event triggering?
Make sure you've provided either an email address or phone number in the Shopify Flow action. Also, verify the Event ID matches your Omnisend Custom Event.
Didn't find the answer to your question? Reach out to our support team through the in-app chat or at [email protected] – our team is available 24/7.








