3DS 1.0 Test Cases
Standard 1.0 Test Cases (All Card Networks)
With the sunset of 3DS 1.0 across most regions around the globe, we have changed how our mock ACS will respond on 3DS 1.0 test cases. If the request meets the EMV 3DS criteria, the transaction will be routed as an EMV 3DS transaction (AReq instead of VEReq). In this case, the response returned will be an error since our mock ACS does not have context of the 1.0 test card within the EMV 3DS range.
If merchants want to run 3DS 1.0 test transactions, we recommend the EMV 3DS configuration be disabled on their profile.
The expiration year used in the Test Value should reflect the current year +3.
For Example: If the current year is 2020, the Expiration Date Test Value would be 01/2023.
SignatureVerification should always equal Y on the Lookup Response message. If this is ever observed as another value, please reach our to your account representative or Cardinal Support.
NOTE: one exception to this would be in Enrolled=U test scenarios. SignatureVerification will not be returned.
- 1 Standard 1.0 Test Cases (All Card Networks)
- 1.1 Test Case 1: Successful Authentication
- 1.2 Test Case 2: Failed Signature
- 1.3 Test Case 3: Failed Authentication
- 1.4 Test Case 4: Attempts/Non-Participating
- 1.5 Test Case 5: Timeout
- 1.6 Test Case 6: Not Enrolled
- 1.7 Test Case 7: Unavailable
- 1.8 Test Case 8: Merchant Not Active
- 1.9 Test Case 9: cmpi_lookup error
- 1.10 Test Case 10: cmpi_authenticate error
- 1.11 Test Case 11: Authentication Unavailable
- 1.12 Test Case 12: Bypassed Authentication
Test Case 1: Successful Authentication | |
Scenario | Cardholder enrolled, successful authentication, successful signature verification. |
Test Values | Visa PAN: 4000000000000002 |
MasterCard PAN: 5200000000000007 | |
JCB J/Secure PAN: 3520000000000922 | |
American Express PAN: 340000000003961 | |
Diners Club PAN: 3005000000006246 | |
Discover (Diners Club) PAN: 6011000000000004 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = <Enrolled>Y</Enrolled> |
Payload = <Payload Value> <Payload>eyJtZXNzYWdlVHlwZSI6IkNSZXEiLCJtZXNzYWdlVmVyc2lvbiI6IjIuMS4wIiwidGhyZWVEU1NlcnZlclRyYW5zSUQiOiI4MmEyZjkzMy02ZTA0LTRiOWEtOGQ5NS05ZGZlYTY0OTM3MmIiLCJhY3NUcmFuc0lEIjoiMTczNGM4MDMtZTE2OC00MTUwLTk4ZTgtMjIxYjIzOWM3NzliIiwiY2hhbGxlbmdlV2luZG93U2l6ZSI6IjAyIn0</Payload> | |
ErrorNo = <ErrorNo>0</ErrorNo> ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| PAResStatus = |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
XID = <XID Value> | |
CAVV = <CAVV Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | On the Lookup Response, ACSUrl will be returned |
ActionCode = ErrorNumber = ErrorDescription = | |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should append the CAVV and EciFlag values to the authorization message. |
Liability Shift | Yes |
Test Case 2: Failed Signature | |
Scenario | Cardholder enrolled, successful authentication, unsuccessful signature verification. |
Test Values | Visa PAN: 4000000000000010 |
MasterCard PAN: 5200000000000015 | |
JCB PAN: 3520000000002811 | |
American Express PAN: 340000000006022 | |
Diners Club PAN: 3005000000004373 | |
Discover PAN: 6011000000000012 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
Payload = <Payload Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| PAResStatus = |
SignatureVerification = | |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
XID = <XID Value> | |
CAVV = <CAVV Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | On the Lookup Response, ACSUrl will be returned |
ActionCode = ErrorNumber = ErrorDescription = | |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should NOT continue authorization, due to the failed signature verification. Merchant should prompt for another form of payment or attempt to authenticate the consumer. |
Liability Shift | No |
Test Case 3: Failed Authentication | |
Scenario | Cardholder enrolled, unsuccessful authentication, successful signature verification. |
Test Values | Visa PAN: 4000000000000028 |
Mastercard PAN: 5200000000000023 | |
JCB PAN: 3520000000009931 | |
American Express PAN: 340000000000033 | |
Diners Club PAN: 3005000000005925 | |
Discover PAN: 6011000000000020 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
Payload = <Payload Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| PAResStatus = |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
XID = <XID Value> | |
CAVV = (value will not be provided) | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | On the Lookup Response, ACSUrl will be returned |
ActionCode = ErrorNumber = ErrorDescription = | |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should NOT continue with authorization. Merchant should prompt for another form of payment and is not permitted to submit this transaction for authorization. |
Liability Shift | No |
Test Case 4: Attempts/Non-Participating | |
Scenario | Passive Authentication - cardholder not prompted for authentication credential. |
Test Values | Visa PAN: 4000000000000101 |
Mastercard PAN: N/A (Mastercard will not stand in on 1.0 attempts) | |
JCB PAN: 3520000000004767 | |
American Express PAN: 340000000003391 | |
Diners Club PAN: 3005000000005271 | |
Discover PAN: 6011000000000038 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
Payload = <Payload Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| Enrolled = |
PAResStatus = | |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
CAVV = <CAVV Value> | |
XID = <XID Value> | |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | On the Lookup Response, ACSUrl will be returned |
ActionCode = ErrorNumber = ErrorDescription = | |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Configuration | |
Merchant Action | Merchant should append the Cavv and the EciFlag to the authorization message. |
Liability Shift | Yes |
Test Case 5: Timeout | |
Scenario | Timeout encountered while processing the cmpi_lookup transaction. |
Test Values | Visa PAN: 4000000000000044 |
Mastercard PAN: 5200000000000049 | |
JCB PAN: 3520000000001284 | |
American Express PAN: 340000000008309 | |
Diners Club PAN: 3005000000001890 | |
Discover PAN: 6011000000000046 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = <Enrolled Value> Expected Enrolled Value grouped by Network:
|
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| cmpi_authenticate message does not apply in this case. |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | ActionCode = ErrorNumber = ErrorDescription = |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | The cmpi_lookup transaction will simulate a timeout scenario from a response perspective. Merchant integration should handle timeout processing after 10-12 seconds and proceed with the authorization message. |
Liability Shift | No |
Test Case 6: Not Enrolled | |
Scenario | Cardholder not enrolled. Issuing Bank not participating. |
Test Values | Visa PAN: 4000000000000051 |
Mastercard PAN: 5200000000000056 | |
JCB PAN: 3520000000006903 | |
American Express PAN: 340000000008135 | |
Diners Club PAN: 3005000000007269 | |
Discover PAN: 6011000000000053 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = N |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| cmpi_authenticate message does not apply in this case. |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | ActionCode = ErrorNumber = ErrorDescription = |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should submit the authorization with an ECI value. |
Liability Shift | No |
Test Case 7: Unavailable | |
Scenario | Authentication unavailable (lookup message response). |
Test Values | Visa PAN: 4000000000000069 |
Mastercard PAN: 5200000000000064 | |
JCB PAN: 3520000000002423 | |
American Express PAN: 340000000007780 | |
Diners Club PAN: 3005000000006030 | |
Discover PAN: 6011000000000061 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| cmpi_authenticate message does not apply in this case. |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | ActionCode = ErrorNumber = ErrorDescription = |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should proceed with the authorization message. |
Liability Shift | No |
Test Case 8: Merchant Not Active | |
Scenario | Merchant not able to execute transactions due to a "not active" state. |
Test Values | Visa PAN: 4000000000000077 |
Mastercard PAN: 5200000000000072 | |
JCB PAN: 3520000000006549 | |
American Express PAN: 340000000008416 | |
Diners Club PAN: 3005000000004837 | |
Discover PAN: 6011000000000079 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| cmpi_authenticate message does not apply in this case. |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | ActionCode = ErrorNumber = ErrorDescription = |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should continue with the authorization and contact technical support to investigate and resolve the issue. |
Liability Shift | No |
Test Case 9: cmpi_lookup error | |
Scenario | Error response to cmpi_lookup message. |
Test Values | Visa PAN: 4000000000000085 |
Mastercard PAN: 5200000000000080 | |
JCB PAN: 3520000000002175 | |
American Express PAN: 340000000006337 | |
Diners Club PAN: 3005000000009877 | |
Discover PAN: 6011000000000087 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| cmpi_authenticate message does not apply in this case. |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | ActionCode = ErrorNumber = ErrorDescription = |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should continue with the authorization and contact technical support to investigate and resolve the issue. |
Liability Shift | No |
Test Case 10: cmpi_authenticate error | |
Scenario | Cardholder enrolled, error response to cmpi_authenticate message. |
Test Values | Visa PAN: 4000000000000093 |
Mastercard PAN: 5200000000000098 | |
JCB PAN: 3520000000006861 | |
American Express PAN: 340000000009299 | |
Diners Club PAN: 3005000000005602 | |
Discover PAN: 6011000000000095 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
Payload = <Payload Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| PAResStatus = (value will not be provided) |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
XID = (value will not be provided) | |
CAVV = (value will not be provided) | |
ErrorNo = ErrorDesc = | |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | On the Lookup Response, ACSUrl will be returned |
ActionCode = ErrorNumber = ErrorDescription = | |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchants have the option of retaining the liability and submitting the transaction as non-authenticated. An alternative action would be to prompt for another form of payment. |
Liability Shift | No |
Test Case 11: Authentication Unavailable | |
Scenario | Cardholder is enrolled but authentication is unavailable |
Test Values | Visa PAN: 4000000000000036 |
Mastercard PAN: 5200000000000031 | |
JCB PAN: 3520000000005780 | |
American Express PAN: 340000000000116 | |
Diners Club PAN: 3005000000007376 | |
Discover PAN: 6011000000000103 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = |
Payload = <Payload Value> | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| PAResStatus = |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
XID = <XID Value> | |
CAVV = (value will not be provided) | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | On the Lookup Response, ACSUrl will be returned |
ActionCode = ErrorNumber = ErrorDescription = | |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant can retry authentication or process authorization as merchant liability. |
Liability Shift | No |
Test Case 12: Bypassed Authentication | |
Scenario | Bypass used to simulate a scenario where merchant has elected to bypass the consumer authentication flow via Cardinal Rules Engine configuration. |
Test Values | Visa PAN: 4000990000000004 |
Mastercard PAN: 5200990000000009 | |
JCB PAN: 3500990000000001 | |
American Express PAN: 340099000000001 | |
Diners Club PAN: 3000990000000006 | |
Discover PAN: 6011990000000006 | |
Expected Results - Lookup Response (cmpi_lookup) | |
| Enrolled = B |
EciFlag = <ECI Value> Expected ECI Values grouped by Network:
| |
Payload = (value will not be provided) | |
ErrorNo = ErrorDesc = (value will not be provided) | |
Expected Results - Authenticate Response (cmpi_authenticate) | |
| cmpi_authenticate message does not apply in this case. |
Integration Method Specific Expected Results | |
Cardinal Cruise Standard & Hybrid | ActionCode = ErrorNumber = ErrorDescription = |
Cardinal Cruise API | N/A |
Additional Information | |
Merchant Action | Merchant should proceed with authorization message. |
Liability Shift | No |