- Home
- All APIs
- Access Worldpay
- 3DS2 API
- 3DS Testing
Important: Test values have changed in API version v3 of 3DS. Go here for the
3DS Testing
Test your 3DS integration on the Try environment using the magic values provided below. Send requests and see simulated responses.
For theCardinalEnvironment.STAGING
as part of the CardinalConfigurationParameters
to use the test values on the Access Try environment.
Tokens
If you're creating tokens containing the test card numbers you must delete the token before creating another with the same PAN. You are prevented from creating another token using the same PAN. As an alternative, you can also change the namespace
used as part of the token creation.
Liability shift
Liability shift is confirmed on payment authorization. The
Test Card Number
Use different card numbers to alter the 3DS authentication outcome.
Important: Do not mix the old test values used for API v1/v2 with the new ones for API v3 or you will get unexpected scenario outcomes. Set the cardHolderName
to any other value e.g. Bob Smith
Important: Always use a test card number from the tables below. Using a number not listed will result in the challenge failing to load for both web and SDK.
Common Issues
Issue | Cause |
---|---|
Mobile SDK: challenge page fails to load, producing one of the following errors
|
|
Web Integration: challenge page fails to load |
|
3DS2
Test Scenario | Description | Test Values | Authentication outcome | Verification outcome | Liability shift | Action |
---|---|---|---|---|---|---|
Successful Authentication (Frictionless) |
| authenticated | N/A | Yes | Apply authentication object in payment request, proceed with payment authorization | |
Failed Frictionless Authentication |
| authenticationFailed | N/A | No | Do not proceed with payment authorization. Either retry 3DS or prompt for another form of payment. | |
Attempts Stand-In Frictionless Authentication | Cardholder is enrolled in 3DS but the issuer does not support. This results in the issuer stand-in for the authentication |
| authenticated | N/A | Yes | Apply authentication object in payment request, proceed with payment authorization |
Authentication Unavailable (issuer) | Cardholder is enrolled but authentication is unavailable |
| unavailable | N/A | No | Proceed as non-authenticated transaction or retry authentication request |
Authentication Rejected | Authentication rejected by the issuer, no challenge is offered |
| authenticationFailed | N/A | No | Do not proceed with payment authorization. Either retry 3DS or prompt for another form of payment. |
Authentication Unavailable (system error) | Authentication rejected by the issuer, no challenge is offered |
| unavailable | N/A | No | Proceed as non-authenticated transaction or retry authentication request |
Authentication Error | Error whilst attempting authentication |
| unavailable | N/A | No | Proceed as non-authenticated transaction or retry authentication request |
Authentication Timeout | Timeout during the authentication request |
| unavailable | N/A | No | Proceed as non-authenticated transaction or retry authentication request |
Successful Authentication (Challenged) | Issuer prompts a challenge in authentication, customer responds successfully |
| challenged | authenticated | Yes | Apply authentication object in payment request, proceed with payment authorization |
Failed Challenged Authentication | Issuer prompts a challenge in authentication, customer responds with incorrect details (e.g. OTP, fingerprint etc) |
| challenged | authenticationFailed | No | Do not proceed with payment authorization. Either retry 3DS or prompt for another form of payment. |
Verification Unavailable | Authentication data following a challenge cannot be retrieved |
| challenged | unavailable | No | Proceed as non-authenticated transaction or retry verification request |
Verification Error | Error whilst attempting verification |
| challenged | unavailable | No | Proceed as non-authenticated transaction or retry verification request |
Bypass | Bypass the consumer authentication flow via Cardinal Rules Engine configuration. Returned if 3DS premium is enabled or when there is a timeout connecting to the 3DS directory server. |
| bypassed | N/A | No | Proceed as non-authenticated transaction |
3DS1
3DS1 has been largely decommissioned and now only applies to a small number of countries:
- Visa: Bangladesh, Bhutan, Maldives, Nepal, India, Sri Lanka (domestic) - Ending Oct 12th 2023
- Mastercard: India and Bangladesh (domestic and cross boarder) - Ending Oct 3rd 2023
- AMEX: India - Ending Oct 13th 2023
A 3DS1 notEnrolled
response is still being returned for some traffic and should be tested against.
Test Scenario | Description | Test Values | Authentication outcome | Verification outcome | Liability shift | Action |
---|---|---|---|---|---|---|
Not Enrolled | Cardholder not enrolled. Issuing Bank not participating. |
| notEnrolled | N/A | No | Apply authentication object in payment request (only contains ECI) |
The remaining 3DS1 test cases are now disabled by default and will only return an 'unavailable' response. You can request them to be enabled if necessary.
Test Scenario | Description | Test Values | Authentication outcome | Verification outcome | Liability shift | Action |
---|---|---|---|---|---|---|
Successful Authentication (Challenge) | Issuer prompts a challenge in authentication, customer responds successfully |
| challenged | authenticated | Yes | Apply authentication object in payment request, proceed with payment authorization |
Failed Signature | Successful authentication but unsuccessful signature verification |
| challenged | signatureFailed | No | Do not proceed with payment authorization. Either retry 3DS or prompt for another form of payment. |
Failed Authentication | Issuer prompts a challenge in authentication, customer responds with incorrect details (e.g. OTP, fingerprint etc) |
| challenged | authenticationFailed | No | Do not proceed with payment authorization. Either retry 3DS or prompt for another form of payment. |
Attempts/Non-Participating | Challenge attempted but the card issuer doesn't support 3DS, card scheme provides authentication details for this case. |
| challenged | authenticated | Yes | Apply authentication object in payment request, proceed with payment authorization |
Authentication Timeout | Timeout during the authentication request |
| unavailable | N/A | No | Proceed as non-authenticated transaction or retry authentication request |
Not Enrolled | Cardholder not enrolled. Issuing Bank not participating. |
| notEnrolled | N/A | No | Apply authentication object in payment request (only contains ECI) |
Authentication unavailable |
| unavailable | N/A | No | Proceed with payment authorization or retry authentication request | |
Authentication Error | Error response from authentication request |
| unavailable | N/A | No | Proceed with payment authorization |
Verification Error | Error response from verification request |
| challenge | unavailable | No | Proceed as non-authenticated transaction or use alternative payment method |
Verification unavailable | Cardholder is enrolled but verification is unavailable |
| challenged | unavailable | No | Proceed as non-authenticated transaction or retry verification request |
Bypassed | Bypass the consumer authentication flow via Cardinal Rules Engine configuration. Returned if 3DS premium is enabled or when there is a timeout connecting to the 3DS directory server. |
| bypassed | NA | No | Proceed with payment authorization |