Push provisioning allows cardholders to add their Card to a Digital Wallet at the tap of a button instead of having to manually type in the Card details.
Apple Pay
In-app push provisioning
Prerequisites
Enabling push provisioning to Apple Pay wallets in your iOS application requires an Apple Pay Entitlement to be issued by Apple for your application. Please reach out to support@increase.com and we will guide you through the process and any other setup needed.
Push provisioning flow
Add an AddPassToWalletButton to a view. Please refer to Apple’s documentation on guidelines for proper presentation of the button.
On your backend, send the certificates, nonce, and nonce signature to POST /cards/:card_id/push_provision with the apple_pay_in_app channel, and return Increase’s response to your application:
Wait for the didFinishAdding delegate method to be called to determine the outcome of the push provisioning flow. As the flow progresses, a Digital Wallet Token will be created and receive updates.
Google Pay
Increase supports Google’s Unified Push Provisioning flow, which works the same way on the web and in Android applications.
Push provisioning flow
Increase returns two opaque payment cards. Pass them to Google’s SDK without modifying them:
token_service_provider_opaque_payment_card adds the Card to Google Wallet on the cardholder’s phone or wearable.
google_opaque_payment_card saves the Card to the cardholder’s Google account.
Google Pay web push provisioning
Load Google’s web push provisioning library and add an Add to Google Wallet button to your page, following Google’s brand guidelines.
When the button is clicked, call openAppWindow. In onSessionCreated, send the session details to your backend and pass the response to pushPaymentCredentials:
Google only provides publicDeviceId and publicWalletId when the Card can be added to one of the cardholder’s devices. Without them, Increase only returns the google_opaque_payment_card.
Google can also override the token and card settings you asked for, so only include tokenCredentials and cardCredentials when the session’s tokenSetting and cardSetting are 1. Set displayName, lastDigits, and userAddress to the Card’s name, last four digits, and billing address.
Google Pay in-app push provisioning
Add an Add to Google Wallet button to your Android application, following Google’s brand guidelines.
When the button is tapped, Google’s SDK provides a GeneratePaymentCredentialsRequest. Send its stableHardwareId, walletId, and serverSessionId to your backend.
On your backend, call POST /cards/:card_id/push_provision with the google_pay_in_app channel:
Return the opaque payment cards to Google’s SDK as the payment credentials for the GeneratePaymentCredentialsRequest.
server_session_identifier is optional. Without it, Increase only returns the token_service_provider_opaque_payment_card, which adds the Card to the device but doesn’t save it to the cardholder’s Google account.