Third Party 3DS Providers
How to use 3rd party 3DS Providers with the Vrio API
Below is a guide on how to pass parameters to the Vrio API if you are using a 3rd party 3DS provider ( such as PAAY ) to generate authentication data before you attempt payment.
Vrio will pass all variables to the payment gateways that are posted over the API. If there are variables or scenarios where you do not want the data to be sent to the gateway, do not pass them to the Vrio API
Some 3rd Party providers will allow you to authenticate multiple cycles for a subscription, pass each cycle as an array. For example, if a cycle 1 and cycle 2 are authenticated, you would pass order_cardholder_auth = ["Y","Y"].
Gateways that Vrio currently support that allow 3DS variables to be passed are as follows
- Checkout.com
- Alto Global
- Authorize.net
- Axcess
- Fluidpay
- Inovio
- Link4Pay
- NMI
- Paysafe
- Processing.com
- Rocketgate
- Worldpay
order_cardholder_auth | Indicates whether a transaction qualifies as an authenticated transaction or account verification. Array of values (for each transaction cycle). | Example : guide on |
order_eci | E-commerce indicator. Array of values (for each transaction cycle). | Below is a |
order_cavv | Cardholder authentication verification value. Array of values (for each transaction cycle). | Example : guide on how to pass parameters to the Vrio API if you are using |
order_xid | Cardholder authentication transaction id. Array of values (for each transaction cycle) | Version 1 3D SECURE ONLY |
order_3ds_enrollment_status | Indicates whether a transaction qualifies as a being enrolled for 3DS authentication. Array of values (for each transaction cycle). | Example : guide on |
order_3ds_version | Version of the 3D Secure that was used when the transaction was already authenticated using an external MPI. For example: 1.0.2 or 2.1.0. Array of values (for each transaction cycle). | Example : guide on how to |
order_3ds_ds_transaction_id | Cardholder authentication transaction id. Array of values (for each transaction cycle). | Version 2+ 3D SECURE ONLY Example : the Vrio API if you are using a 3rd party 3DS provider ( such as PAAY ) to g |
order_3ds_bypass_reattempt | If this flag is passed, 3ds values will not be posted to the gateway for reattempts. Array of values (for each transaction cycle). | Example : guid |
redirect_url | Redirect url used for 3ds three step process, PayPal, Klarna and Afterpay |
Pass an array of values to use for each corresponding cycle.
These values are in Vrio API documentation under /orders.
Common ERROR:XID data must be 20 bytes REFID:1160745918This happens either when a user tries with one card brand like visa, the trans declines, then they use another card brand like MasterCard but using the tokens obtained from the visa.
Or the wrong XID value is being passed.
Authenticated Status & ECI
Authenticated Status
Y Authenticated
A Attempted. Proof of (Liability is still shifted. Network stepped in for the authentication.)
C Requiring a Cardholder challenge to complete authentication
N Not authenticated
U Authentication could not be performed due to a technical or other problem
R Issuer is rejecting authentication and requesting that authorization not be attempted
ECI
01 Authenticated
02 Attempted (Liability is still shifted. Network stepped in for the authentication.)
00 Not Authenticate
05 Authenticated
06 Attempted (Liability is still shifted. Network stepped in for the authentication.)
07 Not Authenticate
Multiple 3DS Account Setup
If you have more than one account with paay.co, you can use the Vrio API simulates they payment router to determine which key the javascript should show.
Contact [email protected] for multiple 3DS accounts on a single merchant.
Updated 21 days ago