• Documentation
  • API Reference
  • Documentation
  • API Reference
Expand All Collapse All
< BACK TO HOME
  • APMs Overview
    • Introduction to APMs
    • APM Integrations and Flows
    • APM Input Fields and APIs
    • APM subMethod Class
    • Account Details Capture
    • APM Countries and Currencies
  • Global Guides
    • Afterpay
    • Apple Pay
      • Registering with Apple Pay
        • (Manually) Register in the Apple System
          • Create an Apple ID
          • Enroll in the Apple Developer Program
            • Submit an Enrollment Request
            • Complete the Enrollment Process
            • Activate your Apple Developer Program Account
          • Register a Merchant ID in the Apple System
            • Create a Merchant ID
            • Create a Payment Processing Certificate
            • Create a Merchant Identity Certificate
            • Register and Verify Your Domain
      • Nuvei Apple Pay Implementations
        • Payment Page using IFrame
        • Static Apple Pay Button
        • Static Pay Button (Web SDK)
        • Dynamic Apple Pay Button
      • Apple Pay Integration
        • Apple Pay (REST API)
        • Apple Pay (Web SDK)
        • Apple Pay (Simply Connect)
        • Apple Pay Integration Testing
    • Google Pay
      • Google Pay (REST API)
      • Google Pay (Web SDK)
      • Google Pay (Simply Connect)
    • Neteller
    • PayPal
    • Skrill
    • Visa Checkout
      • Visa Checkout (REST API)
  • US and Canada Guides
    • ACH
    • Instant Bank Transfer
    • Interac Instant
    • Mazooma
    • PayNearMe
    • PlayPlus
      • PlayPlus (REST)
      • PlayPlus (Web SDK)
    • VIP Preferred
      • VIP Preferred (REST)
      • VIP Pref. (Web SDK/Simply Connect)
  • Europe Guides
    • Aircash
    • Clearpay
    • iDEAL
    • MobilePay
    • Okto Cash
    • Open Banking
    • SEPA Payouts
  • Latin America Guides
    • Colombia Payouts
    • Daviplata
    • Efecty Payout
    • LATAM Payouts
    • Pay4Fun
    • Pay with Cash
    • PIX
    • PIX Payouts
    • PSE
    • QR Redeban
    • STPmex
    • WebPay
  • Asia Pacific Guides
    • AlipayHK
    • Dana
    • DragonPay
    • GCash
    • India Payouts
    • KakaoPay
    • NPP
    • Touch ’n Go
    • TrueMoney
    • WeChat

Visa Checkout (REST API)

Home    Visa Checkout    Visa Checkout (REST API)

On this page:
  • Overview
  • Implementing a Visa Checkout UI
  • Sending a /payment Request
  • Sending a /payout Request

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 – The usertokenId associated with the callId 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.

  • Terms of use
  • Privacy Policy
Nuvei. All rights reserved.