Skip to main content
Documentation menu

Flow trigger reference

Orderkraft ships seven Shopify Flow triggers. Five follow a single manufacturing order through its life. Two wait until a whole fulfillment order or sales order is done being produced. All of them only fire for made-to-order production, and only when a live workflow uses them. See Automate with Shopify Flow for how that works.

Manufacturing order triggers

These five share the same payload:

Field Type What it holds
Shopify order Order The customer’s order, so you can use every Flow order action and condition on it
Fulfillment order ID Number The Shopify fulfillment order the item belongs to
Sales line ID Number The Shopify line item being produced
Product variant ID Number The Shopify variant being produced
Manufacturing order ID Text Orderkraft’s internal ID for the manufacturing order
Manufacturing order number Text The human-readable number, like MO-123
Status Text The status at the moment the trigger fired

One manufacturing order covers one line item. An order with three made-to-order line items produces three manufacturing orders, and each fires its own trigger. Worth knowing before you wire any of these up to customer emails.

Manufacturing order created

Fires as the order comes in, when Orderkraft creates a manufacturing order for a made-to-order line item. Status is usually draft at that point. Good for tagging the order or telling production something new has landed.

Manufacturing order started

Fires when the manufacturing order moves to in_progress. Merchants mostly use this one to tell the customer their item is being made, which is the point where the delivery promise starts feeling real to them.

Manufacturing order on hold

Fires on a move to on_hold. You set that status when production can’t continue: a material didn’t arrive, a spec is unclear, the customer still has to confirm a fabric.

This is the trigger worth wiring to Slack. On hold means someone has to go chase something, and nobody sees it if it only lives in Orderkraft.

Manufacturing order cancelled

Fires on a move to cancelled. Useful for releasing materials you’d reserved, or for letting support know the item isn’t coming before the customer asks.

Manufacturing order completed

Fires when a manufacturing order is marked completed, and also when one is cancelled. Cancelling means the order is done as far as production is concerned, so it counts as complete here in the same way it does for the two triggers further down. Read the Status field if your workflow needs to tell the two apart, because a cancellation fires this trigger and manufacturing order cancelled both.

Use it to push the item on toward fulfillment. If what you want is a “your order is ready” email, use the sales order trigger below. On a three-item order this one fires three times, and the customer gets three emails.

Fulfillment order manufacturing completed

Fires once every manufacturing order on a Shopify fulfillment order is finished, where finished means completed or cancelled. On a single-item fulfillment order that’s the moment that item is done. On a bigger one it waits for the last outstanding item.

Field Type What it holds
Shopify order Order The customer’s order
Fulfillment order ID Number The fulfillment order whose production is finished

Hang your fulfillment automation off this one. It pairs especially well with split shipments, where made-to-order items sit in their own fulfillment order and can go out as soon as they’re built.

Sales order manufacturing completed

Fires once every manufacturing order on the entire sales order is finished, again counting cancelled work as finished. One order, one event, however many made-to-order items were on it. This is the one for the “your order is ready” message.

Field Type What it holds
Shopify order Order The customer’s order

The difference from the fulfillment order trigger only shows up when an order is split across locations or shipments. One order can have several fulfillment orders, so that trigger can fire more than once where this one fires exactly once.