Testing Payment on Sandbox

Sandbox Environment can be used to create "testing" transactions (usually performed from your development/testing environment). All transaction made within this environment mode is not "real", and does not require "real payment/fund". This environment is created automatically when you are signing up, and free to use.

In the Sandbox environment, Midtrans uses web-based simulator to simulate a response from payment provider or bank's system. This helps to test different scenarios that can happen on production, without actually doing real payments.

This is the list of payment credentials that you can use on Midtrans Sandbox environment. Please note that, it will not work on Production environment.




Card Payments


The table given below lists the details to be entered for simulating credit card transactions. All cards listed below already support 8 digit BINS.


InputValue
Expiry Month01 (or any month)
Expiry Year2025 (or any future year)
CVV123
OTP/3DS112233
Card NumberRefer to table given below.

General


VISA

Description

Full Authentication
Cardholder is 3DS ready

  • *Accept Transaction:**4811 1111 1111 1114
    **Denied by Bank Transaction:** 4911 1111 1111 1113

Attempted Authentication
Cardholder is not
enrolled for 3DS

  • *Accept Transaction:**4411 1111 1111 1118
    **Denied by FDS Transaction:**4611 1111 1111 1116
    **Denied by Bank Transaction:** 4711 1111 1111 1115

MASTERCARD

Description

Full Authentication
Cardholder is 3DS ready

  • *Accept Transaction:**5211 1111 1111 1117
    **Denied by Bank Transaction:** 5111 1111 1111 1118

Attempted Authentication
Cardholder is not
enrolled for 3DS

  • *Accept Transaction:**5410 1111 1111 1116
    **Denied by FDS Transaction:**5411 1111 1111 1115
    **Denied by Bank Transaction:** 5511 1111 1111 1114

JCB

Description

Full Authentication
Cardholder is 3DS ready

  • *Accept Transaction:**3528 2033 2456 4357
    **Denied by Bank Transaction:** 3528 5129 4493 2269

Attempted Authentication
Cardholder is not
enrolled for 3DS

  • *Accept Transaction:**3528 8680 4786 4225
    **Denied by FDS Transaction:**3528 1852 6717 1623
    **Denied by Bank Transaction:** 3528 9097 7983 7631

American Express (AMEX)

Description

Full Authentication
Cardholder is 3DS ready

  • *Accept Transaction:**3701 9216 9722 458
    **Denied by Bank Transaction:** 3742 9635 4400 881

Attempted Authentication
Cardholder is not
enrolled for 3DS

  • *Accept Transaction:**3737 4772 6661 940
    **Denied by FDS Transaction:**3780 9621 8340 018
    **Denied by Bank Transaction:** 3703 5609 7975 856

China Union Pay (CUP)

Description

Full Authentication
Cardholder is 3DS ready

  • *Accept Transaction:**6212 4878 9242 5802
    **Denied by Bank Transaction:** 6212 4841 2968 7072

Attempted Authentication
Cardholder is not
enrolled for 3DS

  • *Accept Transaction:**6212 4895 0662 1198
    **Denied by FDS Transaction:**6212 4825 3517 8193 972
    **Denied by Bank Transaction:** 6212 4842 2863 5865

FDS refers to our Fraud Detection System. "Denied by FDS" means to simulate a transaction that is being denied because it is suspected as fraudulent.


📘

Note

Not all acquiring banks support JCB, Amex, or CUP cards. Please contact us for more information or assistance with activation of JCB, Amex, or CUP acceptance.


Bank-Specific

This is useful for Installment/Promo scenario which require bank specific card.


Accepted 3D Secure Card

Bank

Card Number

<span>

  • *Mandiri**
    Full Authentication


4617 0069 5974 6656*


5573 3810 7219 6900

Attempted Authentication

4617 0017 4194 2101*

5573 3819 9982 5417

  • *Mandiri Debit**
    Full Authentication


4097 6611 1111 1113*

Attempted Authentication

4097 6611 1111 1139*

*Card not available for online installment/promo
  • *CIMB**
    Full Authentication


4599 2078 8712 2414


5481 1698 1883 2479

Attempted Authentication

4599 2039 9705 2898

5481 1671 2103 2563

  • *BNI**
    Full Authentication


4105 0586 8948 1467


5264 2210 3887 4659

Attempted Authentication

4105 0525 4151 2148

5264 2249 7176 1016

BNI Private Label

1946 4159 8148 7684*

*Card only acceptable via BNI Acquiring.
  • *BCA**
    Full Authentication


4773 7760 5705 1650


5229 9031 3685 3172

Attempted Authentication

4773 7738 1098 1190

5229 9073 6430 3610

  • *BRI**
    Full Authentication


4365 0263 3573 7199


5520 0298 7089 9100

Attempted Authentication

4365 0278 6723 2690

5520 0254 8646 8439

  • *MEGA**
    Full Authentication


4201 9100 0000 0009


5221 0300 0000 0009

Attempted Authentication

4201 9100 0000 0017

5221 0300 0000 0017

  • *Maybank**
    Full Authentication


4055 7720 2603 6004


5520 0867 5210 2334

Attempted Authentication

4055 7713 3514 4012

5520 0867 7490 8452


Denied Card

Bank

Card Number

<span>

Mandiri

4617 0085 6083 1760

5573 3840 4322 4447

Mandiri Debit

4097 6676 7217 8631

CIMB

4599 2060 0973 3090

5481 1691 9178 2739

BNI

4105 0541 4854 1363

5264 2235 3013 1711

BNI Private Label

1946 4102 7193 1269

BCA

4773 7752 0201 1809

5229 9034 0542 3830

BRI

4365 0286 6251 2583

5520 0219 0920 3008

MEGA

4201 9100 0000 0025

5221 0300 0000 0025

Maybank

4055 7796 2846 0474

5520 0883 1465 3770


Denied Card By Response Code

Card NumberResponse CodeNote
4472 4298 6999 667051Any amount will return RC:51.
4806 0000 0000 008151The amount needs to be greater than Rp 30,000

Offline Card

It is used for testing a specific scenario where the card is not eligible for online transactions, which result in Deny transaction status.

BrandCard Number
VISA4705 8595 1098 4866
MASTERCARD5597 5189 2656 1951

📘

Note

  • General card number is used for general feature testing of card payment.
  • Bank specific card number is useful for testing advanced card features (on-us/off-us installments, whitelist BIN, promo, and so on) that require card from specific bank.

3D Secure Version Specific

📘

3DS 2 Behavior Change Notice

To reflect the changes that has been applied to our Production Environment, on 31st January 2023 similar changes is applied to Sandbox Environment. The changes are summarized as follows:

  • Most/all acquirer bank MIDs within merchants’ sandbox accounts is upgraded to allow accepting 3DS 2. The previously MIGS acquirer MID's channel will be replaced with MPGS. Which will change the transaction's value of channel_response_message and channel_response_code. As explained in this notice.
  • All sandbox testing cards (that were previously 3DS 1) are upgraded to 3DS 2. Including cards listed under General and Bank Specific tabs.
  • These changes are supposed to be seamless, not cause breaking, and not require changes of implementation from the merchant side (except IF merchant is still using a very old pre-2019 card integration flow, then card transaction will be treated as 3DS 1).
  • Background context: 3DS 1 has been phased-out & upgraded to 3DS 2 in Production Environment & industry wide. Hence the same are applied to Sandbox.

3D Secure 2

Specific cards for testing 3DS 2 card payment scenario.


VISA

Description

Card 3DS 2 Enrolled.
frictionless 3DS (3DS input NOT prompted)

  • *Accept:**4556 5579 5572 6624
    Accept: 4024 0071 8944 9340
    **Deny:** 4485 4364 5535 4151

Card 3DS 2 Enrolled.
challenged by 3DS (3DS input prompted)

  • *Accept:**4916 9940 6425 2017
    **Deny:4604 6331 9421 9929

    Result stillPending initially(will become
    Accept** after 60sec delay):
    4024 0071 7626 5022

3DS authentication is either failed or could not be attempted; possible reasons being both card and Issuing Bank are not secured by 3DS(technical errors or improper configuration).

  • *Deny:** 4716 1250 5984 7899

MASTERCARD

Description

Card 3DS 2 Enrolled.
frictionless 3DS (3DS input NOT prompted)

  • *Accept:**5333 2591 5564 3223
    **Deny:** 5328 7203 8458 2224

Card 3DS 2 Enrolled.
challenged by 3DS (3DS input prompted)

  • *Accept:**5306 8899 4283 3340
    **Deny:5424 1840 4982 1670

    Result stillPending initially(will become
    Accept** after 60sec delay):
    5487 9716 3133 0522

3DS authentication is either failed or could not be attempted; possible reasons being both card and Issuing Bank are not secured by 3DS(technical errors or improper configuration).

  • *Deny:** 5250 5486 9206 9390

AMEX

Description

Card 3DS 2 Enrolled.
frictionless 3DS (input NOT prompted)

  • *Accept:**3415 0209 8634 895
    **Deny:** 3456 9539 9207 589

Card 3DS 2 Enrolled.
challenged by 3DS (3DS input prompted)

  • *Accept:**3486 3826 7931 507
    **Deny:3720 2110 6351 394

    Result stillPending initially(will become
    Accept** after 60sec delay):
    3451 9777 1649 926

3DS authentication is either failed or could not be attempted; possible reasons being both card and Issuing Bank are not secured by 3DS(technical errors or improper configuration).

  • *Deny:** 3794 5219 9603 6850

3D Secure 1

Specific cards for testing outdated 3DS 1 card payment scenario, which will be rejected due to no longer supported.

BrandCard Number
Visa4723249479082225
MasterCard5555666677771111
JCB3528927894502153
Amex3419184532253540



E-Wallet


🚧

QRIS Simulator Intermittent Issue

Currently there's an issue with QRIS simulator affecting some of our older merchant accounts. If QRIS simulator doesn't work for you, please reach out to [email protected].


Payment Methods

Description

GoPay

On mobile platform you are automatically redirected to GoPay Simulator.
On desktop, QR Code image is displayed. To perform a test transaction, input the QR Code image URL in QRIS Simulator

Other Notes:

  • For GoPay Tokenization testing phone numbers in Sandbox, please refer to this list
  • In case you need to manually input GoPay Deeplink URL, use GoPay Deeplink Simulator
  • Older version (in case your Sandbox account was still configured under older version, prior to November 4th 2024) of the simulators URL: QRIS Simulator and GoPay QR Simulator

ShopeePay

On mobile platform you are automatically redirected to ShopeePay Simulator.

On desktop, QR Code image is displayed. To perform a test transaction, input the QR Code image URL in QRIS Simulator.

In case you need to manually input Deeplink URL, use Deeplink Simulator

QRIS

To perform a test transaction, copy the QR Code image URL and input it into QRIS Simulator

Other Notes:

  • *[DEPRECATED] **Indosat Dompetku
  • *Accept number:08123456789
    Deny number:** other than 08123456789
  • *[DEPRECATED] **Mandiri E-cash
  • *Accept number:**0987654321
    **PIN:**12345
    **OTP:** 12123434

📘

Note

On Sandbox, Midtrans uses web-based payment simulator. So, payment that requires app deeplink like GoPay, will use web simulator instead of real app deeplink. To test real app deeplink use cases, please use Midtrans Production Environment.




Bank Transfer


Payment MethodsDescription
Permata Virtual AccountMidtrans will generate a dummy Permata Virtual Account Number. To perform a test transaction, use the Permata Virtual Account Simulator - Open API and choose Permata as the bank.
BCA Virtual AccountMidtrans will generate a dummy BCA Virtual Account Number. To perform a test transaction, use the BCA Virtual Account Simulator.
Mandiri Bill PaymentMidtrans will generate a Payment Code to complete payment via Mandiri e-channel (Internet Banking, SMS Banking, Mandiri ATM). To perform a test transaction, use the Mandiri Bill Payment Simulator - Open API and choose Mandiri as the bank, input company code as bill code and Mandiri Bill number as bill key.
BNI Virtual AccountMidtrans will generate a dummy BNI Virtual Account Number. To perform a test transaction, use the BNI Virtual Account Simulator.
BRI Virtual AccountMidtrans will generate a dummy BRI Virtual Account Number. To perform a test transaction, use the BRI Virtual Account Simulator - Open API and choose BRI as the bank.
CIMB Virtual AccountMidtrans will generate a dummy CIMB Virtual Account Number. To perform a test transaction, use the CIMB Virtual Account Simulator - Open API and choose CIMB as the bank.



Convenience Store


Payment MethodsDescription
IndomaretMidtrans will generate a dummy Indomaret Payment Code. To perform a test transaction, use the Indomaret Simulator.
AlfamartMidtrans will generate a dummy Alfamart Payment Code. To perform a test transaction, use the Alfamart Simulator.
KiosonMidtrans will generate a dummy Kioson Payment Code. To perform a test transaction, use the Kioson Simulator.



Google Pay


To test, join Google Pay™ test environment here. Register as member of Google Pay™ API Test Cards using the email that you will use to do the test checkout. Registration will be auto approved.

After joining the test environment, test cards will automatically appear in your Google Pay™ wallet

These test cards will ONLY appear when you're signed in with your registered Google Account in test environment
Test cards will NOT appear in production environment.


Success CardsDecline Cards
Visa : 4811 1111 1111 1114Visa: 4811 1111 1111 1114
Mastercard: 5211 1111 1111 1117Mastercard: 5111 1111 1111 1118



Cardless Credit


Payment MethodsDescription
AkulakuMidtrans will automatically redirect to Akulaku simulator page. Test credentials will be displayed.
KredivoMidtrans will automatically redirect to Kredivo simulator page. Test credentials will be displayed.



Note & Limitation


Sandbox Env Should Not be Paid with Real Payment

📘

Note

Do not attempt to pay with a real-world payment-provider/bank to a transaction created in the Sandbox environment. Sandbox transactions cannot be paid with real payment, and should only be paid with the Sandbox Payment Simulator/Credentials explained in this page.

​​Midtrans will not be responsible and may not be able to help you recover any real-world payment funds if you do such an action.

Explanation: A payment reference generated on Midtrans Sandbox environment (VA number, QR image, etc.), may possibly be the same reference that is also active on the payment provider’s real environment. If you make a real payment to it, the funds will be routed to the real payment provider’s environment instead, which often the funds will not reach Midtrans. So please keep the environmental difference in mind.

QRIS Specific

For QRIS payment method, usually the sandbox reference will refer to the same Merchant ID you have in your Midtrans Production environment, real payment made there can possibly be routed to your Midtrans Production account. You can try to login to your Midtrans Production account, and may find payment with Order ID formatted as: QRIS-{generated_id}, which you can also try to refund.