This section describes how Visa Click to Pay API endpoints can be used to support different consumer checkout scenarios.
Determine whether the provided email address or mobile phone number is associated with an existing Visa Click to Pay profile.
Verify the consumer’s identity, performed either by the SRCi or by Visa Click to Pay, depending on the scenario.
Retrieve the consumer’s enrolled Visa Click to Pay cards for display.
Card Selection
The consumer selects a preferred payment card.
Authentication and Payload Retrieval (if required)
Additional authentication may be triggered based on transaction risk or card status (for example, 3DS or passkey), followed by retrieval of the appropriate payload for payment processing.
Checkout and Transaction Confirmation
Complete the payment using the selected card and notify Visa Click to Pay of the transaction outcome.
Depending on the consumer and their prior interactions with Visa Click to Pay, consumers can be categorized into one of the following profiles.
| Consumer Profile | Description | Best For |
|---|---|---|
| SRCi-Managed Identity Verification Checkout using Existing Visa Click to Pay Profile | The SRCi validates the consumer’s identity independently and accesses the consumer’s existing Visa Click to Pay profile to retrieve enrolled cards for checkout.
|
The SRCi wants full control over identity verification and the end‑to‑end consumer experience
|
| Visa-Managed Identity Verification Checkout using Existing Visa Click to Pay Profile | The SRCi delegates consumer identity validation to Visa Click to Pay, which verifies the consumer before allowing access to the existing Click to Pay profile.
|
The SRCi prefers Visa‑managed identity validation
|
| Checkout with Card Enrollment during Checkout | The SRCi initiates card enrollment during checkout because the consumer does not yet have a Visa Click to Pay profile. Enrollment is completed before proceeding to payment. | Supporting first‑time consumers through just‑in‑time enrollment without breaking the checkout flow |
The following are use cases that can be performed using the Visa Click to Pay API in addition to the consumer checkout flows.
| Use Case | Description | Endpoint Used |
|---|---|---|
| DPA-Scoped Card-on-File (CoF) Token using Visa Click to Pay | Enables a Payment SRCi to enroll a Visa Click to Pay card as a DPA‑scoped card‑on‑file token for future use after consumer consent is obtained. |
POST /cards |
| SRCi-Scoped eCommerce (eCom) Token using Visa Click to Pay | Enables a Payment SRCi to obtain an SRCi‑scoped eCommerce token bound to the SRCi’s TRID for use in subsequent transactions following an initial checkout. |
POST /cards |
As the SRCi, you can authenticate your consumer using your own identity verification mechanism and retrieve your consumer’s Visa Click to Pay card list for secure payment method presentation and transaction processing.
Context:
Flow: SRCi verifies the consumer's identity using their own mechanism, then calls Visa Click to Pay to retrieve the consumer's card list for checkout.
Note: An SRCi or SRC Enabler can only perform this flow with their own identity validation solution upon express written approval from Visa.
Determine whether the provided consumer identity (email addressor mobile phone number) exists within Visa Click to Pay using the Identity Lookup endpoint.
Expected returned result:
{
"consumerPresent1": true,
...
}
Retrieve the consumer’s profile using the Profile Retrieval endpoint. Results in a card list with the srcDigitalCardIds.
Present the card list to the consumer, resulting in a selected card.
Prerequisites:
Workflow:
Card Display Data
| Schema | Field | Type | Description |
|---|---|---|---|
| maskedCard | srcDigitalCardId | string | Digital card identified for checkout |
| maskedCard | panLastFour | string | Last four digits of card |
| maskedCard.digitalCardData | descriptorName | string | Presentation text defined by the SRC program that describes the PAN presented as a digital card |
| maskedCard.digitalCardData | artUri | string | Image URL and dimensions |
| maskedCard | dateOfCardCreated | string | Required |
| maskedCard | dateOfCardLastUsed | string | Optional, provided if available |
SRCis must present the card brand, last four digits, card art, and descriptor in association with each card.
Call the Checkout endpoint with optional additional authentication. This step includes two POST calls to the checkout endpoint.
If the payloadTypeIndicator from the previous step is NON_PAYMENT or SUMMARY, call the Payload Retrieval endpoint to retrieve the payment payload.
Once the transaction has been processed, notify Visa Click to Pay of the checkout or payment authorization results with the Transaction Confirmation endpoint.
As an SRCi, you want Visa Click to Pay to perform consumer identity validation so that you can retrieve the Visa Click to Pay card list for consumers who have a Visa Click to Pay profile but do not have an existing account with you. This enables guest checkout without requiring SRCi account creation, while still allowing you to optionally present an account creation flow.
Context:
Flow: SRCi checks if the consumer exists in Visa Click to Pay, then delegates identity verification to Visa using OTP validation. After successful verification, Visa returns the consumer's card lists for checkout.
Determine whether the provided consumer identity (email addressor mobile phone number) exists within Visa Click to Pay using the Identity Lookup endpoint.
Expected returned result:
{
"consumerPresent1": true,
...
}
On confirmation that a Visa Click to Pay profile exists, call the Initiate Identity Validation endpoint Initiate Identity Validation endpoint to receive an idValidationSessionId, corresponding to the OTP that is sent in parallel.
Capture the OTP from the consumer and send it to the Complete Identity Validation to receive an idToken on a successful response.
Retrieve the consumer’s profile using the Profile Retrieval endpoint. Results in a card list with the srcDigitalCardIds.
Prerequisites:
Workflow:
Card Display Data
| Schema | Field | Type | Description |
|---|---|---|---|
| maskedCard | srcDigitalCardId | string | Digital card identified for checkout |
| maskedCard | panLastFour | string | Last four digits of card |
| maskedCard.digitalCardData | descriptorName | string | Presentation text defined by the SRC program that describes the PAN presented as a digital card |
| maskedCard.digitalCardData | artUri | string | Image URL and dimensions |
| maskedCard | dateOfCardCreated | string | Required |
| maskedCard | dateOfCardLastUsed | string | Optional, provided if available |
SRCis must present the card brand, last four digits, card art, and descriptor in association with each card.
Call the Checkout endpoint with optional additional authentication. This step includes two POST calls to the checkout endpoint.
If the payloadTypeIndicator from the previous step is NON_PAYMENT or SUMMARY, call the Payload Retrieval endpoint to retrieve the payment payload.
Once the transaction has been processed, notify Visa Click to Pay of the checkout or payment authorization results with the Transaction Confirmation endpoint.
SRCi may present consumers with an option to create an account with them for future non-Visa Click to Pay checkout convenience after successful transaction completion.
Future Checkout Flow:
With SRCi Account Created:
Without SRCi Account (Guest Continues):
As an SRCi, you want to support checkout for consumers whose cards are not yet enrolled in Visa Click to Pay by enabling in‑checkout card enrollment, allowing consumers to seamlessly enroll their card and continue directly to payment.
Context:
Flow: SRCi attempts to find the consumer's cards in Visa Click to Pay, discovers none are enrolled, then collects card details and consumer information to enroll the card just-in-time before proceeding with checkout.
Determine whether the provided consumer identity (email addressor mobile phone number) exists within Visa Click to Pay using the Identity Lookup endpoint.
Expected returned result:
{
"consumerPresent1": true,
...
}
Collect all required information before enrollment may proceed. This includes:
Enroll the card to Visa Click to Pay using the Card Enrollment endpoint, resulting in getting a srcDigitalCardId returned in the enrollment confirmation.
Call the Checkout endpoint with optional additional authentication. This step includes two POST calls to the checkout endpoint.
If the payloadTypeIndicator from the previous step is NON_PAYMENT or SUMMARY, call the Payload Retrieval endpoint to retrieve the payment payload.
Once the transaction has been processed, notify Visa Click to Pay of the checkout or payment authorization results with the Transaction Confirmation endpoint.
Merchant Digital Card‑On‑File (COF) via Visa Click to Pay enables a merchant to support saved‑card use cases—such as subscriptions, recurring payments, and repeat checkout—without storing card data.
The Consumer completes a purchase using Visa Click to Pay. After a successful transaction, the Consumer may elect to designate the card used as the merchant Digital Card‑On‑File for that merchant. Visa Click to Pay securely stores the card, while the merchant retains a reference identifier (srcDigitalCardId) that can be used to retrieve encrypted payment payloads on demand for future transactions.
Any consent to store credentials for merchant Digital Card‑On‑File is collected and managed by the merchant prior to enrolling the card for COF.
Note: Merchant refers to the merchant entity operating the Digital Payment Application (DPA) and/or the Payment SRC Initiator (SRCi).
Unless explicitly stated otherwise, references to Merchant encompass both roles.
In this diagram, Merchant denotes the merchant entity operating the Digital
Payment Application (DPA) and/or the Payment SRC Initiator (SRCi).
The DPA is responsible for consumer consent and Card‑On‑File token scope (TRID), and
the SRCi is responsible for invoking Visa Click to Pay APIs.
The Consumer completes a purchase at the merchant using Visa Click to Pay.
Visa Click to Pay returns a checkout response that includes the following identifiers:
The merchant uses the returned payment payload to complete authorization and stores the returned identifiers for potential COF enrollment.
After the purchase is completed, the Consumer chooses to designate the card used in the transaction as the merchant Digital Card‑On‑File.
The merchant presents applicable terms and conditions and collects explicit consumer consent to store and use the card for future payments.
If consent is not provided, the card is not enrolled for COF.
Once consent has been obtained, the merchant enrolls the card for COF using the previously returned srcDigitalCardId.
Visa Click to Pay provisions a merchant‑specific Card‑On‑File token and returns a merchant‑scoped srcDigitalCardId representing the merchant Digital Card‑On‑File.
The merchant stores this reference for future use.
For subsequent transactions:
This use case enables a
During the initial transaction, payment processing is performed using a token bound
to the
The SRCi‑specific eCom token enables streamlined repeat checkout and follow‑on transactions without repeating the full Visa Click to Pay lookup flow.
Only
Key Points:
If an SRCi specific eCom token already exists for the selected card:
If no SRCi‑specific eCom token exists, SRCis may choose:
High-Level Flow
The consumer completes Checkout using Visa Click to Pay.
After checkout, the Payment SRCi determines whether an SRCi‑specific eCom token is required for subsequent transactions.
This determination is made by evaluating the scope of the payload returned by Checkout or Payload Retrieval (GET /transactions/credentials):
No additional API call is required solely to determine token existence.
If the Payment SRCi chooses to provision an SRCi‑specific token:
Visa Click to Pay provisions an SRCi‑specific Visa network eCom token and returns:
The Payment SRCi stores the token reference for future use.
For subsequent transactions:
The SRCi‑specific eCom token flow allows Payment SRCis to: