Visa advises issuers to provide Click to Pay in all their digital platforms (browser, web, and mobile applications). This improves the user experience — cardholders have multiple channels for enrolment and for managing their Click to Pay preferences.
Features
- 🔒 Enhanced security: Significant reduction in fraud as Click to Pay uses Visa network tokens and cryptograms.
- 📈 Higher authentication and authorisation rates: Improved transaction authorisation, safe authentication as it is 3D secure and is a seamless process.
- ⚡ Improved customer experience: Provides a smoother checkout experience than the other solutions.
- 📱 Multi-device access: Multiple channels for cardholders to manage enrolment, modify personal details, and opt out of Click to Pay.
Implementation
The Visa Click to Pay API enables you to manage cards and cardholders’ enrolment to the Click to Pay feature with standard CRUD operations.- We ensure secured API interactions; however, we do not manage the UI or the application specific integrations.
- You must specify the Visa Business Identifier (
customerBID
) in your request to any Visa Click to Pay API endpoints — this ensures correct routing of the request, especially when an issuer has multiple BINs and BIDs, based on the card types they provide.
The only exception is
PUT Update Customer Status with customerID to C2P
.Prerequisites
Cardholder and Card Details in Enfuce
Cardholder and Card Details in Enfuce
Before you enrol a cardholder in the Click to Pay, you must create the cardholder record in Enfuce via the Customer API and create a card via the Card API.
API Access
API Access
Submit a request in the Enfuce Support Portal — we would enable the APIs for your usage.
Feature Activation
Feature Activation
- If you are the Visa license holder, contact Visa to start the project; Visa can enable the Click to Pay for your BID.
- If you are using Enfuce as BIN sponsor, contact us.
Visa's Recommendations
Visa's Recommendations
- Cardholder communications: Plan and prepare the communications that you must send to the cardholders notifying them about the Click to Pay feature. Inform the existing cardholders at least 30 days prior to activation.
- Updated Terms & Conditions/Privacy Notice: Notify the cardholders about the changes in the Terms & Conditions and privacy information.
- Click to Pay icon: New cards (both the physical and the digital cards) must have the Click to Pay icon imprinted on them.
The digital wallets (Apple Pay/Google Pay) must not have the Click to Pay icon.
Cardholder’s Click to Pay Account
Enrolment
Enrolment
When you enrol a cardholder in Click to Pay, you need the following:
customerId
: Unique identifier of the cardholder in Click to Pay, assigned per cardholder/per card type. You have received this ID via the Enfuce Customer API.cardId
: Unique identifier of the card you want to add to the cardholder’s Click to Pay account. You have received this ID via the Enfuce Card API.customerBID
: Unique identifier assigned to each issuer; this is assigned either by Visa (if you are using your own BIN sponsorship) or by us (if you are using the Enfuce BIN sponsorship).override.emails
: The email ID acts as a username for account login. For the cardholder’s Click to Pay account, you might use another email ID, different from the existing record.override.phones
: For the cardholder’s Click to Pay account, you might use another phone number, different from the existing record.
- A cardholder’s Click to Pay account is based on their email address.
- A cardholder can use the same email address to enrol different cards across issuers — send multiple
customerId
andcardId
, but the same email ID in the API request. - If the cardholder has used the same email address for different cards across issuers, all the cards are displayed in the same Click to Pay account.
Account Authentication
Account Authentication
A cardholder is authenticated with a One-Time Password (OTP). The OTP is sent to both the cardholder’s email address and phone number.
If a cardholder has multiple phone numbers, the OTP is sent to the number with the most recent activity.
Frequently Asked Questions
Identifiers
Identifiers
- What is
customerBID
in the Visa Click to Pay API context?customerBID
is a unique identifier assigned per Enfuce customer/per card type, used for correct routing of the API request.- If you are using Enfuce BIN sponsorship, we provide you the
customerBID
for API usage. - If you have your own BIN, Visa provides your
customerBID
.
- If you are using Enfuce BIN sponsorship, we provide you the
- Is the
customerID
parameter (POST Enroll a customer and payment card to Click to Pay
endpoint) the same as the private customer ID?Yes, send the private customer ID in thecustomerID
parameter. We manage the relationship between the card ID and the cardholder. - A cardholder might have multiple customer IDs (
customerID
), one for each card type. Does Click to Pay accept multiple customer IDs for the same cardholder?Yes, a cardholder’s profile in the Click to Pay feature is based on the email ID. In your API request, you can send different customer IDs (customerId
) and the same email ID — the cards are added to the same profile.Visa has no restriction on using the same email ID to enrol cards across issuers.
Endpoints Specific Questions
Endpoints Specific Questions
- What is the key difference between these two endpoints —
POST Enrol a customer and a payment card to Click to Pay
andPOST Enrol Card with Card ID
?POST Enrol a customer and a payment card to Click to Pay
endpoint: Send a request to this endpoint when enrolling a cardholder in the Click to Pay feature and adding a card for the first time.POST Enrol Card with Card ID
endpoiny: Send a request to this endpoint when adding a card to a pre-existing cardholder’s Click to Pay profile.
- What response is returned if a request is sent to the
POST Enrol a customer and a payment card to Click to Pay
endpoint for a pre-existing cardholder?- If the customer ID is different, the new card type is added to the cardholder’s profile —
202: Accepted
is returned. - If you send a request with the same customer ID as a previous one, the request fails as you cannot enrol the same card multiple times —
403: Forbidden
is returned.
- If the customer ID is different, the new card type is added to the cardholder’s profile —
- What happens if a request is sent to the
Post Enrol a customer and a payment card to Click to Pay
endpoint for a cardholder who is already enrolled in the Click to Pay feature by another issuer?If the email ID matches with an existing cardholder’s profile, the new card is added to the same account. An OTP might be required. However, if there are mismatches in the email ID/phone number, the endpoint returns an error and user verification is required.
Authentication
Authentication
- Does a cardholder require a username/password to access their Click to Pay account?A cardholder is authenticated with a One Time Password (OTP). They must enter the OTP sent to their email address/the phone number.Currently, a cardholder can log in to their Click to Pay account with their email ID only.
- Is the OTP sent to a cardholder’s email ID, phone number, or both?The OTP is sent to both the email ID and the phone number; neither the cardholder nor the issuer can select a specific medium.If a cardholder has multiple phone numbers, Visa sends the OTP to the phone number that has the most recent activity.
- If a cardholder has multiple customer IDs (
customerID
), are the OTPs sent to the same email ID and the phone number?Yes , if a cardholder has registered the same email address for different card types.
Duplicate Profile
Duplicate Profile
How to find out whether a cardholder has an existing profile in Click to Pay?
Send a request to the
GET Get Customer with Customer ID from C2P
endpoint – if a profile exists, the endpoint returns a 200: Successful
response.The endpoint returns a successful response, even if another issuer or Visa has created the cardholder’s profile in Click to Pay.
Card Management
Card Management
- Is there a way to delete multiple card types from a cardholder’s profile in Click to Pay?Currently, there is no specific endpoint to support this operation. You can delete one card at a time.
- If multiple cards are enrolled in a cardholder’s Click to Pay profile, is there any way to specify a default card?No, there is no default card. All enrolled cards are displayed.
Endpoints
Enrol a customer and a payment card to Click to Pay
POST /v1/click2pay/VISA/enroll/customer/{customerId}
Enrol card with CardId
POST /v1/click2pay/VISA/enroll/card/{cardId}
Get customer with customerID from C2P
POST /v1/click2pay/VISA/customer/{customerId}
Delete card with cardID from C2P
POST /v1/click2pay/VISA/delete/card/{cardId}
Delete customer with customerId from C2P
POST /v1/click2pay/VISA/delete/customer/{customerId}
Update card with cardID to C2P
PUT /v1/click2pay/VISA/update/card/{cardId}
Update customer status with customerID to C2P
PUT /v1/click2pay/VISA/update/customer/{customerId}/status
Update customer with customerID to C2P
PUT /v1/click2pay/VISA/update/customer/{customerId}
Get status of Visa Click to Pay Operation
GET /v1/click2pay/VISA/status/{traceId}