Shopify Flow triggers

Automate your store when a ticket is purchased or scanned — tag orders, send follow-up emails, or call an API — using Event Ticketing's Shopify Flow triggers.

Jeff Blake
Written by Jeff Blake Updated May 29, 2026

Event Ticketing adds triggers to Shopify Flow so you can automate your store around ticket activity — when a ticket is purchased, and when a ticket or customer is checked in. A trigger starts a Flow workflow; you add the conditions and actions (tag an order, send an email, call an API) in Flow itself.

Requirements: Professional or Plus+ plan · the Shopify Flow app installed on your store.

Triggers

Event Ticketing provides three triggers:

Trigger Fires when Passes
Ticket purchased A ticket is issued after a completed purchase The order
Ticket checked in A ticket is scanned or checked in The order
Customer checked in A ticket is scanned or checked in The customer

Ticket purchased fires once for each ticket issued — an order of three tickets fires it three times. Ticket checked in and Customer checked in both fire on each scan, including re-scans of the same ticket; they differ only in whether the workflow receives the order or the customer.

Ticket purchased

Fires once per ticket when an order’s tickets are issued. The workflow receives the order, so you can reach the buyer through order.customer in Flow. Use it for post-purchase automations such as tagging the order or starting a welcome sequence.

Fields available on the trigger:

Field Description
Barcode Barcode number of the purchased ticket.
Attendee Name of the attendee on the ticket.
Attendee Email The email address on the ticket (falls back to the contact email).
Ticket Type The name of the ticket type on the ticket.
Event Name The name of the event the ticket is for.
Event Date ISO 8601 start datetime of the event.
Location The location where the event takes place (blank if no location is set).
Source Where the ticket order came from, either web or pos.

Ticket checked in

Fires when a ticket is scanned or checked in. The workflow receives the order. Use it for post-attendance automations — a review request, a follow-up email, or an API call at scan time.

Fields available on the trigger:

Field Description
Barcode Barcode number of the checked in ticket.
Attendee Name of the attendee on the ticket.
Attendee Email The email address on the ticket (falls back to the contact email).
Ticket Type The name of the ticket type on the ticket.
Event Name The name of the event the ticket is for.
Event Date ISO 8601 start datetime of the event.
Location The location where the event takes place (blank if no location is set).
Source Where the ticket order came from, either web or pos.
Use Count The number of times the attendee has been scanned.
Order Use Count The total number of times all tickets have been scanned within the order.
First Check In True if this is the attendee’s first scan, false on a re-scan.

Customer checked in

Fires on the same scan event as Ticket checked in, but the workflow receives the customer instead of the order. Use it when your automation acts on the customer record — adding a tag, updating customer metafields, or feeding a customer-keyed downstream app.

It carries the same fields as Ticket checked in (Barcode, Attendee, Attendee Email, Ticket Type, Event Name, Event Date, Location, Source, Use Count, Order Use Count, First Check In).

Set up a workflow

  1. Install the Shopify Flow app on your store.

  2. In Flow, create a workflow and select a trigger.

  3. Under the app triggers, choose Event Ticketing, then pick Ticket purchased, Ticket checked in, or Customer checked in.

  4. Add conditions if you want to narrow when the workflow runs — for example, only continue when Source is pos.

  5. Add the actions to run — a Shopify action (tag the order, send a notification), or an action from another installed app such as Klaviyo.

  6. Turn the workflow on.

Once on, the workflow runs every time its trigger fires.

FAQ

Why does my workflow fire multiple times for one order?

The trigger fires per ticket, not per order. Ticket purchased fires once for each ticket issued in the order, and the check-in triggers fire once for each ticket scanned. An order of three tickets fires the purchase trigger three times, and scanning all three fires each check-in trigger three times. Use the Order Use Count field on a check-in trigger to tell where you are within an order.

Will the check-in trigger fire again if I re-scan the same ticket?

Yes. Ticket checked in and Customer checked in fire on every scan, including re-scans. The First Check In field is true only on the attendee’s first scan — add a condition on it if you want the workflow to run only the first time.

What’s the difference between Ticket checked in and Customer checked in?

They fire on the same scan. Ticket checked in hands the workflow the order; Customer checked in hands it the customer. Choose the one whose object your actions need. If your actions tag or update the customer, use Customer checked in; if they act on the order, use Ticket checked in.

Can I send a follow-up email after someone checks in?

Yes. Use the Ticket checked in trigger, add a Delay action, then a Send-email action (or a Klaviyo action). This is the way to send review requests or post-attendance content.

Can I trigger an external API call when a ticket is scanned?

Yes. Use Ticket checked in and add Flow’s HTTP request action to call your endpoint at scan time. Scanning must happen through the Guest Manager scanner app or Shopify POS for the trigger to fire — a generic QR reader does not check the ticket in.

Is there an “order created” trigger from Event Ticketing?

No. Event Ticketing provides the three triggers above. To run a workflow on order creation, use Shopify’s own Order created trigger and add a condition on the line items — that trigger is built into Flow, not part of Event Ticketing.

Can I read event metafields in a Flow condition?

No. The event metafield on the product is not available inside Flow conditions or actions. Read it through your theme or the API instead — see Product metafields.