Indonesia

Learn everything you need to know to make payouts in Indonesia with dLocal.

Market specifications

Take a look of all the information you need to make a payout.

Country reference Mandatory paramenters

Payment methods

Find all the information about payment methods capabilities.

Bank transfers Wallet transfers

Bank information

Find all the bank account validations details you need to make a payout.

Bank codes

Market specifications

Do you want to know more information about Indonesia's market? Go to the Indonesia’s economy and eCommerce market article.

Country reference

country codecurrency codeamount decimalsdocument.type namedocument.id format
IDIDR2NIK16 digits

Mandatory parameters

Bank transfers

Bank transfer parametersB2CB2BP2P
external_idYesYesYes
payment_method_idYesYesYes
flow_typeYesYesYes
countryYesYesYes
amountYesYesYes
currencyYesYesYes
purposeYesYesYes
beneficiary.first_nameYesYesYes
beneficiary.last_nameYesYesYes
beneficiary.phoneYesYesYes
beneficiary.bank_account.codeYesYesYes
beneficiary.bank_account.accountYesYesYes
remitter.first_name--Yes
remitter.last_name--Yes
remitter.nationality--Yes
remitter.document.type--Yes
remitter.document.id--Yes

Wallet transfers

Wallet transfer parametersB2CB2BP2P
external_idYesYesYes
payment_method_idYesYesYes
flow_typeYesYesYes
countryYesYesYes
amountYesYesYes
currencyYesYesYes
purposeYesYesYes
beneficiary.first_nameYesYesYes
beneficiary.last_nameYesYesYes
beneficiary.instant_payment.idYesYesYes
beneficiary.instant_payment.typeYesYesYes
remitter.first_name--Yes
remitter.last_name--Yes
remitter.nationality--Yes
remitter.document.type--Yes
remitter.document.id--Yes

Payment methods

Indonesia supports payouts via Bank transfers and Wallet transfers. Each method requires specific parameters and follows validation rules aligned with local compliance and banking standards.

Use Wallet transfers for instant payments to mobile wallets. Use Bank transfers when sending funds directly to a bank account.

Bank transfers

Bank transfers in Indonesia require detailed account information, including bank code, bank account number, amount, currency, and phone number. The format of these fields depends on the receiving bank, and strict validation rules apply.

Refer to the bank codes section for format specifications.

Mandatory parameters

All fields listed below are required for bank transfer payouts. For successful processing, ensure correct formatting and value types.

Mandatory parameterDescription
external_idUnique transaction identifier. Maximum 100 characters.
payment_method_idPayment method. For bank transfers, use BANK_TRANSFER.
flow_typePayout flow type. Valid values: B2C (Business to Consumer), B2B (Business to Business), or P2P (Person to Person).
purposePayout purpose code. See purpose codes reference.
countryCountry code. For Indonesia, use ID.
amountPayout amount (in the currency set in the currency field). Use up to 2 decimal numbers.
currencyPayout currency. For Indonesia, use IDR or USD.
beneficiary.first_nameBeneficiary's first name. Maximum 50 characters.
beneficiary.last_nameBeneficiary's last name. Only applies when the beneficiary is an individual. Maximum 50 characters.
beneficiary.phoneBeneficiary's phone number. Maximum 15 characters.
beneficiary.bank_account.codeBeneficiary's bank account code. See bank codes below.
beneficiary.bank_account.accountBeneficiary's bank account number. Maximum 45 characters.
remitter.first_nameRemitter's first name. Maximum 50 characters. Mandatory only for remittance (P2P).
remitter.last_nameRemitter's last name. Maximum 50 characters. Mandatory only for remittance (P2P).
remitter.nationalityRemitter's nationality. ISO 3166-1 alpha-2 code. Mandatory only for remittance (P2P).
remitter.document.typeRemitter's document type: ID for national identification number, PASS for passport. Mandatory only for remittance (P2P).
remitter.document.idRemitter's document. Maximum 45 characters. Mandatory only for remittance (P2P).

Example request

{
  "external_id": "32221233222220kk",
  "payment_method_id": "BANK_TRANSFER",
  "flow_type": "B2C",
  "purpose": "SUPPLIER",
  "country": "ID",
  "amount": 10,
  "currency": "IDR",
  "type": "json",
  "notification_url": "https://thisisawebsite.net/payments",
  "beneficiary": {
    "first_name": "John",
    "last_name": "Mills",
    "phone": "8346583658",
    "bank_account": {
      "code": "3",
      "account": "0213880962"
    }
  }
}
{
  "external_id": "32221233222220kk",
  "payment_method_id": "BANK_TRANSFER",
  "flow_type": "P2P",
  "purpose": "REMITTANCES",
  "country": "ID",
  "amount": 10,
  "currency": "IDR",
  "type": "json",
  "notification_url": "https://thisisawebsite.net/payments",
  "beneficiary": {
    "first_name": "John",
    "last_name": "Mills",
    "phone": "8346583658",
    "bank_account": {
      "code": "3",
      "account": "0213880962"
    }
  },
  "remitter": {
    "first_name": "Ashley",
    "last_name": "Peterson",
    "nationality": "US",
    "document": {
      "type": "PASS",
      "id": "1234567789"
    }
  }
}

Wallet transfers

Wallet transfers enable real-time transfers using a mobile phone number linked to a wallet.

The instant_payment.type field must indicate the type of wallet being used (e.g., Gopay, Ovo, Dana, LinkAja, ShopeePay). The instant_payment.id field (which contains the phone number) must be present and correctly formatted.

Mandatory parameters

The table below outlines the required parameters for Wallet transfers.

Mandatory parameterDescription
external_idPayout identification at the merchant's end. Maximum 100 characters.
payment_method_idPayment method. For wallet, use INSTANT_PAYMENT.
flow_typePayout flow type. Valid values: B2C (Business to Consumer), B2B (Business to Business), or P2P (Person to Person).
countryCountry code. For Indonesia, use ID.
amountPayout amount (in the currency set in the currency field). Use up to 2 decimal places.
currencyPayout currency. For Indonesia, use IDR or USD.
purposePayout purpose code. See purpose codes reference.
beneficiary.first_nameBeneficiary's first name. Maximum 50 characters.
beneficiary.last_nameBeneficiary's last name. Only applies when the beneficiary is an individual. Maximum 50 characters.
beneficiary.instant_payment.idBeneficiary's wallet ID. Maximum 45 characters.
beneficiary.instant_payment.typeBeneficiary's instant payment account type. Type of wallet being used: GOPAY, OVO, DANA, LINKAJA, SHOPEEPAY.
remitter.first_nameRemitter's first name. Maximum 50 characters. Mandatory only for remittance (P2P).
remitter.last_nameRemitter's last name. Maximum 50 characters. Mandatory only for remittance (P2P).
remitter.nationalityRemitter's nationality. ISO 3166-1 alpha-2 code. Mandatory only for remittance (P2P).
remitter.document.typeRemitter's document type:ID for national identification number, PASS for passport. Mandatory only for remittance (P2P).
remitter.document.idRemitter's document. Maximum 45 characters. Mandatory only for remittance (P2P).

Example request

{
  "external_id": "123456789",
  "payment_method_id": "INSTANT_PAYMENT",
  "flow_type": "B2C",
  "purpose": "OTHER_SERVICES",
  "country": "ID",
  "amount": 10,
  "currency": "IDR",
  "type": "json",
  "notification_url": "https://thisisawebsite.net/payments",
  "beneficiary": {
    "first_name": "Lucia",
    "last_name": "Diaz",
    "instant_payment": {
      "id": "8346583658",
      "type": "OVO"
    }
  }
}
{
  "external_id": "123456789",
  "payment_method_id": "INSTANT_PAYMENT",
  "flow_type": "P2P",
  "purpose": "REMITTANCES",
  "country": "ID",
  "amount": 10,
  "currency": "IDR",
  "type": "json",
  "notification_url": "https://thisisawebsite.net/payments",
  "beneficiary": {
    "first_name": "Lucia",
    "last_name": "Diaz"
  },
  "instant_payment": {
    "id": "8346583658",
    "type": "OVO"
  },
  "remitter": {
    "first_name": "Ashley",
    "last_name": "Peterson",
    "nationality": "US",
    "document": {
      "type": "PASS",
      "id": "1234567789"
    }
  }
}

Bank information

Access the reference formats and accepted values required for processing bank payouts in Indonesia.


Bank codes


Bank NameBank Code
Anglomas International Bank7
Bangkok Bank14
Bank Agris3
Bank Amar Indonesia (formerly Anglomas International Bank)5
Bank Andara6
Bank ANZ Indonesia8
Bank Arta Niaga Kencana9
Bank Artha Graha International10
Bank Artos Indonesia (Bank Jago)11
Bank Bisnis Internasional20
Bank BJB21
Bank BJB Syariah22
Bank BNP Paribas24
Bank BRI Agroniaga4
Bank Bukopin30
Bank Bumi Arta32
Bank Capital Indonesia34
Bank Central Asia (BCA)16
Bank Central Asia (BCA) Syariah18
Bank Central Asia Digital (BluBCA)17
Bank Chinatrust Indonesia37
Bank CIMB Niaga38
Bank CIMB Niaga UUS39
Bank Commonwealth41
Bank Danamon44
Bank Danamon UUS45
Bank DBS Indonesia46
Bank Dinar Indonesia48
Bank DKI49
Bank DKI UUS50
Bank Fama International52
Bank Ganesha53
Bank Hana54
Bank Harda Internasional55
Bank Himpunan Saudara 190656
Bank ICBC Indonesia59
Bank Ina Perdania60
Bank Index Selindo61
Bank Jasa Jakarta65
Bank JTrust Indonesia (formerly Bank Mutiara)71
Bank Kesejahteraan Ekonomi79
Bank Mandiri82
Bank Maspion Indonesia84
Bank Mayapada International85
Bank Maybank86
Bank Maybank Syariah Indonesia87
Bank Mayora88
Bank Mega89
Bank Mestika Dharma91
Bank Mitra Niaga92
Bank Mizuho Indonesia94
Bank MNC Internasional95
Bank Muamalat Indonesia96
Bank Multi Arta Sentosa97
Bank Nationalnobu98
Bank Negara Indonesia (BNI)23
Bank Nusantara Parahyangan102
Bank OCBC NISP103
Bank OCBC NISP UUS104
Bank Oke Indonesia (formerly Bank Andara)105
Bank of America Merill-Lynch13
Bank of China (BOC)25
Bank of India Indonesia62
Bank of Tokyo Mitsubishi UFJ (MUFJ)137
Bank Panin106
Bank Panin Syariah107
Bank Permata109
Bank Permata UUS110
Bank QNB Indonesia (formerly Bank QNB Kesawan)112
Bank Rabobank International Indonesia113
Bank Rakyat Indonesia (BRI)26
Bank Resona Perdania115
Bank Royal Indonesia118
Bank Sahabat Sampoerna119
Bank SBI Indonesia120
Bank Shinhan Indonesia (formerly Bank Metro Express)121
Bank Sinarmas122
Bank Sinarmas UUS123
Bank Sumitomo Mitsui Indonesia93
Bank Syariah Bukopin31
Bank Syariah Indonesia (BSI)33
Bank Syariah Mega90
Bank Tabungan Negara (BTN)27
Bank Tabungan Negara (BTN) UUS28
Bank Tabungan Pensiunan Nasional (BTPN)136
Bank UOB Indonesia138
Bank Victoria Internasional139
Bank Victoria Syariah140
Bank Woori Indonesia141
Bank Woori Saudara Indonesia 1906 (formerly Bank Himpunan Saudara and Bank Woori Indonesia)142
Bank Yudha Bhakti (Bank Neo Commerce)143
BPD Aceh1
BPD Aceh UUS2
BPD Bali12
BPD Banten (formerly Bank Pundi Indonesia)15
BPD Bengkulu19
BPD Daerah Istimewa Yogyakarta (DIY)42
BPD Daerah Istimewa Yogyakarta (DIY) UUS43
BPD Jambi63
BPD Jambi UUS64
BPD Jawa Tengah66
BPD Jawa Tengah UUS67
BPD Jawa Timur68
BPD Jawa Timur UUS69
BPD Kalimantan Barat72
BPD Kalimantan Barat UUS73
BPD Kalimantan Selatan74
BPD Kalimantan Selatan UUS75
BPD Kalimantan Tengah76
BPD Kalimantan Timur77
BPD Kalimantan Timur UUS78
BPD Lampung80
BPD Maluku81
BPD Nusa Tenggara Barat99
BPD Nusa Tenggara Barat UUS100
BPD Nusa Tenggara Timur101
BPD Papua108
BPD Riau Dan Kepri116
BPD Riau Dan Kepri UUS117
BPD Sulawesi Tengah125
BPD Sulawesi Tenggara126
BPD Sulselbar127
BPD Sulselbar UUS128
BPD Sulut129
BPD Sumatera Barat130
BPD Sumatera Barat UUS131
BPD Sumsel Dan Babel132
BPD Sumsel Dan Babel UUS133
BPD Sumut134
BPD Sumut UUS135
BTPN Syariah (formerly BTPN UUS and Bank Sahabat Purba Danarta)29
Centratama Nasional Bank36
China Construction Bank Indonesia (formerly Bank Antar Daerah and Bank Windu Kentjana International)35
Citibank40
Deutsche Bank47
Hongkong and Shanghai Bank Corporation (HSBC) UUS58
HSBC Indonesia (formerly Bank Ekonomi Raharja)57
Indonesia Eximbank (formerly Bank Ekspor Indonesia)51
JP Morgan Chase Bank70
Mandiri Taspen Pos (formerly Bank Sinar Harapan Bali)83
Prima Master Bank111
Royal Bank of Scotland (RBS)114
Standard Charted Bank124