The 6 Types of Apple Wallet Pass: Which One Is Right for Your Business?

Explainer7 min read8 March 2026

When you create an Apple Wallet pass, the first decision you make is which pass type to use. Apple defines six types in the PassKit specification — boardingPass, coupon, eventTicket, generic, storeCard, and the older loyalty type — and the choice matters. Each type has a distinct visual layout, different field positions, and conventions that affect how Apple Wallet renders the pass on the user's lock screen and in the app.

Getting the pass type right is not just a design consideration. It signals to the user what the pass is for before they have read a single word on it. A boarding pass and an event ticket are immediately recognisable by their shape and layout; a coupon reads differently from a membership card. Choosing the wrong type produces a pass that feels unfamiliar and reduces trust.

This guide explains each pass type, its typical use cases, its visual structure, and how to decide which one fits your business.

How Pass Types Work in the PassKit Spec

Apple's PassKit format stores the pass type in the top-level pass.json file as a key corresponding to the type name. The value is an object containing the field definitions for that pass style. The type determines which field slots are available (primary, secondary, auxiliary, header) and where those fields are rendered on the front of the pass.

All pass types share the same set of common properties — barcode, background colour, logo, strip image — but the field layout grid changes per type. This is why swapping pass types is not a simple find-and-replace; the field positions that look correct on a generic pass may render differently on an eventTicket.

boardingPass

The boardingPass type is designed for transportation. It is the most information-dense of the six types, with a horizontal layout that emphasises origin and destination in large primary fields on the left and right, with a transit type icon displayed between them. The transit type can be set to air, train, bus, boat, or generic.

Visual structure: Two large primary fields side by side (typically departure and arrival cities or codes), with secondary and auxiliary fields below for gate, seat, class, and departure time. The barcode sits at the bottom of the pass.

Use cases: Airline boarding passes are the canonical example. But the type is also well suited to rail tickets, ferry bookings, coach travel, shuttle services and any pass where the user is moving from one named point to another. The origin/destination layout makes the pass immediately scannable at a glance.

When to choose it: If your pass represents a journey with a clear departure and arrival point, boardingPass is the correct type. Do not use it for static credentials or discounts — the layout is designed around movement, and using it for other purposes produces a confusing visual hierarchy.

coupon

The coupon type is for discounts, offers, and promotional passes. It uses a strip image across the top of the pass — a wide banner image — which makes it visually distinctive from membership or ticket passes. The primary field sits below the strip, with secondary and auxiliary fields beneath it.

Visual structure: A full-width strip image (560 × 168 points) dominates the top half of the pass. The primary field is typically used for the offer headline. Secondary fields show supporting information such as expiry date, minimum spend, or terms.

Use cases: Discount vouchers, promotional offers, free item redemption passes, trial access passes, referral rewards. Retailers, restaurants, subscription businesses and e-commerce brands all use coupon passes for single-use or limited-time offers.

When to choose it: Use coupon whenever the core value proposition is a discount or promotional offer that has an expiry. The strip image gives you strong visual branding space; use it to reinforce the offer rather than just placing a logo. If your pass represents ongoing membership value rather than a one-time promotion, consider storeCard instead.

eventTicket

The eventTicket type is designed for admission to a specific event. It supports a background image that fills the entire pass front, making it the most visually immersive of the six types. The primary field is used for the event name, with secondary fields for date, time, seat, or row.

Visual structure: A full-bleed background image (320 × 480 points) covers the pass front. Field text is rendered on top of the image, which means contrast and legibility depend on image choice. The primary field sits prominently near the middle of the pass. The barcode appears at the bottom.

Use cases: Concert tickets, sports event tickets, theatre and cinema admissions, festival wristband replacements, conference day passes, museum entry passes. Any event where visual impact at the moment of purchase and presentation matters.

When to choose it: Choose eventTicket when the pass represents admission to a time-bound event with a specific date, time and location. The background image makes this type unsuitable for passes that update frequently — image changes require a pass update push. If your "event" is actually an ongoing access credential (a gym pass, an office access card), use generic instead.

generic

The generic type is the most flexible. It has no strong visual convention attached to it — no strip image, no background image requirement, no transportation-specific layout. It uses a thumbnail image in the top right corner and a straightforward primary/secondary/auxiliary field grid.

Visual structure: A logo at the top left, a square thumbnail image at the top right, a large primary field in the centre, and secondary/auxiliary fields below. The layout is clean and readable. The barcode appears at the bottom.

Use cases: Membership cards, ID cards, library cards, gift cards, access credentials, loyalty passes that are not retail-specific, employee badges, student ID passes, digital business cards. The generic type works wherever no other type fits naturally.

When to choose it: Use generic as your default when the pass does not represent a journey, an event, a discount, or a retail loyalty programme. It is also the right choice when you want maximum control over field layout without the visual constraints imposed by other types. Most Issuepass customers building membership or access passes use generic.

storeCard

The storeCard type is designed for retail loyalty and prepaid card programmes. It is visually similar to coupon — it uses the strip image at the top — but the convention is that it represents an ongoing relationship with a store or brand rather than a one-time offer.

Visual structure: A full-width strip image across the top, with the primary field used for the loyalty balance, points total, or card identifier. Secondary fields show supporting information such as member name, tier, or next reward threshold.

Use cases: Retail loyalty cards, coffee shop stamp cards, points-based rewards programmes, prepaid store credit cards. Any pass that a customer would carry in their physical wallet to identify themselves as a loyalty member at point of sale.

When to choose it: Choose storeCard for passes that represent accumulated value — points, stamps, credit — within a retail or hospitality context. The key distinction from coupon is persistence: a coupon is redeemed and becomes invalid; a store card lives in the wallet indefinitely and updates as the balance changes. If you are building a stamp card or points programme, storeCard is the correct type.

loyalty (deprecated)

The loyalty pass type was an earlier Apple Wallet type that has been effectively deprecated in favour of storeCard. The two types are structurally similar, but Apple's current documentation and tooling treats storeCard as the canonical loyalty pass type.

If you encounter loyalty in legacy pass files or older PassKit documentation, treat it as functionally equivalent to storeCard. For new pass creation, use storeCard.

Visual Layout Differences at a Glance

The practical differences between types come down to three layout elements: the image treatment, the primary field position, and the field grid structure.

Strip image passes (coupon, storeCard) use a wide banner image that dominates the top of the pass. This gives you a large branding surface but limits the space available for text fields.

Background image passes (eventTicket) fill the entire pass front with an image. Text legibility is your primary concern; the visual impact is high but the information density is lower.

Thumbnail image passes (generic) place a small square image in the top right corner. This is the most text-friendly layout — more space is available for structured field data.

Transportation passes (boardingPass) use no standard image in the pass body, instead relying on the horizontal origin/destination layout. The logo appears at the top as usual.

Event passes (eventTicket) render the primary field in a more central, prominent position compared to other types, which places the primary field at the top of the text area.

Lock Screen and Relevant Date Behaviour

Apple Wallet surfaces passes on the lock screen when they become relevant — near a location, or at a relevant time. Pass type affects this behaviour in subtle ways. boardingPass and eventTicket passes surface more aggressively around the departure time or event start time. coupon and storeCard passes surface when the user is near the relevant merchant location.

Setting a relevantDate in your pass.json ensures the pass surfaces at the right moment. For eventTicket passes, this should be the event start time. For boardingPass, it should be the departure time. For coupon and storeCard, location-based relevance via locations array entries is often more useful than a time-based relevant date.

How to Choose the Right Pass Type

Work through these questions in order:

Does the pass represent a journey with a departure and arrival point? If yes, use boardingPass.

Does the pass grant admission to a specific event on a specific date? If yes, use eventTicket.

Does the pass represent accumulated loyalty value at a retail or hospitality business? If yes, use storeCard.

Does the pass represent a discount or promotional offer with an expiry? If yes, use coupon.

Does the pass represent a credential, membership, or identity card? If yes, use generic.

If none of the above apply cleanly, default to generic. It is the most flexible type and produces a professional, readable pass for almost any use case that the other types do not cover.

How Issuepass Handles Pass Types

When you create a template in Issuepass, you select the pass type as part of the template setup. The editor then presents the correct field slots and image upload areas for that type. You can preview exactly how the pass will render on a device before issuing a single pass.

All six pass types are supported. Templates are reusable — you create the layout once, then issue passes to any number of recipients with their individual data filled in. Pass updates, push notifications and barcode management all work identically across pass types.

If you are unsure which pass type to use for your use case, start a free account and experiment with the template builder. You can create templates for multiple pass types side by side and see the difference before committing to a design.

Start issuing wallet passes today

Try Issuepass free for 14 days — no credit card required.