Before you build, your program needs push provisioning entitlements from Apple and Google, and must pass their UX reviews. See Program Setup.
Apple Pay
certificates, nonce, and nonce_signature come from Apple’s SDK. The response returns encrypted_pass_data, activation_data, and ephemeral_public_key to pass back to it.
See Create Digital Wallet Token for Apple Pay.
Google Wallet
Google is replacing its legacy push provisioning APIs with Unified Push Provisioning (UPP) and has announced it will deprecate the legacy APIs by the end of 2026. UPP also saves the card to the cardholder’s Google Account, so it can be added on their other Google devices. Synctera offers a separate endpoint for each. Usegooglepay_upp with Google’s UPP SDK, and googlepay with the legacy SDK. An app uses one or the other.
Before you start
UPP requires a Google business profile for the card issuer, set up in Google’s Issuer Console and linked to your processor’s profile. The issuer of record for your program sets this up, not Synctera. Follow Google’s onboarding guidance, and confirm with your sponsor bank and your Implementation & Onboarding manager who holds it.googlepay_upp needs it in place.
Unified Push Provisioning
See Create Digital Wallet Token for Google Pay (UPP).
The response returns two payloads for Google’s SDK:
push_tokenize_request_data.opaque_payment_card: the OPC used to create the device token.google_opaque_payment_card: the OPC that saves the card to the cardholder’s Google Account. Returned only when you sentserver_session_id.
How it fits Google’s SDK
Google’s SDK calls a generator you provide when it needs the payloads. In that callback, call your backend, which calls Synctera, and hand the results back to the SDK.- Set a payment credentials generator on the push tokenize request in your app.
- When Google calls it, send your backend the IDs from Google’s request (the wallet, device and session IDs) together with the card ID.
- Your backend calls
googlepay_upp. Includeserver_session_idonly if Google requested the Google OPC. - Return
opaque_payment_cardand, if present,google_opaque_payment_cardto the SDK.
- Show Add to Google Wallet when the cardholder has an eligible device to tokenize to, not only when the card isn’t already tokenized.
- Supply the cardholder’s address to Google in the push request. Synctera does not return it.
googlepay_upp is not yet available for every card program. For cards that don’t support it, the request fails with IN_APP_PROVISIONING_NOT_SUPPORTED. Keep using googlepay for those cards until your Implementation & Onboarding manager confirms support.Migrating from the legacy endpoint
The legacygooglepay endpoint keeps working. To migrate, release an app version built on Google’s UPP SDK and switch its backend to googlepay_upp.
Both endpoints require the same permissions, return 404 for an unknown card, and apply the same card checks. The card must be active, and its card product must have in-app provisioning enabled.
Legacy
push_tokenize_request_data for Google’s SDK.
See Create Digital Wallet Token for Google Pay.
Next Steps
Token Lifecycle Management
What happens to the token once it exists.
Provisioning Decisions
Why a provisioning attempt is challenged or refused.

