Skip to main content

Pass Statuses in PassKit

Understanding the Pass Lifecycle

Paul Tomes avatar
Written by Paul Tomes
Updated over a week ago

Introduction

Creating and managing digital passes for your customers should be simple and transparent. At PassKit, we empower you to deliver seamless digital experiences through Apple and Google Wallet, and understanding the journey of your passes is key to maximizing their effectiveness.

This article provides a detailed breakdown of the four core statuses that define a pass's lifecycle within the PassKit platform. Knowing these statuses will help you track engagement, manage campaigns, and ensure your passes deliver the right message at the right time.


Pass Issued

What it means

A pass is in the PASS_ISSUED status when it has been successfully generated and is ready for distribution to your customers. Think of it as being "minted" and awaiting its owner.

Detailed Description:

  • Ready for Distribution: Your PassKit-generated pass (e.g., a loyalty card, event ticket, coupon) has been created according to your template, populated with unique customer data (if applicable), and digitally signed. It is now a complete .pkpass file, stored securely on our servers, awaiting a user's action to be added to their Apple Wallet.

  • Pass URL Exists: Crucially, upon issuance, a unique and shareable Pass URL is generated for this specific pass. This Pass URL is the primary method for customers to access and add the pass to their Wallet.

  • Not Yet on Device: At this stage, the pass has not yet been downloaded or added to a customer's Apple Wallet app. It's a valid pass, but it hasn't started its journey onto a user's personal device yet.

  • Valid and Active: From your perspective, the pass content is live, accurate, and ready for use once a customer adds it. Its underlying value (e.g., the discount it offers, the event it grants access to) is active.

  • Common Use Cases: This status applies to passes that have just been created and are awaiting:

    • Being sent via email or SMS.

    • Being offered through a link on your website or mobile app.

    • Being dynamically generated for a customer at a point of sale.

  • What you can do: Monitor PASS_ISSUED counts to gauge the number of passes you've prepared for your campaigns.


Pass Installed

What it means

A pass enters the PASS_INSTALLED status when a customer has successfully added it to their Wallet app. This is when your pass becomes an active, personalized tool for your customer.

Detailed Description

  • Customer Engagement: The customer has actively previewed the pass and tapped the "Add" button, indicating their desire to keep it.

  • On Device & Connected: The pass is now stored locally on the customer's device. Crucially, their device has registered with your PassKit-powered web service for updates. This establishes a direct, secure connection between the customer's Wallet app and your data.

  • Real-time Updates Enabled: This is the power of Wallet passes! Because the device is registered, you can now push real-time updates to the pass through the PassKit platform. Whether it's a new loyalty points balance, a gate change for a flight, or an updated event time, the pass on their device can be updated instantly.

  • Location & Time Relevance (Optional): If configured in your pass template, the pass can now leverage location and time data to trigger notifications for your customer (e.g., "Welcome to our store, use your coupon!").

  • Measurable Engagement: The PASS_INSTALLED status is a key metric for understanding customer adoption of your digital passes.

  • What you can do: Track installation rates, send relevant updates, and leverage location-based features to enhance customer experience.

Important Note on Updates

While a pass is PASS_INSTALLED, updates are pushed directly to the device (assuming "Automatic Updates" is enabled by the user). However, if you send an update to PassKit for a pass that is currently not installed on a customer's device (e.g., it's still in PASS_ISSUED status, or it was UNINSTALLED), the underlying Pass Record in your PassKit account will be updated. The customer will not see this change in their Wallet app (as the pass isn't there). However, if they later visit the original Pass URL to add or re-add the pass, they will always receive the most recent, updated version from your PassKit record.


Pass Uninstalled

What it means

A pass is in the PASS_UNINSTALLED status when a customer has removed it from their Wallet app or when they turn off Automatic Updates in Apple Wallet. This signifies that the pass is no longer present on their device or no longer .

Detailed Description

  • Customer Action: This status is triggered by a customer explicitly choosing to "Remove Pass" from the back of the pass in their Wallet, or if a customer switches OFF the Automatic Updates toggle found on the back of an Apple Wallet Pass.

  • Off Device & Deregistered: Once uninstalled (either by explicit removal or by turning off "Automatic Updates"), the latest pass data is no longer actively managed on the customer's device. More importantly, their device has deregistered itself from your PassKit web service for that specific pass. This means our platform will no longer send push notifications for updates to that particular pass on that device.

  • Why it's Important: Knowing a pass is uninstalled helps you maintain accurate customer records and avoid sending irrelevant updates. It indicates a customer's decision to no longer keep the pass active in their Wallet.

  • What you can do: Use this data to understand customer churn, potentially segmenting users who uninstall passes for future re-engagement campaigns (e.g., if it's a loyalty card, you might want to understand why they removed it).

Impact of Automatic Updates Toggle

If a customer switches off the "Automatic Updates" toggle found on the back of their Wallet pass, this action will also trigger an UNINSTALLED event in our system. Conversely, if they then switch "Automatic Updates" back ON, it will trigger an INSTALLED event. This means your pass status can cycle through: PASS_INSTALLED β†’ (Automatic Updates Off) PASS_UNINSTALLED β†’ (Automatic Updates On) PASS_INSTALLED.


Pass Invalidated

What it means

A pass reaches the PASS_INVALIDATED status when its underlying value or purpose has expired, been redeemed, or otherwise rendered obsolete from your business's perspective.

Detailed Description

  • Business Logic Driven: This status is determined by your business rules and is often triggered by actions such as:

    • Redemption: A coupon has been scanned and used.

    • Expiration: An event ticket's date has passed.

    • Cancellation: A flight or booking associated with the pass has been cancelled.

    • Replacement: A new version of a loyalty card has been issued, rendering the old one invalid.

  • Impact on Installed Passes:

    • If an installed pass is invalidated, PassKit will send an update to the customer's device. The Wallet app will typically move the pass to the "Expired Passes" section (on supported iOS versions) and may display a visual cue (e.g., Barcode Greyed Out) to indicate its invalid status.

    • The pass will no longer be usable for its original purpose (e.g., the barcode will not scan as valid).

  • Ensuring Accuracy: Invalidating passes is crucial for maintaining data integrity and providing customers with accurate information. It prevents the use of expired or redeemed offers.

  • What you can do: Set up automated rules in PassKit to invalidate passes upon redemption or expiration. This ensures your customers always see the most current and relevant passes in their Wallet.


Conclusion

By understanding these four core pass statuses, you'll gain greater insight into your customers' interactions with your digital passes, allowing you to optimize your campaigns and deliver a superior mobile experience. If you have any further questions about pass statuses or their management, please don't hesitate to contact our support team.

Did this answer your question?