Test Scenarios
Before accepting real payment, you can use testing cards in this section to satisfy the testing requirements and scenarios for you to simulate different process results in development mode.
Authentication and Charge Testing Cards
Simulating Failed Charge Transactions
Schema | Card Number | 3DS Case | Charge | Expected Behavior |
---|---|---|---|---|
VISA | 4000000000001091 | 3DS EMV 2.0 Challenge | ✅ | Card is enrolled in 3DS EMV 2.0 and will trigger challenge flow. Popup page will be generated and OTP will be requested. |
Mastercard | 5200000000001096 | 3DS EMV 2.0 Challenge | ✅ | Card is enrolled in 3DS EMV 2.0 and will trigger challenge flow. Popup page will be generated and OTP will be requested. |
JCB | 3337000000200004 | 3DS EMV 2.0 Challenge | ✅ | Card is enrolled in 3DS EMV 2.0 and will trigger challenge flow. Popup page will be generated and OTP will be requested. |
AMEX | 340000000001098 | 3DS EMV 2.0 Challenge | ✅ | Card is enrolled in 3DS EMV 2.0. The OTP page will be generated, without rendering and with auto success.*Simulated in test mode.*Note: this is for testing in development only. AMEX cards are only usable with certain acquirers. In Indonesia, you must have your own Merchant ID with BCA to accept AMEX cards. |
VISA | 4000000000001000 | 3DS EMV 2.0 Frictionless | ✅ | Card is enrolled in 3DS EMV 2.0 and will trigger frictionless flow. Popup page will be generated but 3DS will complete without requiring OTP. |
Mastercard | 5200000000001005 | 3DS EMV 2.0 Frictionless | ✅ | Card is enrolled in 3DS EMV 2.0 and will trigger frictionless flow. Popup page will be generated but 3DS will complete without requiring OTP. |
Mastercard | 4000000000000010 | 3DS Enabled | ✅ only success if skip 3DS | Card is enrolled in 3DS and can be used to test the authentication flow but will fail the authentication |
Mastercard | 5200000000000015 | 3DS Enabled | ✅ only success if skip 3DS | Card is enrolled in 3DS and can be used to test the authentication flow but will fail the authentication |
AMEX | 340000000006022 | 3DS Enabled | ✅ only success if skip 3DS | Card is enrolled in 3DS and can be used to test the authentication flow but will fail the authentication. Note: this is for testing in development only. AMEX cards are only usable with certain acquirers. In Indonesia, you must have your own Merchant ID with BCA to accept AMEX cards. |
VISA | 4000000000001075 | 3DS Enabled | ✅ only success if skip 3DS | Card is enrolled in 3DS but will fail due to timeout during the 3DS request. Useful for handling 3DS timeouts in your system. |
Mastercard | 5200000000001070 | 3DS Enabled | ✅ only success if skip 3DS | Card is enrolled in 3DS but will fail due to timeout during the 3DS request. Useful for handling 3DS timeouts in your system. |
BCA Card | 1889800000000171 | 3DS EnabledSafe Acceptance | ✅ Safe Acceptance | Card is enrolled in 3DS and can be used to test the authentication flow. This card only works for BCA PG MIDs. |
You can use these test amounts in the “amount” param in Charge requests to simulate the different reasons for failed charges.
Magic Amount | Failure Reason | Definition |
---|---|---|
10051 | EXPIRED_CARD | The card you are trying to capture has expired. |
10052 | ISSUER_SUSPECT_FRAUD | The card you are trying to capture has been declined by the issuing bank due to potential fraud suspicion. |
10053 | DECLINED_BY_PROCESSOR | The card you are trying to capture has been declined by the processor. |
10054 | INSUFFICIENT_BALANCE | The card you are trying to capture does not have enough balance to complete the capture. |
10055 | STOLEN_CARD | The card you are trying to capture has been marked as stolen. |
10056 | INACTIVE_OR_UNAUTHORIZED_CARD | The card you are trying to capture is inactive or unauthorized to perform the transaction. |
10057 | PROCESSOR_ERROR | The charge failed because there's an integration issue between the card processor and the bank. |
10058 | INVALID_CVV | The card you are trying to capture is declined due to unmatched CVV |
10059 | DECLINED_BY_ISSUER | The card you are trying to capture is declined by the issuing bank |
Installment Testing Cards
Installments are currently only available in Indonesia. For testing installments, make sure that the transaction amount is more or equal to at least IDR 500,000.
Issuing | Scheme | Card Number | Installment Options (Tenor) |
---|---|---|---|
BRI | Mastercard | 5454545454545454 | 3, 6, 12 |
BRI | VISA | 4000000000001091 | 3, 6, 12 |
BRI | JCB | 3337000000200004 | 3, 6, 12 |
BNI | Mastercard | 5200000000001096 | 3, 6, 12 |
BNI | JCB | 3338000000000569 | 3, 6, 12 |
Example of Get Charge Option API response object that support installment plan:
[
{
"count": 3,
"interval": "month",
"minimum_amount": 500000,
"acquirer": "BRI",
"currency": "IDR",
"description": "0%, 3 x IDR 333333.33",
"installment_amount": 333333.33
},
{
"count": 6,
"interval": "month",
"minimum_amount": 500000,
"acquirer": "BRI",
"currency": "IDR",
"description": "0%, 6 x IDR 166666.67",
"installment_amount": 166666.67
},
{
"count": 12,
"interval": "month",
"minimum_amount": 500000,
"acquirer": "BRI",
"currency": "IDR",
"description": "0%, 12 x IDR 83333.33",
"installment_amount": 83333.33
}
]
Last Updated on 2023-09-29