Skip to main content
The Shopify integration brings your store’s customers and products into InstantCampaign, and sends order and checkout events as they happen, so journeys can email customers at the right moment.
Shopify needs the Pro or Enterprise plan. Only Owners and Admins can connect, sync or disconnect a store. One store can be connected per workspace.

Connect your store

1

Open Shopify

Go to Settings → Developers → Integrations. Under E-commerce, click Connect on the Shopify card.
2

Enter your store URL

Under Store URL, enter your store’s myshopify.com domain, for example mystore.myshopify.com. Use this domain even if your shop has a custom domain.
3

Approve the app

Click Connect with Shopify, then approve access in Shopify. You’re brought back to the Shopify page with “Shopify store connected successfully!”.
4

Run the first sync

Click Sync Now to import your products and customers.
When you connect, InstantCampaign creates a list called Shopify Customers — your-store.myshopify.com and registers for your store’s order and checkout events.

What gets synced

Each sync (Sync Now) imports:
  • Products and variants, shown under Synced Products with search and paging.
  • Customers. Each customer with an email becomes or updates a contact, with first and last name, and is added to the Shopify Customers list. Customers without an email are skipped.
The Shopify page shows Products Synced, Sync Status (Idle, Syncing or Sync Error) and Last Synced. Only one sync can run at a time. Syncs don’t run on a schedule, so click Sync Now whenever you want to refresh.
Each customer’s email marketing consent in Shopify decides how they arrive:A sync never re-subscribes an existing contact or list membership.

Events and journeys

After you connect, Shopify tells InstantCampaign about orders and checkouts as they happen. Each event is recorded on the contact, matched by email. A contact is created if none exists yet: Active if the buyer opted in to email marketing in Shopify, Pending if their Shopify consent is still pending, otherwise Unsubscribed, so their orders and goals are still tracked but they aren’t mailed. An existing contact’s status is never changed by an event. Each event can also start a journey, for contacts who are Active. data.order includes the order’s name, number, currency, subtotal, tax, shipping, discount, total and the customer. To use one, create a journey with the API Event trigger and enter the event name exactly as shown, for example shopify_order_fulfilled. In the journey’s emails, use the data with Liquid, for example {{ data.order.total }}. See Automation triggers. The Shopify page’s Quick Start section lists typical journeys for each event: Abandoned Cart, Post-Purchase, Order Created, Order Fulfilled and Order Cancelled. Shopify Automations lists your Active Journeys that use Shopify events, with how many contacts each has enrolled.
For cart recovery, trigger on shopify_abandoned_cart: it only fires for customers who didn’t buy, so the first reminder can go out straight away. The Abandoned Cart Recovery journey template sends a reminder, then after a day checks for an order before it offers a discount. Use shopify_checkout_started if you want to react the moment a checkout begins.

Disconnect

Click Disconnect on the Shopify page and confirm. Syncing and events stop, and synced products are hidden. Contacts and events already synced stay in InstantCampaign. Uninstalling the app from the Shopify admin does the same: the Shopify page shows the store as not connected, and you can connect it again at any time.

Troubleshooting