← Documentation

Shopify Setup

Issue wallet passes on paid orders, use pass barcodes as discount codes, and close the loyalty loop — online and at POS.

What the integration does

  • Auto-issue on paid orders — a customer completes checkout and receives a branded email with official wallet buttons. Smart issuance logic skips customers who already hold a pass: if the order used a Pass Studio discount code, the customer clearly has one.
  • Discount-code sync — pass barcodes double as Shopify discount codes, valid at online checkout and Shopify POS.
  • Closed-loop loyalty — orders that redeem a pass code accrue points or advance the customer toward their next reward, and the pass updates on their phone automatically.

1. Connect your store

  1. In Pass Studio, open Settings → Shopify and click Connect.
  2. Approve the app on Shopify — you're redirected back when the store is linked.
  3. Choose the default pass new customers should receive on their first paid order.

2. Auto-issue (orders webhook)

Auto-issue is driven by Shopify's orders/paid webhook. It is registered automatically when you connect your store — nothing to set up. Every delivery is signature-verified; deliveries with a bad signature are rejected.

Manual fallback: if Settings → Shopify shows the auto-issue setup panel (automatic registration didn't complete, or the store was connected before automatic setup existed), follow the panel's steps: copy the webhook URL, create a webhook for the Order payment event in Shopify admin (Settings → Notifications → Webhooks, JSON format), paste the webhook signing secret from Shopify's Webhooks page into the matching field in Pass Studio, then click Refresh.

3. Test it

  1. Place a test order in your store and mark it paid.
  2. The customer email on the order receives the wallet pass email within seconds.
  3. Check Members on the pass in Pass Studio — the holder appears with their name and email.

How issuance decides

For every paid order, Pass Studio checks the discount codes on the order:

  • A Pass Studio code was used → the customer already holds a pass. No new pass is issued; instead the order runs through the loyalty engine — points accrue or the reward progresses.
  • No Pass Studio code → first-time customer. A pass is issued and the branded wallet email goes out.

Issuance costs 1 credit per installed pass; order processing itself is free. Billing details →

Selling somewhere else too?

The same engine accepts orders from any platform via POST /orders/process — WooCommerce, a custom cart, in-person sales. See the Integration Guide.