Test card numbers
Airwallex helps merchants confirm that their integration is successful with a suite of test cards. This will allow merchants to perform test transactions before going live.
Those cards numbers will simulate payments with different error codes in your test environment.
PAN | Card Scheme | Card Type | Amount | Issuer Response Code | Issuer Response Description | Internal Error Code | Error Message |
---|---|---|---|---|---|---|---|
4035 5010 0000 0008 | Visa | Any | Any | This card will always make payment succeed regardless of amount | |||
4012 0003 0000 1003 | Visa | Credit | 80.59 | 59 | Suspected fraud | issuer_declined | The issuer declined this transaction. |
4012 0003 0000 1003 | Visa | Credit | 80.07 | 07 | Pick up Card | issuer_declined | The issuer declined this transaction. |
2223 0000 1018 1375 | Mastercard | Debit | 80.05 | 05 | Do not Honor | issuer_declined | The issuer declined this transaction. |
5307 8373 6054 4518 | Mastercard | Credit | 80.05 | 05 | Do not Honor | issuer_declined | The issuer declined this transaction. |
2223 0000 1018 1375 | Mastercard | Debit | 80.14 | 14 | Invalid Card Number | issuer_declined | The issuer declined this transaction. |
5307 8373 6054 4518 | Mastercard | Credit | 80.14 | 14 | Invalid card number | issuer_declined | The issuer declined this transaction. |
2223 0000 1018 1375 | Mastercard | Debit | 80.51 | 51 | Insufficient Funds | issuer_declined | The issuer declined this transaction. |
5307 8373 6054 4518 | Mastercard | Credit | 80.51 | 51 | Insufficient Funds | issuer_declined | The issuer declined this transaction. |
3703 5368 7686779 | American Express | 81.00 | 100 | Deny | issuer_declined | The card issuer declined this transaction. | |
3706 3680 3809 394 | American Express | Any | This card will always make the payment succeed regardless of the amount | - | - | - | |
3569 5999 9909 7585 | JCB | Any | This card will always make the payment succeed regardless of the amount | - | - | - | |
4646 4646 4646 4644 | Visa | Credit | Any | N/A | N/A | risk_declined | Declined by fraud risk engine |
1111 1111 1111 1111 | Invalid | Any | Not applicable | Not applicable | validation_error | The card number is invalid. |
Amounts following this format $8x.xx
are generally used to trigger error cases. Airwallex does not recommend using those amounts when expecting a successful transaction. The CVC (or CVV) and the expiry year can be anything.
The below section includes more details to help merchants test different 3DS scenarios.
3DS Authentication scenarios
Stage | Scenario | Trigger Condition | Message |
---|---|---|---|
Payment Success | Frictionless Mode Success without device data collection | card: 4012000300000005 | 200 OK |
Payment Success | Challenge Mode Success without device data collection | card: 4012000300000062(OTP input 1234) | 200 OK |
Payment Success | Frictionless Mode Success with device data collection | card: 4012000300000021 | 200 OK |
Payment Success | Challenge Mode Success with device data collection | card: 4012000300000088(OTP input 1234) | 200 OK |
Payment Fail(authentication failed) at 3DS | Frictionless Mode(NOT ENROLLED), fail at confirm API call | card: 4012000300000013 | 400 { "code": "authentication_declined", "message": "User failed 3DS authentication." } |
Payment Fail(authentication failed) at 3DS | Frictionless Mode(NOT ENROLLED), fail at confirm API call | card: 4012000300000047 | 400 { "code": "no_3ds_liability_shift", "message": "Declined due to no 3DS liability shift." } |
Payment Fail(authentication failed) at 3DS | Challenge Mode, fail at the second confirm_continue(after user input OTP code) | card: 4012000300000070 | 400 {"code": "authentication_declined", "message": "User failed 3DS authentication." } |
Payment Fail(authorization failed) at authorization | Frictionless Mode(NOT ENROLLED), fail at confirm API call | card: 4012000300000039 amount: 88.88 | 400 { "code": "authentication_declined", "message": "User failed 3DS authentication." } |
Payment Fail (authentication failed) at 3DS | Challenge Mode, fail at the second confirm_continue(after user input OTP code) | card: 4012000300000070 amount: 88.88 | 400 {"code": "authentication_declined", "message": "User failed 3DS authentication." } |
Payment Fail (authentication failed) at 3DS | Challenge Mode, fail at the second confirm_continue(after user input OTP code) | card: 4012000300000104 amount: 88.88 | 400 { "code": "no_3ds_liability_shift", "message": "Declined due to no 3DS liability shift." } |
Payment Fail rejected at 3DS | Fail at confirm API call, rejected by 3ds | card: 5582464537874128 (mastercard anonymous card) | 400 { "code": "3ds_not_supported", "message": "3DS is required but not supported by this card." } |
Payment Fail rejected at 3DS | Fail at confirm API call, rejected by 3ds | create intent with force3ds param. card: 4012000300000138 (visa anonymous card) | 400 { "code": "3ds_not_supported", "message": "3DS is required but not supported by this card." } |