Search...
Log inGet started
Airwallex logo
Home
Core API
Payments
Transactional FX
Payouts
Issuing
Back to home
OverviewChoose your payments solutionGet started with payments
Online payments
Invoice integrations
Test and go live
Integration checklistTest card numbers
Card data migration

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.

PANCard SchemeCard TypeAmountIssuer Response CodeIssuer Response DescriptionInternal Error CodeError Message
4035 5010 0000 0008VisaAnyThis card will always make payment succeed regardless of amount----
4012 0003 0000 1003VisaCredit80.5959Suspected fraudissuer_declinedThe issuer declined this transaction.
4012 0003 0000 1003VisaCredit80.0707Pick up Cardissuer_declinedThe issuer declined this transaction.
4646 4646 4646 4644VisaCreditAnyN/AN/Arisk_declinedDeclined by fraud risk engine
2223 0000 1018 1375MastercardDebit80.0505Do not Honorissuer_declinedThe issuer declined this transaction.
5307 8373 6054 4518MastercardCredit80.0505Do not Honorissuer_declinedThe issuer declined this transaction.
2223 0000 1018 1375MastercardDebit80.1414Invalid Card Numberissuer_declinedThe issuer declined this transaction.
5307 8373 6054 4518MastercardCredit80.1414Invalid card numberissuer_declinedThe issuer declined this transaction.
2223 0000 1018 1375MastercardDebit80.5151Insufficient Fundsissuer_declinedThe issuer declined this transaction.
5307 8373 6054 4518MastercardCredit80.5151Insufficient Fundsissuer_declinedThe issuer declined this transaction.
3703 5368 7686779American ExpressCredit81.00100Denyissuer_declinedThe card issuer declined this transaction.
3706 3680 3809 394American ExpressAnyThis card will always make the payment succeed regardless of the amount----
3569 5999 9909 7585JCBAnyThis card will always make the payment succeed regardless of the amount----
6011 2009 0000 0000000DiscoverAnyThis card will always make the payment succeed regardless of the amount----
3609 5355 9056 9202DinersAnyThis card will always make the payment succeed regardless of the amount----
6250 9410 0652 8599UnionPayDebitThis card will always make the payment succeed regardless of the amount----
6252 4701 4444 4939UnionPayCreditThis card will always make the payment succeed regardless of the amount----
1111 1111 1111 1111InvalidAnyAny--validation_errorThe 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

StageScenarioTrigger ConditionMessage
Payment SuccessFrictionless Mode Success without device data collectioncard: 4012000300000005200 OK
Payment SuccessChallenge Mode Success without device data collectioncard: 4012000300000062(OTP input 1234)200 OK
Payment SuccessFrictionless Mode Success with device data collectioncard: 4012000300000021200 OK
Payment SuccessChallenge Mode Success with device data collectioncard: 4012000300000088(OTP input 1234)200 OK
Payment Fail(authentication failed) at 3DSFrictionless Mode(NOT ENROLLED), fail at confirm API callcard: 4012000300000013400 { "code": "authentication_declined", "message": "User failed 3DS authentication." }
Payment Fail(authentication failed) at 3DSFrictionless Mode(NOT ENROLLED), fail at confirm API callcard: 4012000300000047400 { "code": "no_3ds_liability_shift", "message": "Declined due to no 3DS liability shift." }
Payment Fail(authentication failed) at 3DSChallenge Mode, fail at the second confirm_continue(after user input OTP code)card: 4012000300000070400 {"code": "authentication_declined", "message": "User failed 3DS authentication." }
Payment Fail(authorization failed) at authorizationFrictionless Mode(NOT ENROLLED), fail at confirm API callcard: 4012000300000039 amount: 88.88400 { "code": "authentication_declined", "message": "User failed 3DS authentication." }
Payment Fail (authentication failed) at 3DSChallenge Mode, fail at the second confirm_continue(after user input OTP code)card: 4012000300000070 amount: 88.88400 {"code": "authentication_declined", "message": "User failed 3DS authentication." }
Payment Fail (authentication failed) at 3DSChallenge Mode, fail at the second confirm_continue(after user input OTP code)card: 4012000300000104 amount: 88.88400 { "code": "no_3ds_liability_shift", "message": "Declined due to no 3DS liability shift." }
Payment Fail rejected at 3DSFail at confirm API call, rejected by 3dscard: 5582464537874128 (mastercard anonymous card)400 { "code": "3ds_not_supported", "message": "3DS is required but not supported by this card." }
Payment Fail rejected at 3DSFail at confirm API call, rejected by 3dscreate intent with force3ds param. card: 4012000300000138 (visa anonymous card)400 { "code": "3ds_not_supported", "message": "3DS is required but not supported by this card." }