How to Enroll and Manage Customer Information in Click to Pay
Visa Click to Pay
Issuers
- Overview
- Issuers
- Use Cases
- How to Enroll and Manage Customer Data
- How to receive customer Enrollment Attempt Notifications for existing VCEH integrations
- Troubleshooting
How to Enroll and Manage Customer Data
Introduction
To simplify the integration efforts for Issuers (or their VisaNet Processor, Visa Scheme Processor (Europe Region) or Third-Party Agent performing enrollment/lifecycle management on their behalf), a common set of Visa APIs has been developed to allow Issuers to enroll payment instruments to Click to Pay and in the future other Visa products. Issuers can now enroll and manage customer and payment instrument(s) information for Click to Pay using this API set.
How It Works
Enrollment
- Client submits enrollment data and indicates the product to enroll it to
- Visa enrolls the data to the relevant product
- Client retrieves the status of the request or receives a status notification
- Clients receives notification if consumer attempts to enroll into Click to Pay
Management of Consumer Information
- Clients send a request to update / delete / retrieve data and indicates whether it applies to specific product or both
- Visa updates / retrieves / deletes the data on the relevant product
- Client retrieves the status of the request or receives a status notification
API Overview
The APIs allow clients to modify the following categories of data.
| Category | Description | Examples |
|---|---|---|
| intent | - This specifies the service which the data needs to be enrolled in. | - Click to Pay (CLICK_TO_PAY) |
| consumerInformation | - This object contains information about the consumer. - Issuers are required to provide an externalConsumerID to represent each consumer. - Issuers are required to provide the BID of the Payment Card Issuer who has the relationship with the consumer (maintains the consumer profile) in the externalConsumerIDOwnerBID. - The externalConsumerID together with the externalConsumerIDOwnerBID, uniquely identifies a consumer in the VICA and Click to Pay systems. All data provided will be linked to the combination of these two identifiers. - Issuers are required to provide only mobile phone numbers within consumerInformation. |
- Name - Phone Number - Email Address - Status |
| paymentInformation | - This object contains information about the payment instrument. | - Card details |
Available Endpoints
| Endpoint | Overview |
|---|---|
| Enroll Data POST /v1/enrollData |
- Create consumer and payment instrument information - A consumer can be enrolled in a single product (e.g., Click to Pay) with a single API call. Another API call will be required to enroll consumer in another product |
| Enroll Payment Instruments POST /v1/enrollPaymentInstruments |
- Enroll payment instrument to an existing consumer |
| Manage Consumer Information PUT /v1/manageConsumerInformation |
- Update consumer information |
| Manage Payment Instrument Data PUT /v1/managePaymentInstruments |
- Update payment instrument information |
| Get Data POST /v1/getData |
- Retrieve consumer and payment instrument information - Only data from a single product can be retrieved with a single API call |
| Delete Consumer Information POST /v1/deleteConsumerInformation |
- Delete consumer information - The consumer's payment instruments will be deleted as well |
| Delete Payment Instrument Data POST /v1/deletePaymentInstruments |
- Delete payment instrument information |
| Request Status by Request Trace ID GET /v1/requestStatus/{requestTraceId} |
- Retrieve status of enrollment, consumer information management, payment instrument management, consumer information deletion, and payment instrument deletion requests submitted to Visa |
| Request Status Notification POST /{Issuer Endpoint} |
- Visa invokes this endpoint to notify the client of the completion of an asynchronously processed request. - The endpoint is registered and configured by the client in Visa Developer Platform (VDP). |
| Click to Pay Enrollment Attempt Notification POST /{Issuer Endpoint} |
- Visa invokes this endpoint when a CTP enrollment attempt occurs when the card issuer is enabled for Issuer Offered Click to Pay (IoC). - The endpoint is configured by the client in Visa Developer Platform (VDP) and mapped to the relevant account ranges in Visa Digital Configuration Service (VDCS) by Visa Client Configuration Management (CCM). |
Errors
Visa ID and Credential
| HTTP Code | Reason Code | Error Description |
|---|---|---|
| 400 | VIDC-1000 | Required field missing |
| 400 | VIDC-1001 | Invalid value / Request ID not found |
| 400 | VIDC-1002 | Length checks failed |
| 400 | VIDC-2000 | Consumer is already enrolled - Enroll Data |
| 400 | VIDC-2001 | Consumer is not enrolled - Enroll Payment Instruments, Manage Consumer Information, Manage Payment Instruments Data, Get Data, Delete Consumer Information, and Delete Payment Instruments Data |
Click to Pay
| Reason Code | Error Description |
|---|---|
| VIDC-2000 | Consumer is already enrolled – Enroll Data |
| VIDC-2001 | Consumer is not enrolled - Enroll Payment Instruments, Manage Consumer Information, Manage Payment Instruments Data, Get Data, Delete Consumer Information, and Delete Payment Instruments Data |
| VIDC-2002 | Payment instrument is not issued by the Issuer that sends the request - Enroll Data, Enroll Payment Instruments, Manage Payment Instruments Data, and Delete Payment Instruments Data |
Frequently Asked Questions
1. What is externalConsumerId?
- externalConsumerID is a consumer ID that is a unique identifier of the consumer from the Issuer’s perspective. This is distinct from any payment instrument identifier as multiple payment instruments may be associated with a single externalConsumerID. It should be generated / provided by the Issuer.
2. What is externalConsumerIdOwnerBID?
- externalConsumerIDOwnerBID is the unique resource for identifying the Payment Card Issuer who has the relationship with the consumer (maintains the consumer profile). The externalConsumerIDOwnerBID with the externalConsumerID is what identifies a unique consumer in the VICA and Click to Pay systems and provides a link between enrollment and data management functions to ensure that updates are applied to the correct consumer record.
3. Can I enroll into products separately through the common API?
- The unified solution currently provides the capability to enroll onto a single product in a single API call. To enroll into Click to Pay, the intent field must include the Product Code “CLICK_TO_PAY”.
4. Do I need to check consumer provided data before sending it to Visa?
- Issuers must only enroll or update consumer and payment instrument related data for their own customers which they know to be accurate. It is the Issuer's responsibility to perform relevant KYC checks on their customer and address data and to validate the consumer has access to all email addresses and phone numbers supplied over the API.
Disclaimer:
This page is provided on an “as is, where is” basis, “with all faults” known and unknown.