Shopify events
Shopify reports what happens in your store as events: an order was created, a product was updated, a refund was issued. Workflow Suite offers every event Shopify lets an app subscribe to, more than 200 of them, as a trigger.
The categories
| Category | Examples |
|---|---|
| Products | Product created, Product updated, Product deleted, Product published to a sales channel |
| Collections | Collection created, Collection updated, Collection deleted |
| Inventory | Inventory quantity changed, Inventory item updated, Location created |
| Inventory transfers | Inventory shipment created, Inventory shipment items received, Inventory transfer completed |
| Orders | Order created, Order paid, Order fulfilled, Order cancelled, Order edited, Order risk assessed |
| Payments | Order transaction created, Payment dispute created, Payment terms created, Refund created |
| Draft orders | Draft order created, Draft order updated, Draft order deleted |
| Carts and checkouts | Cart created, Checkout started, Checkout updated |
| Fulfillment | Fulfillment created, Shipment tracking event created, Fulfillment order placed on hold |
| Returns | Return requested, Return approved, Return closed |
| Customers | Customer created, Customer tags added, Customer joined a segment, Email marketing consent changed, Customer purchasing summary changed |
| Companies | Company created, Company location created, Company contact created |
| Discounts | Discount created, Discount updated, Discount code added |
| Subscriptions | Subscription billing attempt failed, Subscription billing attempt succeeded |
| Custom data | Metafield definition created, updated, deleted |
| Sales channels | Product feed created, Collection listing added |
| Markets | Market created, Market updated, Store language created |
| Shipping and taxes | Delivery profile updated, Tax service created |
| Store | Theme published, Domain created, Bulk operation finished |
The trigger picker is the full, current list. Search it by what happened, for example refund or tracking.
What the event looks like
The event is what Shopify sends for that topic. Your steps read it under event.payload:
Order {{ event.payload.name }} for {{ event.payload.total_price }} {{ event.payload.currency }}
A few things that help in daily use:
event.payload.admin_graphql_api_idis the resource's id in the form Shopify actions expect. Ready-made actions accept this id or the plain number.- Lists such as
event.payload.line_itemscan be repeated over with Repeat for each. - The variable picker next to every field lists the fields of the trigger's sample event, so you rarely type a path by hand.
- If you need data the event does not carry, for example a product's title on an inventory event, add a Shopify query step first. See Every Shopify mutation and query.
Turning the workflow on
When you turn a workflow on, the app subscribes your store to the event. When no workflow uses an event any more, the subscription is removed. You do not manage subscriptions yourself.
A subscription only works for store data you granted on the Permissions page. If the permission is missing, the editor tells you before you turn the workflow on.
Updated events fire often
Product updated or Order updated start for every change, including changes your own workflow makes. Two things keep that under control:
- Prefer a change trigger when you care about one field. Product variant price changed starts only when a price changed, and tells you the old and the new price. See Change triggers with before and after values.
- Loop protection recognises the echo of a workflow's own change. See Loop protection.
Shopify may deliver the same event more than once. The app recognises repeated deliveries and starts one run.

