3DS Cards for Testing
A 3DS check may end up with one of the following outcomes.
-
3DS check successful
fz.sca.success
event is triggered by fatzebra.js. If you own your own payments form and use theverifyCard
method of fatzebra.js to perform 3DS checks, 3DS result data will be provided in thefz.sca.success
event payload. Using this 3DS result data in your Purchase or Refund API call will qualify that transaction for liability shift. -
Please note: The edge case is when the enrolled field (ver) comes back as 'N' (3DS success - Not Enrolled), which means "No, Bank is not participating in 3-D Secure protocol". If the Enrolled value is equal to N, then the Consumer is NOT eligible for Authentication (No liability shift).
-
3DS check unsuccessful
fz.sca.error
event is triggered by fatzebra.js. An error code will be returned in the event payload indicating the reason for the error. This could be due to the card issuer not support 3DS2 or if the cardholder was unable to verify their card when prompted with a 3DS challenge flow (e.g. they entered the wrong one-time pin that was sent to their mobile device). -
Server Error or timeout.
fz.sca.error
event is triggered by fatzebra.js. No error code will be returned in the event payload. In this event we recommend that you prompt your users to retry the 3DS check/payment.
Test cards
FatZebra provides a number of test cards to simulate various 3DS scenarios in the Sandbox environment. Each of the following card numbers will simulate a predetermined outcome:
Successful 3DS2 check
Scenario | Cards |
---|---|
Successful frictionless authentication Cardholder being authenticated by their Card Issuer -- Liability shift | Visa: 4000000000001000 |
Attempts processing frictionless authentication | Visa: 4000000000001026 |
Successful step-up authentication | Visa: 4000000000001091 |
fz.sca.success sample payload
{
"message": "FatZebra.3DS: 3DS success - Successful Frictionless Authentication",
"data": {
"cavv": "xxx",
"par": "xxx",
"sli": "xxx",
"xid": "xxx",
"ver": "xxx",
"directoryServerTxnId": "xxx",
"threedsVersion": "xxx"
}
}
Unsuccessful 3DS check
Scenario | Card | Error code |
---|---|---|
Unsuccessful enrolment check Enrolment failed by card issuer -- No liability shift | Visa: | 002 |
Unsuccessful frictionless authentication | Visa: 4000000000001018 | 004 |
Unavailable frictionless authentication | Visa: 4000000000001034 | 003 |
Rejected frictionless authentication | Visa: 4000000000001042 | 005 |
Authentication not available on lookup | Visa: 4000000000001059 | 002 |
Server Error | Visa: 4000000000001067 | |
Timeout | Visa: 4000000000001075 | |
Bypassed authentication | Visa: 4000000000001083 | 001 |
Unsuccessful step-up authentication | Visa: 4000000000001109 | 006 |
Unavailable step-up authentication | Visa: 4000000000001117 | 007 |
fz.sca.error sample payload
{
"errors": [
"FatZebra.3DS: 3DS error - Rejected Frictionless Authentication"
],
"data": {
"errorCode": "005"
}
}
Updated 7 days ago