Skip to main content

Online payments

Card Payments with 3DS

Last updated: 13-Mar-2024

To perform card payments using 3DS flow with mobile SDKs, complete the following steps:

  1. Store the card capture key on your backend and pass it to the mobile app at the start-up phase or when the payment is initialized.
  2. Your app will send a call to Verifone SDK to display the Card Form. The following information should be passed to the Card Form: card capture key, price, and the option whether to include the stored card in the Card Form or not. Verifone SDK will provide your app with the encrypted card data, shopper name and card brand. Send the encrypted data along with additional information about the order to the backend.
  3. Initiate a Create JWT transaction with the encrypted data.
  4. Receive the JWT from your backend.
  5. Send the JWT back to the SDK to complete the 3DS setup. After the setup is complete, a device ID will be generated.
  6. Send the device ID to your backend.
  7. Perform a lookup request using the encrypted data and the device ID.
  8. The 3DS API will return a payload and transaction ID.
  9. Forward the payload and transaction ID to the SDK to complete the authentication.
  10. If the authentication is successful, an authentication ID will be generated. After the ID is generated, send it to the backend.
  11. Initiate a JWT Validation with the JWT and authentication ID. Continue with the standard card transaction.

Card Payments with 3DS Flow

Need help?

Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

Not yet a Verifone customer?

We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

Verifone logo