Other Banks

Other Banks is a bank transfer payment method to support payment from any banks in Indonesia. How this works is Snap will be masking the designated open loop (support payment from any bank) virtual account and present it in SNAP as Other Bank. This feature is handy for users who are not familiar on how Virtual Account works, hence might not understand which Virtual Account can support payment from their bank of choice (e.g. Permata Virtual Account, despite the name, can actually accept payments from all banks in Indonesia).

To use this feature, make sure that you have at least BNI or Permata VA active in your merchant account.

To configure which bank you will set as Other Banks, go to you Snap Preference Setting in Midtrans's dashboard, go to Bank List, and set your desired Virtual Account as Other Banks in the Other Bank/ATM Bank Processor menu.

Steps to integrate :

  1. Send the charge API request to Midtrans.
  2. Redirect your customer back to your page by configuring Finish URL in Midtrans's Dashboard > Snap Preferences or via [API Request] (/docs/snap-advanced-feature#custom-finish-url).
  3. Handle notifications.

By default, default expiry time for bank transfer is 24 hours unless specified by merchant (min 20s, max 180 days).


Once set, your customer will see your Snap payment list as shown below :


Any payment made by users who choose 'Other Bank' will then be processed as regular transaction of the designated open loop virtual account.

You can also show Other Bank as a single payment method via API request (provided that you have performed the configuration in Snap Settings as shown above) - see below.

Sample JSON Request Body

  "transaction_details": {
    "order_id": "ORDER-101",
    "gross_amount": 10000
  "item_details": [{
    "id": "ITEM1",
    "price": 10000,
    "quantity": 1,
    "name": "Midtrans Bear",
    "brand": "Midtrans",
    "category": "Toys",
    "merchant_name": "Midtrans"
  "customer_details": {
    "first_name": "TEST",
    "last_name": "MIDTRANSER",
    "email": "[email protected]",
    "phone": "+628123456"
  "enabled_payments": ["other_va"]
Transaction Details Object (required)
Unique transaction ID
Item Details Object (optional)
Shopping item details will be paid by customer
Customer Details Object (optional)
Details of the customer
Array (optional)
Set what payment method to show in Snap's payment list. Value: other_va

For a full list of request body parameters please refer to the Request Body (JSON Parameter) section.