A pass is one customer's copy of a template. There are three ways to create one, and which you use depends entirely on volume.
The three routes
By hand, in the dashboard. Right for a handful of passes, for testing, and for one-offs. Open Passes and choose New pass.
From an issuance form. You publish a branded link, the customer fills in a short form, and their pass is created for them. Right when you don't know in advance who wants a pass - sign-ups, claim links, QR codes on a poster. See Issuance forms.
Over the API. Right when passes should follow something happening in your own systems - a purchase, a booking, a signup. This is how most volume gets issued. See Creating passes over the API.
They all produce identical passes. You can mix them freely.
Creating one by hand
Choose New pass, pick a template, and you'll be asked for that template's fields.
Field values. Fill in what's specific to this customer. Anything you leave blank falls back to the template's default value, which is usually what you want - see Fields and regions.
Ext ID. Your own reference for this pass - a customer number, a booking reference, an order id. Optional but strongly worth setting, for two reasons: you can look the pass up later by your own reference instead of ours, and it's the key that stops duplicates when passes are created programmatically. See External IDs and idempotency.
Group tags. Labels for grouping passes - vip, london, 2026-cohort. They cost nothing now and are what make targeted notifications possible later. See Tags and bulk actions.
Expires at. Optional. After this moment the pass stops being available to install.
Relevant date. Optional, and Apple-only. A hint about when the pass matters, which iPhone uses to decide when to surface it.
Ext IDs must be unique within your account. If you enter one that already exists, PocketPass refuses rather than overwriting - because the alternative is silently replacing a different customer's pass, and live-pushing that change to their phone. If you hit this, you're either duplicating a pass that already exists or you meant to edit it.
What happens next
The pass is created immediately and gets:
- Its own install link and QR code, on the pass detail page.
- A barcode value, if the template has one.
- A status of issued - it exists but nobody's added it yet. See Pass statuses.
Nothing is sent automatically. Getting the pass to the customer is your move: send them the install link, show them the QR code, or point them at it however suits. See How customers add a pass.
Editing a pass afterwards
Open the pass and choose edit. Change field values, tags or expiry and save.
If the customer already has the pass installed, the change reaches their phone by itself. See Live pass updates.
Ext ID can't be changed after a pass is created. It's the key other systems use to find this pass, so letting it move would break exactly the integrations it exists to support. If you need a different one, create a new pass.
Issuing at volume
Once you're past a few dozen passes, doing it by hand stops making sense. Two options:
An issuance form if the customer should initiate - they know they want a pass, and you'd rather not collect their details yourself. See Issuance forms.
The API if your own system already knows who should get a pass. This is the common case for anything driven by a purchase, booking or account creation. See Creating passes over the API.
Whichever route you pick, set an Ext ID on every pass. It's the difference between being able to say "update the pass for customer 10248" and having to search for it.