Testing

Testing Values for Payer Authentication

The following Test Cards simulate example authentication scenarios. We recommend running these Test Cards before going live to ensure your integration is successful and accurate.

1. Put your account in Test Mode

2. Provide test cards

Provide these test cards to ThreeDSecure#createUI().

Test Card 1: Successful Frictionless Flow

This test demonstrates that the issuing bank has authenticated the cardholder without needing to challenge them.

Card Number: 4000000000002701
Result: ThreeDSecureUI will emit a complete event.

{  
    xid: null,  
    cavv: "Y2FyZGluYWxjb21tZXJjZWF1dGg=",  
    eci: "05",  
    cardHolderAuth: "verified",  
    threeDsVersion: "2.2.0",  
    directoryServerId: "3f6fb1f8-f719-46c9-905b-bab446f4de30"  
    cardHolderInfo: null,  
}

Test Card 2: Failed Frictionless

This test demonstrates that the issuing bank has failed to authenticate the cardholder without needing to challenge them. This does not indicate a technical problem.

Card Number: 4000000000002925
Result: ThreeDSecureUI will emit a failure event.

{
    code: "TRANSACTION_STATUS_N",
    message: "Not Authenticated/Account Not Verified; Transaction denied"
}

Test Card 3: Attempted Frictionless Flow

This test demonstrates a cardholder that is enrolled in 3DSecure but the issuing bank does not support it.

Card Number: 4000000000002719
Result: ThreeDSecureUI will emit a complete event.

{
    xid: null,
    cavv: "Y2FyZGluYWxjb21tZXJjZWF1dGg=",
    eci: "06",
    cardHolderAuth: "attempted",
    threeDsVersion: "2.2.0",
    directoryServerId: "3f6fb1f8-f719-46c9-905b-bab446f4de30"
    cardHolderInfo: null,
}

Test Card 4: Unavailable Authentication

This test demonstrates that authentication is unavailable for some technical reasons.

Card Number: 4000000000002313
Result: ThreeDSecureUI will emit a failure event.

{
    code: "TRANSACTION_STATUS_U",
    message: "Authentication/Account Verification Could Not Be Performed; Technical or other problem"
}

Test Card 5: Rejected Authentication

This test demonstrates that the issuing bank has rejected authentication for the cardholder without needing to challenge them. This does not indicate a technical problem.

Card Number: 4000000000002537
Result: ThreeDSecureUI will emit a failure event.

{
    code: "TRANSACTION_STATUS_R",
    message: "Authentication/ Account Verification Rejected; Issuer is rejecting authentication/verification"
}

Test Card 6: Unknown Error

This test demonstrates that an unknown error has occurred due to a technical error.

Card Number: 4000000000002990
Result: ThreeDSecureUI will emit an error event with:

{  
    refId: '1234',  
    message: "Invalid Formatted Message Invalid Formatted Message",  
    type: 'gatewayError',  
    error: new Error("...")  
}

Test Card 7: Timeout Error

This test demonstrates that an error has occurred due to a technical error.

Card Number: 4000000000002354
Result: ThreeDSecureUI will emit an error event with:

{  
    refId: '1234',  
    message: "Transaction Timed Out",  
    type: 'gatewayError',  
    error: new Error("...")  
}

Test Card 8: Successful Step Up

This test demonstrates that the issuing bank has decided to challenge the user and successfully authenticates the result.

Card Number: 4000000000002503
Result: After the ThreeDSecureUI is started, it will display an interface prompting the user for a password. When completed, the ThreeDSecureUI will emit a complete event with:

{  
    xid: null,  
    cavv: "MTIzNDU2Nzg5MDEyMzQ1Njc4OTA=",  
    eci: "05",  
    cardHolderAuth: "verified",  
    threeDsVersion: "2.2.0",  
    directoryServerId: "19304dc2-58e0-497f-8508-f434c45a7a05"  
    cardHolderInfo: null,  
}

Test Card 9: Failed Step Up

This test demonstrates that the issuing bank has decided to challenge the user and fails to authenticate the cardholder.

Card Number: 4000000000002370
Result: After the ThreeDSecureUI is started, it will display an interface prompting the user for a password. When completed, the ThreeDSecureUI will emit a failure event with:

{  
    code: "TRANSACTION_STATUS_N",  
    message: "Not Authenticated/Account Not Verified; Transaction denied"  
}

Test Card 10: Unavailable Step Up

This test demonstrates that the issuing bank has decided to challenge the user and authentication is unavailable.

Card Number: 4000000000002420
Result: After the ThreeDSecureUI is started, it will display an interface prompting the user for a password. When completed, the ThreeDSecureUI will emit a failure event with:

{  
    code: "TRANSACTION_STATUS_U",  
    message: "Authentication/Account Verification Could Not Be Performed; Technical or other problem"  
}

Test Card 11: Error on Authentication

This test demonstrates that an unknown error occurred during authentication.

Card Number: 4000000000002644
Result: After the ThreeDSecureUI is started, it will display an interface prompting the user for a password. When completed, the ThreeDSecureUI will emit an error event with:

{  
    refId: null,  
    message: "A 3DS error occurred: Error Processing PARes",  
    type: "gatewayError",  
    error: Error("A 3DS error occurred: Error Processing PARes)"  
}