Skip to main content
All CollectionsAccept
Accepting Passes for In-Person Validation
Accepting Passes for In-Person Validation

How to accept Apple and Google Wallet Passes at your POS

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

Accepting Passes at a Point of Sale is one of the most common use cases for Wallet Passes.

This article will guide you through the process of accepting Apple Wallet and Google Wallet passes at your Point of Sale (POS). While we refer to "Point of Sale" in this guide, the same principles apply to any system where a physical transaction or interaction occurs—such as ticket check-in applications, gym entry systems, library check-ins, or any scenario where a pass is presented for validation.

Whether you're working with barcode passes or NFC-enabled passes, this guide will help you understand how digital passes function and how they seamlessly integrate with your system. By the end, you'll be equipped to provide a smooth and efficient experience for your customers or users.


What is a Wallet Pass?

An wallet pass is a digital representation of a physical card, ticket, or coupon. It can be used for:

  • Membership cards (e.g., gym memberships, library cards)

  • Loyalty cards (e.g., coffee shop punch cards, retail loyalty programs)

  • Coupons (e.g., discounts, special offers)

  • Event tickets (e.g., concerts, movies, sports events)

At its core, a digital pass contains a unique identifier that links the passholder to your system. This identifier is what your POS system uses to recognize the customer and process the transaction.


How Passes Work at the POS

When a customer presents a digital wallet pass at your POS, the process typically involves the following steps:

1. Scanning or Tapping the Pass

  • Barcode Passes: If the pass contains a barcode, your POS system can scan it using a barcode scanner.

  • NFC Passes: If the pass is NFC-enabled, the customer can tap their phone on an NFC reader to share the pass data.

2. Extracting the Unique Identifier

  • The pass contains a unique identifier (e.g., a membership number, loyalty ID, or coupon code). This identifier is shared with your POS system when the pass is scanned or tapped.

  • Important: The pass itself does not perform any actions (e.g., applying discounts or redeeming points). It simply shares the identifier with your POS system.

3. Processing the Identifier

  • Your POS system must be configured to recognize the identifier and take the appropriate action. For example:

    • Look up the customer in your CRM or loyalty system.

    • Apply a discount or redeem a coupon.

    • Validate an event ticket and grant entry.

  • The logic for what happens next is determined by your POS system, not the pass itself.

4. Updating the Pass (Optional)

  • If you want the pass to reflect changes (e.g., updated loyalty points, redeemed coupon), your POS system must communicate with PassKit to update the pass.

  • This can be done in two ways:

    1. Direct Integration: Your POS system connects directly to PassKit's API to send update requests.

    2. Indirect Integration: Your POS system communicates with your CRM or backend system, which then connects to PassKit to update the pass.


Key Considerations for Your POS System

To ensure a smooth experience for both your staff and customers, keep the following in mind:

1. Barcode and NFC Compatibility

  • Ensure your POS hardware (barcode scanners, NFC readers) is compatible with digital wallet passes.

  • Supported Barcode Formats are:

    • QR Code (2D Barcode)

    • PDF417 (2D Barcode)

    • Aztec Code (2D Barcode)

    • Code 128 (Linear Barcode)

  • To read NFC-enabled wallet passes from Apple Wallet and Google Wallet, NFC readers must comply with specific standards and protocols, known as VAS (Value Added Services) for Apple and SmartTap for Google. These requirements ensure secure and reliable communication between the pass and the reader.

  • Test your system with sample passes to confirm it can read the unique identifier correctly.

2. Integration with PassKit

  • If you want passes to update automatically (e.g., after a transaction), your POS system must be able to connect and send this information to PassKit (or another application that then onward delivers this update to PassKit).

  • Refer to Planning Your Integration for more information.

3. Customer Recognition

  • Use the unique identifier from the pass to look up the customer in your CRM or loyalty system.

  • Ensure your POS system can handle cases where the identifier is not recognized (e.g., invalid pass, expired coupon).

4. Pass Updates

  • If you update a pass (e.g., add points, redeem a coupon), the changes will automatically sync to the customer's device via Apple Wallet or Google Wallet.

  • Pass updates are managed by PassKit, so your POS system only needs to send the update request.


Example Workflow

Here’s an example of how a loyalty card pass might work at your POS:

  1. Customer Presents Pass: The customer opens their Apple Wallet or Google Wallet app and presents their loyalty card pass.

  2. Scan or Tap: Your POS system scans the barcode or reads the NFC data to extract the unique identifier.

  3. Look Up Customer: Your POS system uses the identifier to look up the customer in your loyalty program.

  4. Process Transaction: The customer makes a purchase, and your POS system adds loyalty points to their account.

  5. Update Pass: Your POS system sends a request to PassKit to update the pass with the new points balance.

  6. Sync to Device: PassKit updates the pass, and the changes sync to the customer’s device automatically.


Test Before Going Live

Before rolling out your Apple and Google Wallet passes to your customers, it’s crucial to conduct thorough testing to ensure the entire process works seamlessly. Testing helps identify and resolve potential issues, ensuring a smooth experience for both your staff and customers. Below is a step-by-step guide to help you test your system effectively.

1. Set Up a Testing Environment

  • Test POS Hardware: Ensure your barcode scanners, NFC readers, and POS terminals are set up and functioning correctly in a controlled environment.

  • Test Accounts: Create test accounts in your CRM or loyalty system to simulate customer profiles.

2. Create Test Passes

  • Use PassKit’s tools to generate test passes for different use cases:

    • Membership cards

    • Loyalty cards

    • Coupons

    • Event tickets

  • Ensure each pass contains a unique identifier that matches your test accounts.

3. Test Scanning and Tapping

  • Barcode Passes:

    • Scan the barcode using your POS scanner.

    • Verify that the unique identifier is correctly captured and processed by your POS system.

  • NFC Passes:

    • Tap the NFC-enabled pass on your NFC reader.

    • Confirm that the pass data is transmitted accurately and the identifier is recognized.

4. Validate POS Processing

  • Customer Lookup: Ensure your POS system can use the unique identifier to look up the corresponding customer in your CRM or loyalty system.

  • Transaction Processing: Simulate transactions (e.g., purchases, redemptions) and confirm that the POS system applies the correct logic (e.g., adding loyalty points, applying discounts).

  • Error Handling: Test scenarios where the pass is invalid, expired, or not recognized. Ensure your POS system handles these cases gracefully and provides clear feedback to staff.

5. Test Pass Updates

  • Update Requests: Use your POS system to send update requests to PassKit (e.g., updating loyalty points, marking a coupon as redeemed).

  • Sync Verification: Confirm that the updated pass data syncs correctly to the customer’s device in Apple Wallet or Google Wallet.

  • Edge Cases: Test scenarios where updates fail (e.g., network issues, incorrect API requests) and ensure your system retries or logs errors appropriately.

6. Involve Your Team

  • Staff Training: Train your staff on how to recognize and process digital wallet passes. Include troubleshooting steps for common issues.

  • Mock Transactions: Conduct mock transactions with your team to simulate real-world scenarios and build confidence in the process.

7. Conduct End-to-End Testing

  • Simulate the entire customer journey, from pass creation to redemption:

    1. A customer adds a test pass to their Apple Wallet or Google Wallet.

    2. They present the pass at your POS.

    3. Your POS system processes the pass and updates it (if applicable).

    4. The customer sees the updated pass on their device.

  • Repeat this process for all pass types (barcode, NFC, membership, loyalty, coupons, tickets).

8. Gather Feedback and Iterate

  • Internal Feedback: Collect feedback from your staff about the process. Identify any pain points or areas for improvement.

  • External Feedback: If possible, involve a small group of trusted customers in beta testing. Gather their feedback on the usability and reliability of the system.

  • Refine the Process: Use the feedback to make adjustments to your POS setup, staff training, or integration with PassKit.

9. Monitor and Optimize

  • Post-Launch Monitoring: After rolling out the system, closely monitor its performance. Track metrics such as pass redemption rates, error rates, and customer satisfaction.

  • Continuous Improvement: Regularly review the process and make improvements based on real-world usage and feedback.

Example Testing Checklist

Here’s a quick checklist to ensure you’ve covered all the bases:

  • Test barcode scanning with various pass types.

  • Test NFC tapping with NFC-enabled passes.

  • Verify that unique identifiers are correctly processed by your POS system.

  • Confirm that customer lookups and transactions work as expected.

  • Test pass updates and verify they sync to the customer’s device.

  • Simulate error scenarios and ensure proper handling.

  • Train staff and conduct mock transactions.

  • Gather feedback and refine the process.

Thorough testing is essential to ensure a seamless experience for your customers and staff when accepting Apple and Google Wallet passes at your POS. By following this guide, you can identify and resolve potential issues before they impact your operations, ensuring a smooth rollout and a positive customer experience.


Troubleshooting Common Issues

1. Pass Not Recognized

  • Ensure the unique identifier is correctly formatted and matches your system’s records.

  • Check that your POS system is properly configured to handle digital wallet passes.

2. Pass Not Updating

  • Verify that your POS system is sending update requests to PassKit.

  • Check your API integration and ensure you’re using the correct endpoint and authentication.

  • Check that the formatting on the Pass Template matches the data format of the data being sent to PassKit.

3. Customer Confusion

  • Train your staff to recognize and process digital wallet passes.

  • Provide clear instructions to customers on how to use their passes at your POS.


Conclusion

Accepting Apple and Google Wallet passes at your POS is a seamless way to enhance the customer experience. By understanding that a pass is simply a digital representation of a card or ticket, you can focus on integrating it with your POS system to unlock its full potential.

If you need further assistance with setting up your POS system or integrating with PassKit, please refer to our API documentation or contact our support team.

Accepting passes at your point of sale involves integrating PassKit into your existing point of sale (POS) infrastructure. PassKit offers APIs and tools that allow you to scan and process passes directly within your POS software.

Did this answer your question?