Skip to main content

PassKit integration

The PassKit integration lets customers add their loyalty card barcodes directly to their mobile wallets, providing convenient access to their loyalty cards at the store.

Before you begin

To enable this feature, contact your Instacart representative. Your organization must have a PassKit account and complete the necessary integration steps before this feature can be activated. For more information, see Retailer setup requirements.

Platform support

PassKit integration is available for the iOS native app and Android native app.

Retailer setup requirements

To enable Add to Wallet functionality for your customers, you must complete the following setup steps with PassKit. This integration requires coordination between your team, PassKit, and Instacart.

Set up your PassKit account

Create a PassKit account to begin designing and managing your digital loyalty passes.

  1. Visit https://app.passkit.com/signup and complete the registration form using your business email address.
  2. Verify your email address.
  3. Complete your account profile and company information.

After your account is created, you can access the PassKit Portal where you can design passes, manage certificates, and access your API credentials.

Build your digital loyalty pass

Design your digital loyalty card using PassKit's pass designer to create a Loyalty Program and configure the pass template, including brand colors, logo, barcode format, and customer-facing fields.

Upload your Apple Developer certificate

Generate and upload Apple certificates from your Apple Developer Account to enable Apple Wallet functionality.

  1. Generate a CSR in PassKit. This CSR file is required to create the Pass Type ID Certificate in Apple's Developer Portal.

    1. Open your PassKit Project and go to the Certificates page.
    2. Select Generate CSR to download the Certificate Signing Request (.csr) file.
  2. Create a Pass Type ID in Apple. The Pass Type ID must match the Project ID in PassKit.

    1. Log in to your Apple Developer Account.
    2. Select Certificates, Identifiers & Profiles > Identifiers.
    3. Create a new Pass Type ID Identifier, for example, pass.com.yourcompany.loyalty.
  3. Generate a certificate in Apple.

    1. In your Apple Developer Account, create a Pass Type ID Certificate.
    2. Upload the PassKit-generated CSR file to create the Pass Type ID Certificate, which is a .cer file.
    3. Download the certificate file.
    4. Ensure that the Pass Type ID matches the Project ID in PassKit.
  4. Upload to PassKit. This final step signs the project, allowing passes to be issued and updated on Apple Wallet.

    1. Return to the PassKit Certificates page.
    2. Upload the downloaded pass.cer file.

Enable NFC functionality

NFC (Near Field Communication) enables contactless tap functionality for your wallet passes, allowing customers to use their passes at point-of-sale terminals.

note

Apple's NFC certificate approval process takes a minimum of 4 weeks. Apply early to avoid delays in your launch timeline.

PassKit simplifies the process for Google Wallet by provisioning the NFC certificate on your behalf. You do not need to obtain a separate NFC certificate for Google Wallet.

  1. Apply for an NFC certificate. You must apply for an NFC Certificate through Apple's Developer Program.
  2. Wait for approval. Ensure that your use case complies with Apple's guidelines to avoid delays.
  3. Generate and add the certificate to PassKit. When the certificate is approved, add your NFC-enabled certificate to your PassKit account by following the certificate upload steps.

When you are granted the NFC Certificate from Apple, upload the NFC-enabled certificate to the PassKit Portal. Both Apple Wallet and Google Wallet passes will automatically have NFC support and will be encrypted with the same ECDSA key.

Share integration credentials with Instacart

Share the following PassKit credentials with your Instacart representative to complete the integration setup.

note
  • These credentials are used by Instacart to dynamically generate short-lived JSON Web Tokens for API requests.
  • The API Secret is only displayed one time when it is generated. Store it securely before leaving the page.
  • Use only secure, encrypted channels for sharing these credentials with Instacart. Do not use standard email.
CredentialWhere to find itPurpose
Program IDIn the browser's address bar when viewing your Loyalty Pass Project. For example, .../projects/[PROGRAM_ID]/..Identifies the specific Loyalty Program.
Tier ID(s)In Tiers within the Project Settings.Identifies specific membership levels, if applicable.
JWT Signing Key (API Key)Developer Tools or Clients settings in the PassKit portal.The key used to sign the JWT for API authentication.
JWT Signing Secret (API Secret)In the same location as the API key.The secret used to sign the JWT for API authentication.

After you share your credentials, the Instacart technical team completes the following:

  • Configures the integration in Instacart's systems.
  • Tests the pass generation in a staging environment.
  • Validates that the passes are correctly displayed in both Apple Wallet and Google Wallet.
  • Enables the feature for your production environment.