- Manual entry — The cardholder enters the card data directly into the digital wallet, typically either by typing in the data or by taking a photo of the card. This method might be preferred when your users already possess the physical cards they want to insert into their digital wallets.
- Card-on-file — The cardholder adds a card to an additional device. This method requires the digital wallet to already have the card information on file, possibly from a previous tokenization request. For example, the card is already stored in the digital wallet on a phone and the cardholder is adding the card to a watch.
- In-app provisioning — Your mobile application dynamically creates a new virtual card and then adds it to the digital wallet for instant availability of the funds.
- Web push provisioning — The cardholder requests and adds a new virtual card to their digital wallet via web browser.
Basic provisioning flow
In the basic provisioning flow, the cardholder initiates the provisioning request either by manually entering the data for a new card or by selecting a card that is already on file (i.e., the manual entry and card-on-file methods).The cardholder initiates the request via manual entry or card-on-file on the target device (e.g., Apple Pay wallet on an iPhone).
The card network, Marqeta (the issuer processor), and the digital wallet coordinate the approval of the token activation request.
Marqeta sends an event notification to your webhook endpoint. You can use this information to determine the current status and to take further actions, if necessary.
Instant issuance flow
In the instant issuance flow, your mobile application or the cardholder initiates the provisioning request to create a new Marqeta virtual card and then tokenize it. This unique capability from Marqeta allows you to create a virtual card and make it instantly available for use at both brick-and-mortar merchants that support the digital wallet and e-commerce merchants. There are two provisioning scenarios for the instant issuance flow:- In-app provisioning
- Web push provisioning
In-app provisioning
In-app provisioning enables mobile applications to initiate provisioning requests to add virtual cards to digital wallets for instant access to funds. The following diagram outlines the in-app provisioning flow.Your backend sends a
POST request to the Marqeta API endpoint for the specific type of digital wallet, with the card token in the request object. For example, if you add the card to an Apple Pay digital wallet, your application sends a POST request to the /digitalwalletprovisionrequests/applepay endpoint. See the Digital Wallets Management API reference page for endpoint documentation.The Marqeta API responds with encrypted card data for the new card. Your backend passes the encrypted card data to the digital wallet (e.g., Apple Pay) by integrating with the provider’s API.
The card network, Marqeta (the issuer processor), and the digital wallet coordinate the approval of the token activation request.
Marqeta sends an event notification to your webhook endpoint. You can use this information to determine the current status and to take further actions, if necessary.
Web push provisioning
Web push provisioning leverages existing instant issuance capabilities to allow cardholders to add virtual cards to digital wallets directly from program websites. This can be done on desktop and mobile, and across the most common web browsers (e.g., Chrome, Safari, Firefox, and Edge). Note that the diagram and flow steps in this section are specific to Apple Pay. The Google Wallet differ slightly, as the sign-in process occurs at the start of the workflow. For detailed implementation steps, please contact your Marqeta representatives. The following diagram outlines the web push provisioning flow.Your backend sends a
POST request to the Marqeta API endpoint for the specific type of digital wallet, with the card token in the request object. For example, if you add the card to an Apple Pay digital wallet, your application sends a POST request to the /digitalwallets/wpp/applePayJWT endpoint. See the Digital Wallets Management API reference page for endpoint documentation.The Marqeta API responds with encrypted card data for the new card. Your backend passes the encrypted card data to the digital wallet (e.g., Apple Pay) by integrating with the provider’s API.
The card network, Marqeta (the issuer processor), and the digital wallet coordinate the approval of the token activation request.
Marqeta sends an event notification to your webhook endpoint. You can use this information to determine the current status and to take further actions, if necessary.
Choosing the allowable provisioning methods
The card product controls the allowable methods for providing card data during token provisioning. To see which methods are currently allowed, send aGET request to the /cardproducts endpoint. Optionally, include the token path parameter to see the allowable methods for a specific card product.
The card product object indicates the allowable methods in the digital_wallet_tokenization.provisioning_controls element. For example, the following card product allows the manual entry and card-on-file methods but not the in-app provisioning or web push provisioning methods.
JSON