Set up a merchant terminal

This guide outlines how to configure Smart Tap for merchants.

Set up a merchant terminal to redeem Passes via Smart Tap

Merchants and terminal providers rely on the Pass developer to get their terminals configured for Smart Tap redemption. Once a merchant's terminal is set up for Smart Tap, a Pass developer can enable specific classes to be redeemed at the merchant's terminal.

To verify that the merchant terminals are able to redeem your Pass via NFC, you must complete these steps:

  • Determine the issuer account for Pass development for a specific merchant.
  • Determine the redemption issuer account enabled for Smart Tap.
  • Enable a class for Smart Tap at redemption issuers.

These are the values to set up for Smart Tap:

Set these values for a redemption issuer account:

  • Collector ID, which is auto-generated when a public key is assigned to a redemption issuer account.
  • Key version.
  • Public key.

Terminal providers set these values on the terminals in merchant stores:

  • Collector ID.
  • Key version.
  • Private key.

Set these values on your Pass:

  • Enable a class to be Smart Tap redeemed.
  • Set the redemption issuer accounts that are enabled for Smart Tap.
  • Set the value to be conveyed: smartTapRedemptionValue.

For more information on these values, see Understand collection identifiers.

Determine the issuer account that contains Passes

You must determine the issuer account that contains Passes for merchants. This issuer account contains the classes and objects of Passes that you develop for each merchant. There are two options:

  • One central issuer account for all of your merchants.
  • One new issuer account per merchant.

Here's an example:

Foo-Loyalty manages separate loyalty programs for both iLuvCoffee and teaLuv. You could configure their Passes in either of the following ways:

  • Contain all of the classes under one issuer account "Foo-Loyalty." This option is preferable if you plan to keep track of where your Passes are redeemable at a class level. It's also a good option if you never grant your merchant API access to that issuer account.
  • Make two separate accounts: "iLuvCoffee via Foo-Loyalty" and "teaLuv via Foo-Loyalty." This option is preferable if you want to assume that all classes under a certain issuer account are redeemable for a certain merchant, or if you need to give them API access to the issuer account.

See Understand collection identifiers to evaluate which option works best for you.

Determine the redemption issuer account

You must determine if a merchant’s terminal is configured to read your Pass.

The following sections describe the two possible scenarios.

Scenario 1: Merchant already has redeemable Passes

If the merchant confirms they can already redeem Passes from Google Pay with their terminals, follow these steps:

  1. Request from the merchant their redemption issuer account ID that's enabled for Smart Tap.
  2. Enable your redeemable Pass at their terminal. For instructions, see Enable class for Smart Tap at redemption issuers.

Scenario 2: Merchant's terminal supports Smart Tap, but no Passes are Smart Tap enabled

If the merchant has a terminal that supports Smart Tap but hasn't utilized the feature, you need to help the merchant set up Smart Tap for their terminal.

Enable Smart Tap for a merchant

Follow these steps to enable Smart Tap for a merchant:

  1. Determine the redemption issuer account to enable for Smart Tap. There are 2 ways to do this:
    1. Make one on behalf of the merchant. The account contact information of the new issuer must contain the merchant’s information.
      1. By form: Apply for Google Pay API for Passes access.
      2. By REST API: see make an issuer account.
    2. Determine if you can re-use an account that contains previously developed Passes.
      1. If your issuer account for Pass development contains a class for different merchants, you must set up a new account on behalf of the merchant. To set up a new account, use one of the 2 methods described above. That is the "redemption issuer account."
      2. If your issuer account for Pass development only contains classes for the specific merchant, designate it as the redemption issuer account. There's no need to apply for a new one.
  2. Request the public key and key version from the terminal provider.
    1. If the terminal provider demands a collector ID first, proceed to step 3 to generate the collector ID.
  3. Use API to Assign public key(s) and key version(s) to your redemption issuer.
    1. This process assigns a collector ID to your redemption issuer.
    2. To check the collector ID, see Get the auto-generated collector ID.
  4. Provide the terminal provider with the collector ID you set up in step 3.
  5. Provide the following information to the merchant:
    1. From step 1, give the redemption issuer ID and the link to the Google Pay API for Passes Merchant center account.
    2. From step 3, give the collector ID.
    3. Inform the merchant that they should store the redemption issuer account ID and the collector ID permanently. The merchant must provide their redemption issuer account ID to any Pass developer that needs their classes enabled for Smart Tap redemption.

Any Pass developer can map a class to be Smart Tap redeemed for this merchant as long as they have the redemption issuer account ID.

Enable class for Smart Tap at redemption issuers

A class can be redeemed by various merchants. For example, the same loyalty program, represented by a class, might be usable at different merchants. In this case, the single class will have multiple redemption issuer account IDs assigned that represent the various merchants.

You can enable a class to be redeemed by various merchants with a REST API. For more information on the use of API to configure Smart Tap, see the Enable a Pass for Smart Tap redemption section.

For details on what's conveyed from the Pass to the terminal via NFC, see the Value transmitted from the Pass section.