Interbank Transfer
API Information
Title |
API Account Inquiry/Interbank Transfer |
---|---|
Version |
v1.0 |
URL Sandbox |
|
URL Production |
Version Control
API Version |
Date |
Document Link |
Description |
---|---|---|---|
v2.0 |
4 September 2024 |
Halaman ini |
Baseline version |
v3.0 | 20 Feb 2025 | Halaman ini | Perubahan objek originatorInfos pada Request dan Response Transfer Antarbank. |
Product Description
Gambaran Produk
Fitur ini digunakan untuk mentransfer dana dari akun Pengguna Layanan Non-PJP, PJP PIAS, atau Lembaga PJP AIS Selain Bank, di Bank PJP AIS ke akun tujuan di Bank PJP AIS lain melalui perantara Penyedia Infrastruktur Pembayaran (PIP) seperti GPN atau BI-FAST.
Endpoint
A. Eksternal Account Inquiry
Endpoint ini digunakan untuk memvalidasi nomor dan nama rekening tujuan sebelum melakukan transfer antarbank atau BI-FAST.
General Information
HTTP Method |
POST |
---|---|
Path |
|
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Format |
Mandatory |
Length |
Description |
---|---|---|---|---|---|
Authorization |
Authorization |
String |
M |
|
Bearer {Token} |
X-TIMESTAMP |
timestamp |
Datetime |
M |
|
Format Timestamp ISO8601 |
X-SIGNATURE |
signature |
String |
M |
|
HMAC_SHA512 |
Content-type |
application/json |
|
M |
|
application/json |
X-PARTNER-ID |
|
Alphanumeric |
M |
36 |
|
CHANNEL-ID |
|
Alphanumeric |
M |
5 |
|
X-EXTERNAL-ID |
|
Numeric |
M |
36 |
|
Request Structure
Field |
Data Type |
Format |
Mandatory |
Length |
Deskripsi |
Contoh |
---|---|---|---|---|---|---|
beneficiaryBankCode |
String |
Numeric |
M |
8 |
Kode Bank tujuan |
|
beneficiaryAccountNo |
String |
Numeric |
M |
34 |
Rekening bank lain untuk transaksi (rekening asli/resolusi proxy) Gunakan tanda @ jika menggunakan resolusi proxy. Contoh @bankbri@corp.bri.co.id (untuk email resolusi proxy) atau @6285733347341(untuk nomor telepon resolusi proxy). Resolusi proxy khusus untuk BIFAST Inquiry. |
|
additionalInfo |
Object |
|
O |
|
|
|
>serviceCode | String | Numeric | M | 2 |
|
|
>deviceId |
String |
Alphanumeric |
O |
|
|
|
>channel |
String |
Alphanumeric |
O |
|
|
|
Response Structure & Sample
Field |
Data Type |
Format |
Mandatory |
Length |
Deskripsi |
Contoh |
---|---|---|---|---|---|---|
responseCode |
String |
Numeric |
M |
7 |
Response code |
2000000 |
responseMessage |
String |
Alphanumeric |
M |
250 |
response Message |
Successful |
referenceNo |
String |
Numeric |
O Note : SNAP BI (C) |
35 Note : SNAP BI length (64) |
Identifikasi transaksi pada pada sistem penyedia layanan. harus diisi setelah transaksi berhasil |
2020102977770000000009 |
beneficiaryAccountName |
String |
Alphanumeric |
M |
100 |
Nama Rekening Penerima |
John Doe |
beneficiaryAccountNo |
String |
Numeric |
M |
34 |
Nomor Rekening Penerima |
|
beneficiaryBankCode |
String |
Numeric |
O |
3 Note: SNAP BI length (8) |
Kode Bank penerima |
|
currency |
String |
Alphanumeric |
O |
3 |
Mata Uang |
IDR |
additionalInfo |
Object |
|
O |
|
|
mobilephone |
>externalId | String | O | 12 | |||
>registrationId | String | O | Registration ID | |||
>receiverName | String | O | Nama pemegang rekening tujuan transaksi. | |||
>accountNumber | String | O | Nomor rekening, respons ini akan muncul jika inquiry menggunakan resolusi proxy. | 888801000157508 | ||
>beneficiaryAccountType | String | O | Jenis nomor rekening. | |||
>receiverType | String | Numeric | O | 2 |
Types of recipients
|
|
>receiverIdentityNumber | String | Numeric | O | Recipient ID number | ||
>receiverResidentStatus | String | O | 2 |
Types of recipient population status
|
||
>receiverTownName | String | Numeric | O | 4 | ||
>deviceId |
String |
Alphanumeric |
O |
|
|
12345 679237 |
>channel |
String |
Alphanumeric |
O |
|
|
mobilephone |
Request & Response Payload Sample
Request Inquiry Real Account: :
{ "beneficiaryBankCode": "002", "beneficiaryAccountNo": "888801000157508", "additionalInfo": { "deviceId": "12345679237", "channel": "mobilephone" } }
Request Inquiry Proxy Account :
{ "beneficiaryBankCode": "", "beneficiaryAccountNo": "@6285733347341", "additionalInfo": { "serviceCode": "81", "deviceId": "12345679237", "channel": "mobilephone" } }
Normal Response Real Account:
{ "responseCode": "2001600", "responseMessage": "Successful", "referenceNo": "202203070000000001", "beneficiaryAccountName": "Dummy", "beneficiaryAccountNo": "888801000157508", "beneficiaryBankCode": "002", "beneficiaryBankName": "Bank BRI", "currency": "IDR", "additionalInfo": { "channel": "mobilephone", "deviceId": "12345679237" } }
Normal Response Proxy Account:
{ "responseCode": "2008100", "responseMessage": "Successful", "referenceNo": "202203070000000001", "beneficiaryAccountName": "Dummy", "beneficiaryAccountNo": "888801000157508", "beneficiaryBankCode": "002", "beneficiaryBankName": "Bank BRI", "currency": "IDR", "additionalInfo": { "channel": "mobilephone", "deviceId": "12345679237", "externalId": "53296848727", "registrationId": "0001230075", "receiverName": "KR DUMMY ACCOUNT TBXXXXXXXXXXXXXXXXXXXXX", "beneficiaryAccountType": "SVGS", "accountNumber": "020601000988301", "receiverType": "02", "receiverResidentStatus": "01", "receiverIdentityNumber": "1216728398362819", "receiverTownName": "0300" } }
Error Response :
{ "responseCode": "4001601", "responseMessage": "Invalid Field Format beneficiaryAccountCode" }
List of Error/Response Code
HTTP Status |
Service Code |
Code |
Status |
ResponseDescription |
Description |
---|---|---|---|---|---|
200 |
16 |
00 |
Sukses |
Successful |
|
400 |
16 |
01 |
Gagal |
Invalid Field Format {fieldName} |
|
400 |
16 |
02 |
Gagal |
Invalid Mandatory Field {fieldName} |
|
401 |
16 |
00 |
Gagal |
Unauthorized. Client |
|
403 |
16 |
15 |
Gagal |
Transaction Not Permitted. [reason] |
|
403 |
16 |
16 |
Pending |
Suspend Transaction |
|
403 |
16 |
18 |
Gagal |
Inactive Card/Account/Customer |
|
404 |
18 |
11 |
Gagal |
Invalid Card/Account/Customer[info]/Virtual Account |
|
500 |
16 |
00 |
Pending |
General Error |
|
504 |
16 |
00 |
Pending |
Timeout |
|
Tanggapan kesalahan apa pun yang tidak tercantum dalam daftar tanggapan BRIAPI dianggap tertunda dan memerlukan penyelidikan lebih lanjut.
B. Transfer Interbank
This endpoint is used to transfer funds from one Non-PJP Service User account, PJP PIAS, or PJP AIS Institutions Other Than Banks, at PJP AIS Bank to the destination account at another PJP AIS Bank through the intermediary of Payment Infrastructure Provider (PIP) such as GPN or BI-FAST.
General Information
HTTP Method |
POST |
---|---|
Path |
|
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Format |
Mandatory |
Length |
Deskripsi |
---|---|---|---|---|---|
Authorization |
Authorization |
String |
M |
|
Bearer {Token} |
X-TIMESTAMP |
timestamp |
Datetime |
M |
|
Format Timestamp ISO8601 |
X-SIGNATURE |
signature |
String |
M |
|
HMAC_SHA512 |
Content-type |
application/json |
|
M |
|
application/json |
X-PARTNER-ID |
|
Alphanumeric |
M |
36 |
|
CHANNEL-ID |
|
Alphanumeric |
M |
5 |
|
X-EXTERNAL-ID |
|
Numeric |
M |
36 |
|
Request Structure
Field |
Data Type |
Format |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|---|
partnerReferenceNo |
String |
Alphanumeric |
M |
Note : SNAP BI Length (64) |
Identifikasi transaksi pada sistem penyedia layanan |
2020102900000000000001 |
amount |
Object |
|
M |
|
|
|
>value |
String (ISO4 217) |
Decimal |
M |
15,2 Note : SNAP BI Length (16,2) |
Jumlah bersih transaksi, jika rupiah maka nilainya termasuk 2 angka desimal. misalnya 10.000 akan menjadi 10000.00 |
10000.00 |
>currency |
String |
Alphanumeric |
M |
3 |
Mata Uang |
IDR |
beneficiaryAccountName |
String |
Alphanumeric |
M |
100 |
Nama rekening penerima |
John Doe |
beneficiaryAccountNo |
String |
Numeric |
M |
16 Note : SNAP BI Length (34) |
Rekening Penerima |
|
beneficiaryAddress |
String |
Alphanumeric |
O |
100 |
Alamat penerima |
|
beneficiaryBankCode |
String |
Numeric |
M |
8 |
Kode Bank penerima |
002 |
beneficiaryBankName |
String |
Alphanumeric |
O |
50 |
Nama Bank penerima |
Bank BRI |
beneficiaryEmail |
String |
Alphanumeric |
O |
50 |
Email penerima |
john.doe@boz.com |
customerReference |
String |
Alphanumeric |
O |
Note : SNAP BI Length (30) |
Nomor referensi / No Referral / ID transaksi |
10052022 |
sourceAccountNo |
String |
Numeric |
M |
15 Note : SNAP BI Length (19) |
Nomor akun sumber |
888801000157520 |
transactionDate |
String |
Datetime |
M |
25 |
tanggal transaksi : ISO 8601 |
2021-11-25 |
additionalInfo |
Object |
|
O |
|
Informasi tambahan |
|
>deviceId |
String |
Alphanumeric |
M |
|
|
1234579237 |
>channel |
String |
Alphanumeric |
M |
|
|
mobilephone |
>serviceCode | String | Numeric | M | 2 |
|
|
>referenceNo | String | Alphanumeric | C | 35 | Unique reference number obtained from the results of the BI-Fast Account Information Inquiry | |
>externalId | String | Alphanumeric | C | 12 | BRI external ID obtained from the results of the BI-Fast Account Information Inquiry | |
>senderIdentityNumber | String | Varchar | C | 100 | Transaction sender's ID card number | |
>paymentInfo | String | O | 140 | Transaction details | ||
>senderType | String | Numeric | C | 2 |
Transaction sender type, select one from the list below:
|
|
>senderResidentStatus | String | Numeric | C | 2 |
Residential status of the transaction sender, select one from the list below:
|
|
>senderTownName | String | Varchar | C | 100 | City of origin of the transaction sender | |
>isRdn | String | Boolean | O |
Can be filled with true (for RDN accounts) or false (for non-RDN accounts) Note: Only for serviceCode 80 |
true | |
originatorInfos | Array of Objects | O | Customer Account Details of the Originator To be filled in if requested by the sender or if the sender's consent has been given. |
|||
>originatorCustomerNo | String | O | 34 |
The Originator Customer Account Details. To be filled if there is a request from the sender or if the consent from sender has been granted.
|
||
>originatorCustomerNo | O | Originator customer account number | ||||
>originatorCustomerName | String | O | 100 | Originatorcustomer account name | Iin | |
>originatorBankCode | String | O | 11 | Originator Bank Code |
Response Structure & Sample
Field |
Data Type |
Format |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|---|
responseCode |
String |
Numeric |
M |
7 |
Response code |
2001800 |
responseMessage |
String |
Alphanumeric |
M |
150 |
Response deskripsi |
Successful |
referenceNo |
String |
Numeric |
O Note : SNAP BI (C) |
35 Note : SNAP BI Length (64) |
Identifikasi transaksi pada pada sistem penyedia layanan. harus diisi setelah transaksi berhasil |
202112 |
partnerReferenceNo |
String |
Alphanumeric |
O |
|
Identifikasi transaksi pada sitem layanan konsumen |
2020102900000000000001 |
amount |
Object |
|
O |
|
|
|
>value |
String (ISO4217) |
Decimal |
M |
15,2 Note : SNAP BI Length (16,2) |
Jumlah bersih transaksi, jika rupiah maka nilainya termasuk 2 angka desimal. misalnya 10.000 akan menjadi 10000.00 |
10000.00 |
>currency |
String |
Alphanumeric |
M |
3 |
Mata Uang |
IDR |
beneficiaryAccountNo |
String |
Numeric |
M |
34 Note : SNAP BI Length (19) |
Nomor rekening penerima |
888801000157508 |
beneficiaryBankCode |
String |
Numeric |
O |
8 |
Kode Bank penerima |
002 |
sourceAccountNo |
String |
Numeric |
O |
15 Note : SNAP BI Length (19) |
Nomor akun sumber |
888801000157520 |
additionalInfo |
Object |
|
O |
|
Informasi tambahan |
|
>deviceId |
String |
Alphanumeric |
O |
|
|
12345679237 |
>channel |
String |
Alphanumeric |
O |
|
|
mobilephone |
>originalReferenceNo | String | C | 40 | The unique original reference number of the transfer transaction made will appear in the TLBD2 remark on the bank statement. | ||
>journalSequence | String | C | 7 | Journal sequence of transaction bookkeeping | ||
>externalId | String | C | 12 | BRI external ID from the transfer transaction made | ||
>customerReference | String | O | 28 | Unique transaction reference number from the institution | ||
>isRdn | String | Boolean | O |
Can be filled with true (for RDN accounts) or false (for non-RDN accounts) Note: Only for serviceCode 80 |
true | |
originatorInfos | Array Object | O |
Rincian Akun Pelanggan Originator.
Hal ini tunduk pada Pasal 8 ayat 5 Undang-Undang No. 3 Tahun 2011 tentang Transfer Dana. Juga periksa ketentuan lain, seperti peraturan PPATK. |
|||
>originatorCustomerNo | String | O | Originator customer account number | |||
>originatorCustomerName | String | Originatorcustomer account name | Rid | |||
>originatorBankCode | String | O | Originator Bank Code | 003 |
Request & Response Payload Sample
Normal Request Interbank:
{ "partnerReferenceNo": "20211130000000001", "amount": { "value": "10000.00", "currency": "IDR" }, "beneficiaryAccountName": "Dummy", "beneficiaryAccountNo": "888801000187508", "beneficiaryAddress": "Lorem City", "beneficiaryBankCode": "002", "beneficiaryBankName": "Bank BRI", "beneficiaryEmail": "dummy.email@domain.com", "customerReference": "10052023", "sourceAccountNo": "988901000187608", "transactionDate": "2022-11-07T15:19:24+07:00", "additionalInfo": { "deviceId": "12345679237", "channel": "mobilephone" }, "originatorInfos" : [ { "originatorCustomerNo": "99901000003302", "originatorCustomerName": "John Doe", "originatorBankCode": "003" } ] }
Normal Request BIFAST:
{ "partnerReferenceNo": "20211130000000001", "amount": { "value": "10000.00", "currency": "IDR" }, "beneficiaryAccountName": "Dummy", "beneficiaryAccountNo": "888801000187508", "beneficiaryAddress": "Lorem City", "beneficiaryBankCode": "002", "beneficiaryBankName": "Bank BRI", "beneficiaryEmail": "dummy.email@domain.com", "customerReference": "10052023", "sourceAccountNo": "988901000187608", "transactionDate": "2022-11-07T15:19:24+07:00", "additionalInfo": { "deviceId": "12345679237", "channel": "mobilephone", "serviceCode": "80", "referenceNo": "20220128BRINIDJA51050000065", "externalId": "53394951711", "senderIdentityNumber": "3515085211930002", "paymentInfo": "testing bifast", "senderType": "01", "senderResidentStatus": "01", "senderTownName": "0300", "isRdn":"true" } }
Normal Response Interbank:
{ "responseCode": "2001800", "responseMessage": "Successful", "referenceNo": "202401250000000003", "partnerReferenceNo": "20211130000000001", "amount": { "currency": "IDR", "value": "10000.00" }, "beneficiaryAccountNo": "888801000187508", "beneficiaryBankCode": "002", "sourceAccountNo": "988901000187608", "additionalInfo": { "channel": "mobilephone", "deviceId": "12345679237" } "originatorInfos" : [ { "originatorCustomerNo": "99901000003302", "originatorCustomerName": "Rid", "originatorBankCode": "003" } ] }
Normal Response BIFAST:
{ "responseCode": "2008000", "responseMessage": "Successful", "referenceNo": "202401250000000003", "partnerReferenceNo": "20211130000000001", "amount": { "currency": "IDR", "value": "10000.00" }, "beneficiaryAccountNo": "888801000187508", "beneficiaryBankCode": "002", "sourceAccountNo": "988901000187608", "additionalInfo": { "channel": "mobilephone", "deviceId": "12345679237", "originalReferenceNo": "20220128BRINIDJA010O9900025482", "journalSequence": "8809100", "externalId": "93394989193", "customerReference": "2022012800012", "isRdn":"true" } }
Error Response :
{ "responseCode": "4001801", "responseMessage": "Invalid Field Format transaction date" }
List of Error/Response Code
HTTP Status |
Service Code |
Code |
Status |
ResponseDescription |
Description |
---|---|---|---|---|---|
200 |
18 |
00 |
Success |
Successful |
|
202 |
18 |
00 |
In Progress |
Request In Progress |
|
400 |
18 |
01 |
Gagal |
Invalid Field Format {fieldName} |
|
400 |
18 |
02 |
Gagal |
Invalid Mandatory Field {fieldName} |
|
401 |
18 |
00 |
Gagal |
Unauthorized. Client |
|
403 |
18 |
02 |
Gagal |
Exceeds Transaction Amount Limit |
|
403 |
18 |
14 |
Gagal |
Insufficient Funds |
|
403 |
18 |
15 |
Gagal |
Transaction Not Permitted. [reason] |
|
403 |
18 |
16 |
Pending |
Suspend Transaction |
|
403 |
18 |
18 |
Gagal |
Inactive Card/Account/Customer |
|
404 |
18 |
11 |
Gagal |
Invalid Card/Account/Customer[info]/Virtual Account |
|
404 |
18 |
13 |
Gagal |
Invalid Amount |
|
409 |
18 |
00 |
Gagal |
Conflict |
|
500 |
18 |
00 |
Pending |
General Error |
|
504 |
18 |
00 |
Pending |
Timeout |
|
Tanggapan kesalahan apa pun yang tidak tercantum dalam daftar tanggapan BRIAPI dianggap tertunda dan memerlukan penyelidikan lebih lanjut.