Overview
This guide describes the steps to integrate Visa Checkout as a Nuvei APM (alternative payment method) into your payment flow using the Nuvei Server-to-Server REST API platform, and submit a Visa Checkout payment.
Implementing a Visa Checkout UI
Implement the Visa Checkout UI on your front-end according to details provided in the User Interface Guidelines for Visa Checkout page.
Once implemented, you should receive a callId
mobile token from Visa Checkout, which you need to perform the payment in the next step.
Sending a /payment
Request
You can send a /payment
request using the relevant mandatory parameters, and include the following additional parameters required by Visa Checkout:
usertokenId
– TheusertokenId
associated with thecallId
mobile token provided by Visa Checkout.- An
externalToken
block containing:externalTokenProvider
: “VisaCheckout“externalTokenData
cardType
Example /payment
Request with an externalToken
Block
{ "sessionToken":"<sessionToken from getSessionToken>", "merchantId":"<your merchantId>", "merchantSiteId":"<your merchantSiteId>", "clientRequestId":"<unique request ID in merchant system>", "amount":"200", "currency":"USD", "userTokenId":"<unique customer identifier in merchant system>", "clientUniqueId":"<unique transaction ID in merchant system>", "paymentOption":{ "card":{ "externalToken":{ "externalTokenProvider":"VisaCheckout", "externalTokenData":"<callId as provided by Visa Checkout>", "cardType":"<card type>" } } }, "deviceDetails":{ "ipAddress":"<customer's IP address>" }, "billingAddress":{ "firstName": "John", "lastName": "Smith", "country":"US", "email":"john.smith@email.com" }, "userDetails": { "firstName": "John", "lastName": "Smith", "country": "US", "email":"john.smith@email.com", }, "timeStamp":"<YYYYMMDDHHmmss>", "checksum":"<calculated checksum>" }
After the transaction is processed, the user receives a Direct Merchant Notification (DMN) (sent to the notificationUrl
parameter you can provide in the request) that includes the result of the transaction.
Sending a /payout
Request
Please press here to see how to perform a payout using a previously captured UPO, which contains the user’s previously stored card details.