Visa In-App Provisioning

Getting Started with Visa In-App Provisioning SDK

About Visa In-App Provisioning SDK

Today’s experience for issuers supporting the pay wallets maybe limited to ‘behind the scenes’ BIN tokenization setup and may often cases require possession of an active physical card.  In addition, end users may experience friction by possible yellow-path token step-up authentication and manual CVV2 entry.

The Visa In-App Provisioning SDK helps enable issuers to seamlessly provision cards to the pays from within their mobile banking application.  The mobile banking application provides user authentication and can utilize the SDK to support provisioning of physical and digitally issued cards with no need to perform yellow path token step up authentication while removing the need for cardholders to manually enter their card details.  The Visa In-App Provisioning SDK can play a critical role in easily enabling digital provisioning flows for clients who are looking to support digital issuance use cases across the card account life cycle.

The Visa In-App Provisioning SDK can significantly reduce time to market and simplify the integration to multiple pays by orchestrating API connections to the pay wallet API’s and facilitates the required encryption of card details per network and pay requirements.

The SDK will facilitate the required “Pay” Token Eligibility validations, encrypt the card using the Visa In-App Provisioning API and manage required SDK/API integration requirements from Apple Pay1, Google Pay2 or Samsung Pay3, removing the need for the Mobile App Provider to interface directly with the “Pays” in order to provision a card directly from their app. The SDK can be utilized to support one, many, or all of the “Pays” depending on client requirements.

If interested in using the Visa In-Provisioning SDK, please contact your sales representative or email [email protected].

How Does It Work

The mobile application provider is responsible for presenting the action buttons to the end user, according to the brand guidelines required by every supported Pay. After the end user selects the appropriate action button from their mobile app, the end user will be presented with the default wallet screens required and controlled by the Pays display during the push provisioning user experience (screens relating to terms and conditions, etc.). It is the responsibility of the client to ensure all mobile application user experiences comply with the mandated requirements of each supported Pay, including branding and use of trademarks. It is also the client’s responsibility to obtain any required approvals from each supported Pay of their mobile application user experience through their existing mobile app store submission and approval process prior to production launch.

Things to Know

For a mobile app developer to implement in-app provisioning on their own, they would need to interface with API’s from multiple sources, including the issuer or core/host/card processor, Visa, Apple, Google and Samsung APIs as demonstrated below. Each mobile wallet provider has a different set of APIs and requires different approaches to perform device and token eligibility checks and other functions. These variations introduce a level of complexity that can increase time to market and requires a unique set of integration requirements for each supported Pay wallet, requiring the mobile app developer to aggregate APIs from multiple sources into a cohesive user experience. 

With the Visa In-App Provisioning SDK

With the Visa In-App Provisioning SDK, the connectivity to the Pay Wallet APIs is simplified for the mobile developer and handled by the SDK. The SDK manages all technical touchpoints with Visa and the wallet providers. The mobile app developer embeds the SDK within the mobile app, gathers the card details and passes that information into the SDK.

The mobile app developer has only three touch points with the SDK

  1. To start up, or initialize the SDK
  2. To pass the card details to the SDK and get a list of supported pay wallets from the SDK
  3. To make a request for the SDK to push the card to the wallet that the user selected


To get started with the Visa In-App Provisioning SDK, please reach out to your Visa Account Executive.  Once a Visa In-App Provisioning SDK contract has been signed and any necessary authorizations have been granted, Visa will assign an Implementation Manager to support the initial client implementation, as well as any subsequent projects in which new clients and/or new BINs are added to (or removed from) the SDK configuration.  The Visa Implementation Manager will coordinate the overall project, establish timelines and milestone dates, address completion of the required Visa system configurations and handle the various technical onboarding requirements of the Pays.

For clarity, this does not include any contractual enrollment requirements for the respective BINs or the general contractual relationship between client and the Pays, which need to be addressed and complied with by client and/or the financial institution on behalf of which client acts.  

¹ Apple Pay is a trademark of Apple Inc., registered in the U.S. and other countries
² Google Pay is a trademark of Google LLC.
³ Samsung Pay is a trademark of Samsung Electronics Co., Ltd