Fund Transfer Internal v3.0 - Ind-1
Fund Transfer Internal v3.0
API Information
Title |
Fund Transfer Internal |
---|---|
Version |
v3 |
URL Sandbox |
https://sandbox.partner.api.bri.co.id/v3/transfer/internal |
URL Production |
https://partner.api.bri.co.id/v3/transfer/internal |
Version Control
Doc Version |
API Version |
Date |
Link to document |
Description |
---|---|---|---|---|
v1 |
v3 |
1 February 2019 |
Intial version |
|
v2 |
v3 |
12 Maret 2021 |
halaman ini |
Penambahan penjelasan dan Response Code |
v2 |
v3 |
12 April 2021 |
halaman ini |
Perubahan URL Sandbox |
Penjelasan Produk
Product Overview
API ini memungkinkan partner untuk melakukan transfer dana antara dua rekening BRI (transfer internal). Rekening sumber adalah rekening milik partner. API transfer dana ini hanya bisa dilakukan untuk rekening giro dan rekening tabungan.
Flow API
Endpoint
A. Account Validation
Penjelasan Endpoint
Endpoint ini digunakan untuk memvalidasi rekening sumber dan tujuan yang akan digunakan dalam proses transfer. Biasanya, endpoint ini akan dipanggil sebelum melakukan permintaan transfer dana, untuk memastikan rekening sumber dan tujuan sudah benar.
Informasi Umum
HTTP Method |
GET |
---|---|
Path |
/accounts |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
Authorization |
Bearer {token} |
M |
|
Access Token |
|
BRI-Timestamp |
|
M |
|
Timestamp in ISO8601 format |
|
BRI-Signature |
|
M |
64 |
Signature |
|
Content-Type |
application/json |
M |
|
|
|
Query Param Structure
Sample of HTTP request:
GEThttps://sandbox.partner.api.bri.co.id/v3/transfer/internal/accounts?sourceaccount={{SOURCE_ACCOUNT}&beneficiaryaccount={{DESTINATION_ACCOUNT}}
Field |
Data Type |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
sourceAccount |
String |
M |
15 |
Source account. Jika panjangnya kurang dari 15, tambahkan angka 0 di depannya |
020601000003301 |
beneficiaryaccount |
String |
M |
15 |
Destination account. Jika panjangnya kurang dari 15, tambahkan angka 0 di depannya |
020601000003333 |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
responseCode |
String |
M |
4 |
response code |
0100 |
responseDescription |
String |
M |
|
response description |
Inquiry success |
errorDescription |
String |
|
|
Error Description |
String kosong untuk inquiry sukses. Selain itu, silahkan lihat list error/response code. |
Data |
Array |
M |
|
Berisi informasi rekening sumber dan tujuan. |
Berisi kosong jika response error "Data":{} |
sourceAccount |
String |
M |
|
Rekening Sumber |
020601000003301 |
sourceAccountName |
String |
M |
|
Nama Rekening Sumber |
|
sourceAccountStatus |
String |
M |
|
Status Rekening Sumber |
Rekening Aktif |
sourceAccountBalace |
String |
M |
|
Saldo Rekening Sumber |
1000000 |
registrationStatus |
String |
M |
|
Status registrasi rekening sumber |
|
beneficiaryAccount |
String |
M |
|
Rekening tujuan |
020601000003333 |
beneficiaryAccountName |
String |
M |
|
nama rekening tujuan |
|
beneficiaryAccountStatus |
String |
M |
|
status rekening tujuan |
Rekening Aktif |
Request & Response Payload Sample
Request :curl -x GET 'https://partner.api.bri.co.id/sandbox/v3/transfer/internal/accounts?sourceaccount={{SOURCE_ACCOUNT}' \ -H 'Authorization: Bearer {{TOKEN}}' \ -H 'BRI-Signature: {{SIGNATURE}}' \ -H 'BRI-Timestamp: {{TIMESTAMP}}'Normal Response:
{ "responseCode":"0100", "responseDescription":"Inquiry Success", "errorDescription":"", "Data":{ "sourceAccount":"888801000003301" "sourceAccountName":"BRIAPI SANDBOX", "sourceAccountstatus":"Rekening Aktif", "sourceAccountBalace":"258544125122.98", "registrationStatus":"Rekening terdaftar an. bri", "beneficiaryAccount":"888801000157508", "beneficiaryAccountName":"BRIAPI SANDBOX 2", "beneficiaryAccountStatus":"Rekening Aktif" } }Error Response:
{ "responseCode":"0111", "responseDescription":"Inquiry can not be processed", "errorDescription":"Source account/beneficiary account must be a number", "Data":{} }
List of Error/Response Code
Response Code |
Response Description |
Error Description |
Status |
Description |
---|---|---|---|---|
0100 |
Inquiry Success |
- |
Success |
Sukses inquiry, data berhasil didapatkan. |
0101 |
Inquiry failed |
Beneficiary account must be a number |
Failed |
|
0102 |
Inquiry timeout |
- |
Failed |
|
0103 |
Inquiry can not be processed |
Source account/beneficiary account must be a number |
Failed |
|
0104 |
Inquiry can not be processed |
Your IP & key has not been registerd |
Failed |
|
0105 |
Inquiry can not be processed |
Inquiry data must not be empty |
Failed |
|
0106 |
Inquiry can not be processed |
Source account/beneficiary account must not be empty |
Failed |
|
0109 |
Inquiry can not be processed |
Member ID/participant account not found |
Failed |
|
0110 |
Inquiry can not be processed |
Branch code/source account not found |
Failed |
|
0111 |
Inquiry can not be processed |
Source account/beneficiary account is not registered |
Failed |
|
0112 |
Inquiry can not be processed |
Reference number is not registered |
Failed |
|
81 |
Throw an exception |
*any error description |
Failed |
Unhandled error |
0007 |
Inquiry can not be processed |
Username (institution code) must not be empty |
Failed |
Username, password dan rekening sumber yang dipakai akan dikonfigurasikan di BRIAPI. Jika mendapat error ini, silahkan kontak tim kami melalui email. |
0008 |
Inquiry can not be processed |
Invalid username (institution code) or password (institution key) |
Failed |
|
0009 |
Inquiry can not be processed |
Password (institution key) must not be empty |
Failed |
|
0010 |
Inquiry can not be processed |
Wrong password (institution key). Please enter your correct password |
Failed |
|
0011 |
Inquiry can not be processed |
Accounts not registered in institutional accounts |
Failed |
|
0012 |
Inquiry can not be processed |
Wrong password (institution key). Please enter your correct password |
Failed |
B. Transfer
Penjelasan Endpoint
Endpoint ini digunakan untuk melakukan permintaan transfer dana antara dua rekening BRI. Ada limit total total transaksi dan limit transaksi harian yang akan ditetapkan oleh BRI.
General Information
HTTP Method |
POST |
---|---|
Path |
internal |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
Authorization |
Bearer {token} |
M |
|
Access Token |
|
BRI-Timestamp |
|
M |
|
Timestamp in ISO8601 format |
|
BRI-Signature |
|
M |
64 |
Signature |
|
Content-Type |
application/json |
M |
|
|
|
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
noReferral |
String |
M |
20 |
Nomor referensi yang unik, dikirim oleh partner |
20180212002 |
sourceAccount |
String |
M |
15 |
Rekening sumber |
888801000003301 |
beneficiaryAccount |
String |
M |
15 |
Rekening tujuan |
888801000157508 |
amount |
String |
M |
15 |
Nominal transfer Format ##.## |
1000.00 |
feeType |
String |
M |
|
OUR Fee dibebankan kepada pengirim (default)BEN Fee dibebankan kepada penerima SHA|1000 Fee dibagi antara pengirim dan penerima, dengan pengirim dibebankan Rp 1000 dan penerima dibebankan sisanya |
OUR |
transactionDateTime |
String |
M |
19 |
Tanggal dan waktu transaksi, format: dd-MM-yyyy HH:mm:ss |
14-02-2000 19:30:10 |
remark |
String |
M |
40 |
Remark transaksi. Untuk keperluan identifikasi transaksi, mohon untuk mencantumkan nilai unik di dalam remark. Ini akan muncul di rekening koran. |
Disburse 20201918 |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
responseCode |
String |
M |
Response code |
0200 |
|
responseDescription |
String |
M |
Response description |
Payment Success |
|
errorDescription |
String |
M |
Error description |
Reference number is already used |
|
JournalSeq |
String |
M |
Journal sequence |
3289331 |
|
Request & Response Payload Sample
Request :curl -X POST 'https://partner.api.bri.co.id/sandbox/v3/transfer/internal' \ -H 'Authorization: Bearer {{TOKEN}}' \ -H 'X-BRI-Signature: {{SIGNATURE}}' \ -H 'BRI-Timestamp: {{TIMESTAMP}}' \ -H 'Content-Type: application/json' \ -d '{ "noReferral": "20180212002", "sourceAccount":"888801000003301", "beneficiaryAccount":"888801000157508", "amount":"1000.00", "feeType":"OUR", "transactionDateTime":"12-02-2018 10:18:00", "remark":"Disburse 20180212002" }'Normal Response :
{ "responseCode":"0200", "responseDescription":"Payment Success", "errorDescription":"", "JournalSeq":"3289331" }Error Response :
{ "responseCode":"0209", "responseDescription":"Payment can not be processed", "errorDescription":"Reference number is already used" }
List of Error/Response Code
CATATAN : Untuk kasus response code selain SUKSES, gunakan 3 field Response Code, Response Description dan Error Description untuk mengidentifikasi status transaksi GAGAL atau PENDING.
Response Code |
Response Description |
Error Description |
Status |
Description |
---|---|---|---|---|
0200 |
Payment Success |
- |
Success |
Transaksi sukses diindikasikan oleh response code ini |
0201 |
Payment Failed |
Nomor Rekening Tidak Dikenal |
Failed |
|
0201 |
Payment Failed |
Saldo Tidak Cukup |
Failed |
|
0201 |
Payment Failed |
Rekening Sudah Ditutup |
Failed |
|
0201 |
Payment Failed |
Rekening Pasif |
Failed |
|
0201 |
Payment Failed |
Rek Notpool / Tdk Bisa Ditarik |
Failed |
|
0201 |
Payment Failed |
Rekening Dibekukan |
Failed |
|
0201 |
Payment Failed |
Cek/BG diblokir |
Failed |
|
0201 |
Payment Failed |
Deceased customer |
Failed |
|
0201 |
Payment Failed |
Checkbook error |
Failed |
|
0201 |
Payment Failed |
Account closed today |
Failed |
|
0201 |
Payment Failed |
Rekening di blokir |
Failed |
|
0201 |
Payment Failed |
Dalam Rangka Kustodian |
Failed |
|
0201 |
Payment Failed |
Account status is invalid |
Failed |
|
0201 |
Payment Failed |
Overdrawn not allowed |
Failed |
|
0201 |
Payment Failed |
On/Off Balance Sheet not match |
Failed |
|
0201 |
Payment Failed |
Check Not Found |
Failed |
|
0201 |
Payment Failed |
Check Already Paid |
Failed |
|
0201 |
Payment Failed |
Original jrnl seq# not found |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
0201 |
Payment Failed |
Teller Record in use |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
0201 |
Payment Failed |
Account in use |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
0201 |
Payment Failed |
Blokir Kredit |
Failed |
|
0201 |
Payment Failed |
On/Off Balance Sheet not match |
Failed |
|
0201 |
Payment Failed |
Transaction not allowed |
Failed |
|
0201 |
Payment Failed |
Currency discrepancy |
Failed |
|
0201 |
Payment Failed |
REKENING PROTEK |
Failed |
|
0201 |
Payment Failed |
Account is already closed |
Failed |
|
0201 |
Payment Failed |
Trans in incorrect currency |
Failed |
|
0201 |
Payment Failed |
Overdrawn not allowed |
Failed |
|
0201 |
Payment Failed |
Failed to get the transaction limit parameter, please try again |
Failed |
|
0201 |
Payment Failed |
Amount transaction is less than amount fee |
Failed |
|
0201 |
Payment Failed |
Invalid fee type parameter |
Failed |
|
0201 |
Payment Failed |
Amount transaction is less than amount fee |
Failed |
|
0201 |
Payment Failed |
Nominal transaction is less than the minimum limit |
Failed |
|
0201 |
Payment Failed |
Nominal transaction is more than the maximum limit |
Failed |
|
0201 |
Payment Failed |
Failed to get the daily limit transaction, please try again |
Failed |
|
0201 |
Payment Failed |
Total nominal daily transaction exceeds more than maximum limit |
Failed |
|
0201 |
Payment Failed |
Payment failed, please try again |
Failed |
|
0201 |
Payment Failed |
Type account number not in current account/IA/saving account |
Failed |
|
0201 |
Payment Failed |
Error: BRINETS connection lost |
Failed |
|
0201 |
Payment Failed |
Transaction Failed |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status pembukuan / transfer. *CATATAN: Error ini adalah anomali di versi yang sekarang. Fixing akan dilakukan di versi berikutnya. |
0201 |
Payment Failed |
Other Error Description in RC 0201 which not listed above |
Pending / Need To Check |
Jika mendapat response code 0201 dan error description yang belum tercantum di atas, set transaksi Anda menjadi Pending / need To Check, dan cek ke rekening koran untuk mendapatkan status transfer. Mohon untuk kontak ke tim kami. |
0202 |
Payment can not be processed |
Payment timeout |
Pending / Need To Check |
Karena time out, Anda tidak akan dapat response code dan response/error description. Gunakan endpoint "Check Status" untuk mendapatkan informasinya, dan refer kembali ke tabel ini atau gunakan rekening koran untuk memvalidasi status transfer. |
0204 |
|
Payment data must not be empty |
Failed |
|
0206 |
|
Amount must be a number |
Failed |
|
0207 |
|
Amount must be more than 0 |
Failed |
|
0208 |
|
Length amount is not valid |
Failed |
|
0209 |
|
Reference number is already used |
Failed |
|
0210 |
|
Reference number must not be empty |
Failed |
|
0211 |
|
Remark must not be empty |
Failed |
|
0212 |
|
Invalid format transaction datetime |
Failed |
|
0213 |
|
Fee type must not be empty |
Failed |
|
0288 |
Payment can not be processed |
Transaction is being processed |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
81 |
Throw an exception |
(*All error description) |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
Get HTML Error or HTTP Error |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
||
Get No Response (Null) |
Pending / Need To Check |
Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer. |
||
Get response (response code, response desc, error desc) that not listed above |
Pending / Need To Check |
Set transaksi menjadi Pending / Need To Check, dan kontak tim kami. |
C. Check Status
Penjelasan Endpoint
Endpoint ini digunakan untuk mengecek status dari transaksi yang telah dilakukan. Gunakan ini jika ketika melakukan transaksi tidak mendapatkan response atau error yang jelas, seperti: time out. Untuk diperhatikan bahwa response dari endpoint ini tidak menggambarkan status akhir dari proses transfer. Setelah mendapatkan 'internalTransferStatus" dan "internalTransferErrorMessage" di body response, silahkan lihat daftar error code di endpoint Transfer, untuk mengidentifikasi apakah transaksi Anda sukses, gagal, atau Pending.
General Information
HTTP Method |
GET |
---|---|
Path |
/?norefferal={NoReferral} |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
Authorization |
Bearer {token} |
M |
|
Access Token |
|
BRI-Timestamp |
|
M |
|
Timestamp in ISO8601 format |
|
BRI-Signature |
|
M |
64 |
Signature |
|
Content-Type |
application/json |
M |
|
|
|
Query Param Structure
Contoh HTTP request:
GET https://partner.api.bri.co.id/sandbox/v3/transfer/internal/accounts?noreferral={{NoReferral}
Field |
Data Type |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
NoReferral |
String |
M |
20 |
Nomor referensi unik yang digunakan di transaksi |
20181230002 |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Contoh |
---|---|---|---|---|---|
responseCode |
String |
M |
4 |
response code |
0300 |
responseDescription |
String |
M |
|
response description |
Cek Status Sukses |
errorDescription |
String |
|
|
Error Description |
String kosong untuk inquiry sukses. Selain itu, silahkan lihat daftar error/response code |
Data |
Array |
M |
|
berisi informasi response dari transaksi |
Kosong untuk response error "Data":{} |
NoReferral |
String |
M |
|
Nomor referensi unik yang digunakan di transaksi |
20181230002 |
journalSeq |
String |
M |
|
Journal sequence |
3289331 |
internalTransferStatus |
String |
M |
4 |
Response/Error code dari proses transfer. Silahkan lihat daftar error code di endpoint Transfer untuk penjelasan lebih lengkap. |
0201 |
internalTransferErrorMessage |
String |
M |
|
Response/Error Description dari proses transfer. Silahkan lihat daftar error code di endpoint Transfer untuk penjelasan lebih lengkap. |
Original jrnl seq# not found |
Request & Response Payload Sample
Request :https://partner.api.bri.co.id/sandbox/v3/transfer/internal/accounts?noReferral={{NoReferral}Normal Response :
{ "responseCode":"0200", "responseDescription":"Cek Status Sukses", "errorDescription":"", "Data":{ "NoReferral":"20181230002" "journalSeq":"BRIAPI SANDBOX", "internalTransferStatus":"0201", "internalTransferErrorMessage":"Original jrnl seq# not found", } }Error Response:
{ "responseCode":"0307", "responseDescription":"", "errorDescription":"No Referral Tidak Ditemukan", "Data":{} }
List of Error/Response Code
CATATAN : Response di bawah ini mengindikasikan status endpoint check status, bukan mengindikasikan sukses transfer atau tidak. Silahkan lihat di bagian field Data (internalTransferStatus dan internalTransferErrorMessage) dan tabel response list di endpoint Transfer untuk menentukan apakah transaksi Sukses, Gagal, atau Pending.
Response Code |
Response Description |
Error Description |
Status |
Description |
---|---|---|---|---|
0300 |
Status check success |
- |
Success |
Cek status sukses, dan data berhasil diterima. |
0304 |
|
Status check data must not be empty |
Failed |
|
0307 |
|
Reference number not found |
Pending, perlu cek ke file settlement atau rekening koran |
Jika mendapat response code ini, Anda perlu melihat file settlement atau rekening koran untuk memvalidasi nomor referensi |
0308 |
|
Status check failed |
Failed |
Silahkan ulangi check status |
0388 |
|
Transaction status is pending, please check again tomorrow at 08:00AM WIB |
Failed |
Silahkan ulangi check status |
0399 |
|
There was an error, please consult with your administrator |
Failed |
|
Account Validation
Endpoint Descriprition
This endpoint is to validate the source and receiving accounts in order to complete the transfer process. Generally, this endpoint will be called prior to making a fund transfer request, also to ensure that the source and destination accounts are correct.
General Information
HTTP Method |
GET |
---|---|
Path |
/accounts |
Format Type |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
Authorization |
Bearer {token} |
M |
|
Access Token |
|
BRI-Timestamp |
|
M |
|
Timestamp in ISO8601 format |
|
BRI-Signature |
|
M |
64 |
Signature |
|
Content-Type |
application/json |
M |
|
|
|
Query Param Structure
Sample of HTTP request:
GEThttps://sandbox.partner.api.bri.co.id/v3/transfer/internal/accounts?sourceaccount={{SOURCE_ACCOUNT}&beneficiaryaccount={{DESTINATION_ACCOUNT}}
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
sourceAccount |
String |
M |
15 |
source accounts. If the length is less than 15, add the number 0 in front of it |
020601000003301 |
beneficiaryaccount |
String |
M |
15 |
Destination accounts. If the length is less than 15, add the number 0 in front of it |
020601000003333 |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
4 |
response code |
0100 |
responseDescription |
String |
M |
|
response description |
Inquiry success |
errorDescription |
String |
|
|
Error Description |
Empty string for successful inquiry. Also, please see the list of error/response codes. |
Data |
Array |
M |
|
Contains source and destination account information. |
Contains empty if response error is "Data":{} |
sourceAccount |
String |
M |
|
Source Account |
020601000003301 |
sourceAccountName |
String |
M |
|
Source Account Name |
|
sourceAccountStatus |
String |
M |
|
Source Account Status |
Active Account |
sourceAccountBalace |
String |
M |
|
Source Account Balance |
1000000 |
registrationStatus |
String |
M |
|
Source account registration status |
|
beneficiaryAccount |
String |
M |
|
Destination account |
020601000003333 |
beneficiaryAccountName |
String |
M |
|
name of the destination account |
|
beneficiaryAccountStatus |
String |
M |
|
destination account status |
Active Account |
Request & Response Payload Sample
Request :
curl -x GET 'https://partner.api.bri.co.id/sandbox/v3/transfer/internal/accounts?sourceaccount={{SOURCE_ACCOUNT}' \ -H 'Authorization: Bearer {{TOKEN}}' \ -H 'BRI-Signature: {{SIGNATURE}}' \ -H 'BRI-Timestamp: {{TIMESTAMP}}'
Normal Response:
{ "responseCode":"0100", "responseDescription":"Inquiry Success", "errorDescription":"", "Data":{ "sourceAccount":"888801000003301" "sourceAccountName":"BRIAPI SANDBOX", "sourceAccountstatus":"Rekening Aktif", "sourceAccountBalace":"258544125122.98", "registrationStatus":"Rekening terdaftar an. bri", "beneficiaryAccount":"888801000157508", "beneficiaryAccountName":"BRIAPI SANDBOX 2", "beneficiaryAccountStatus":"Rekening Aktif" } }
Error Response:
{ "responseCode":"0111", "responseDescription":"Inquiry can not be processed", "errorDescription":"Source account/beneficiary account must be a number", "Data":{} }
List of Error/Response Code
Response Code |
Response Description |
Error Description |
Status |
Description |
---|---|---|---|---|
0100 |
Inquiry Success |
- |
Success |
Successful inquiry, data was successfully obtained. |
0101 |
Inquiry failed |
Beneficiary account must be a number |
Failed |
|
0102 |
Inquiry timeout |
- |
Failed |
|
0103 |
Inquiry can not be processed |
Source account/beneficiary account must be a number |
Failed |
|
0104 |
Inquiry can not be processed |
Your IP & key has not been registerd |
Failed |
|
0105 |
Inquiry can not be processed |
Inquiry data must not be empty |
Failed |
|
0106 |
Inquiry can not be processed |
Source account/beneficiary account must not be empty |
Failed |
|
0109 |
Inquiry can not be processed |
Member ID/participant account not found |
Failed |
|
0110 |
Inquiry can not be processed |
Branch code/source account not found |
Failed |
|
0111 |
Inquiry can not be processed |
Source account/beneficiary account is not registered |
Failed |
|
0112 |
Inquiry can not be processed |
Reference number is not registered |
Failed |
|
81 |
Throw an exception |
*any error description |
Failed |
Unhandled error |
0007 |
Inquiry can not be processed |
Username (institution code) must not be empty |
Failed |
Username, password and source account used will be configured at BRIAPI. If you get this error, please contact our team via email. |
0008 |
Inquiry can not be processed |
Invalid username (institution code) or password (institution key) |
Failed |
|
0009 |
Inquiry can not be processed |
Password (institution key) must not be empty |
Failed |
|
0010 |
Inquiry can not be processed |
Wrong password (institution key). Please enter your correct password |
Failed |
|
0011 |
Inquiry can not be processed |
Accounts not registered in institutional accounts |
Failed |
|
0012 |
Inquiry can not be processed |
Wrong password (institution key). Please enter your correct password |
Failed |
Transfer
Endpoint Description
This endpoint is used to request funds transfer between two BRI accounts. However, there is a limit for total transactions and daily transactions that is set by BRI.
General Information
HTTP Method |
POST |
---|---|
Path |
internal |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
Authorization |
Bearer {token} |
M |
|
Access Token |
|
BRI-Timestamp |
|
M |
|
Timestamp in ISO8601 format |
|
BRI-Signature |
|
M |
64 |
Signature |
|
Content-Type |
application/json |
M |
|
|
|
Request Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
noReferral |
String |
M |
20 |
Unique reference number, sent by partner |
20180212002 |
sourceAccount |
String |
M |
15 |
Source account |
888801000003301 |
beneficiaryAccount |
String |
M |
15 |
Destination account |
888801000157508 |
amount |
String |
M |
15 |
Nominal transfer Format ##.## |
1000.00 |
feeType |
String |
M |
|
OUR Fee charged to sender (default)BEN Fee charged to recipient SHA | 1000 The fee is divided between the sender and the recipient, with the sender being charged IDR 1000 and the recipient being charged the rest |
OUR |
transactionDateTime |
String |
M |
19 |
Transaction date and time, format: dd-MM-yyyy HH:mm:ss |
14-02-2000 19:30:10 |
remark |
String |
M |
40 |
Transaction mark. For transaction identification purposes, please include a unique value in the remark. It will appear on the checking account. |
Disburse 20201918 |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
Response code |
0200 |
|
responseDescription |
String |
M |
Response description |
Payment Success |
|
errorDescription |
String |
M |
Error description |
Reference number is already used |
|
JournalSeq |
String |
M |
Journal sequence |
3289331 |
|
Request & Response Payload Sample
Request :
curl -X POST 'https://partner.api.bri.co.id/sandbox/v3/transfer/internal' \ -H 'Authorization: Bearer {{TOKEN}}' \ -H 'X-BRI-Signature: {{SIGNATURE}}' \ -H 'BRI-Timestamp: {{TIMESTAMP}}' \ -H 'Content-Type: application/json' \ -d '{ "noReferral": "20180212002", "sourceAccount":"888801000003301", "beneficiaryAccount":"888801000157508", "amount":"1000.00", "feeType":"OUR", "transactionDateTime":"12-02-2018 10:18:00", "remark":"Disburse 20180212002" }'
Normal Response :
{ "responseCode":"0200", "responseDescription":"Payment Success", "errorDescription":"", "JournalSeq":"3289331" }
Error Response :
{ "responseCode":"0209", "responseDescription":"Payment can not be processed", "errorDescription":"Reference number is already used" }
List of Error/Response Code
NOTE : For response status code cases other than SUCCESS, please use the 3 fields Response Code, Response Description and Error Description to identify the transaction status FAILED or PENDING.
Response Code |
Response Description |
Error Description |
Status |
Description |
---|---|---|---|---|
0200 |
Payment Success |
- |
Success |
Successful transaction is indicated by this response code |
0201 |
Payment Failed |
Nomor Rekening Tidak Dikenal |
Failed |
|
0201 |
Payment Failed |
Saldo Tidak Cukup |
Failed |
|
0201 |
Payment Failed |
Rekening Sudah Ditutup |
Failed |
|
0201 |
Payment Failed |
Rekening Pasif |
Failed |
|
0201 |
Payment Failed |
Rek Notpool / Tdk Bisa Ditarik |
Failed |
|
0201 |
Payment Failed |
Rekening Dibekukan |
Failed |
|
0201 |
Payment Failed |
Cek/BG diblokir |
Failed |
|
0201 |
Payment Failed |
Deceased customer |
Failed |
|
0201 |
Payment Failed |
Checkbook error |
Failed |
|
0201 |
Payment Failed |
Account closed today |
Failed |
|
0201 |
Payment Failed |
Rekening di blokir |
Failed |
|
0201 |
Payment Failed |
Dalam Rangka Kustodian |
Failed |
|
0201 |
Payment Failed |
Account status is invalid |
Failed |
|
0201 |
Payment Failed |
Overdrawn not allowed |
Failed |
|
0201 |
Payment Failed |
On/Off Balance Sheet not match |
Failed |
|
0201 |
Payment Failed |
Check Not Found |
Failed |
|
0201 |
Payment Failed |
Check Already Paid |
Failed |
|
0201 |
Payment Failed |
Original jrnl seq# not found |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
0201 |
Payment Failed |
Teller Record in use |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
0201 |
Payment Failed |
Account in use |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
0201 |
Payment Failed |
Block Credit |
Failed |
|
0201 |
Payment Failed |
On/Off Balance Sheet not match |
Failed |
|
0201 |
Payment Failed |
Transaction not allowed |
Failed |
|
0201 |
Payment Failed |
Currency discrepancy |
Failed |
|
0201 |
Payment Failed |
REKENING PROTEK |
Failed |
|
0201 |
Payment Failed |
Account is already closed |
Failed |
|
0201 |
Payment Failed |
Trans in incorrect currency |
Failed |
|
0201 |
Payment Failed |
Failed to get the transaction limit parameter, please try again |
Failed |
|
0201 |
Payment Failed |
Amount transaction is less than amount fee |
Failed |
|
0201 |
Payment Failed |
Invalid fee type parameter |
Failed |
|
0201 |
Payment Failed |
Nominal transaction is less than the minimum limit |
Failed |
|
0201 |
Payment Failed |
Nominal transaction is more than the maximum limit |
Failed |
|
0201 |
Payment Failed |
Failed to get the daily limit transaction, please try again |
Failed |
|
0201 |
Payment Failed |
Total nominal daily transaction exceeds more than maximum limit |
Failed |
|
0201 |
Payment Failed |
Payment failed, please try again |
Failed |
|
0201 |
Payment Failed |
Type account number not in current account/IA/saving account |
Failed |
|
0201 |
Payment Failed |
Error: BRINETS connection lost |
Failed |
|
0201 |
Payment Failed |
Transaction Failed |
Pending / Need To Check |
Please check your current/savings account to see the transfer status. *NOTES: This error is an anomaly in the current version. Fixing will be done in the next version. |
0201 |
Payment Failed |
Other Error Description in RC 0201 which not listed above |
Pending / Need To Check |
If you get a response code 0201 and an error description that is not listed above, set your transaction to Pending / need To Check, and check your checking account to get the transfer status. Please contact our team. |
0202 |
Payment can not be processed |
Payment timeout |
Pending / Need To Check |
Due to time out, you will not be able to response code and response / error description. Use the "Check Status" endpoint to get the information, and refer back to this table or use the checking account to validate the transfer status. |
0204 |
|
Payment data must not be empty |
Failed |
|
0206 |
|
Amount must be a number |
Failed |
|
0207 |
|
Amount must be more than 0 |
Failed |
|
0208 |
|
Length amount is not valid |
Failed |
|
0209 |
|
Reference number is already used |
Failed |
|
0210 |
|
Reference number must not be empty |
Failed |
|
0211 |
|
Remark must not be empty |
Failed |
|
0212 |
|
Invalid format transaction datetime |
Failed |
|
0213 |
|
Fee type must not be empty |
Failed |
|
0288 |
Payment can not be processed |
Transaction is being processed |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
81 |
Throw an exception |
(*All error description) |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
Get HTML Error or HTTP Error |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
||
Get No Response (Null) |
Pending / Need To Check |
Please check your current/saving account to see the transfer status |
||
Get response (response code, response desc, error desc) that not listed above |
Pending / Need To Check |
Set the transaction to Pending / Need To Check, and contact our team. |
Cek Status
Endpoint Description
This endpoint is used to check the status of transactions that have been made. Please use this when making a transaction you don't get a clear response or error, such as: time out. Please note that the response from this endpoint does not reflect the final status of the transfer process. After getting 'internalTransferStatus" and "internalTransferErrorMessage" in the response body,
please refer to the list of error codes in the Transfer endpoint, to identify whether your transaction has been successful, failed, or Pending.
General Information
HTTP Method |
GET |
---|---|
Path |
/?norefferal={NoReferral} |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Header Structure
Key |
Value |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
Authorization |
Bearer {token} |
M |
|
Access Token |
|
BRI-Timestamp |
|
M |
|
Timestamp in ISO8601 format |
|
BRI-Signature |
|
M |
64 |
Signature |
|
Content-Type |
application/json |
M |
|
|
|
Query Param Structure
Example HTTP request:
GET https://partner.api.bri.co.id/sandbox/v3/transfer/internal/accounts?noreferral={{NoReferral}
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
NoReferral |
String |
M |
20 |
Unique reference number used in transactions |
20181230002 |
Response Structure
Field |
Data Type |
Mandatory |
Length |
Description |
Example |
---|---|---|---|---|---|
responseCode |
String |
M |
4 |
response code |
0300 |
responseDescription |
String |
M |
|
response description |
Cek Status Sukses |
errorDescription |
String |
|
|
Error Description |
String kosong untuk inquiry sukses. Selain itu, silahkan lihat daftar error/response code |
Data |
Array |
M |
|
contains response information from transactions |
Kosong untuk response error "Data":{} |
NoReferral |
String |
M |
|
Unique reference number used in transactions |
20181230002 |
journalSeq |
String |
M |
|
Journal sequence |
3289331 |
internalTransferStatus |
String |
M |
4 |
Response / Error code from the transfer process. Please see the list of error codes at the Transfer endpoint for a more complete explanation. |
0201 |
internalTransferErrorMessage |
String |
M |
|
Response / Error Description of the transfer process. Please see the list of error codes at the Transfer endpoint for a more complete explanation. |
Original jrnl seq# not found |
Request & Response Payload Sample
Request :
https://sandbox.patner.api.bri.co.id/v3/transfer/internal?noReferral={{NoReferral}
Normal Response :
{ "responseCode":"0200", "responseDescription":"Cek Status Sukses", "errorDescription":"", "Data":{ "NoReferral":"20181230002" "journalSeq":"BRIAPI SANDBOX", "internalTransferStatus":"0201", "internalTransferErrorMessage":"Original jrnl seq# not found", } }
Error Response:
{ "responseCode":"0307", "responseDescription":"", "errorDescription":"No Referral Tidak Ditemukan", "Data":{} }
List of Error/Response Code
NOTE : The response below indicates the status of the endpoint check status and it’s not an indication of a successful or failed transfer t. Please look at the Data fields (internalTransferStatus and internalTransferErrorMessage) and the response list table at the Transfer endpoint to determine whether the transaction is Successful, Failed, or Pending.
Response Code |
Response Description |
Error Description |
Status |
Description |
---|---|---|---|---|
0300 |
Status check success |
- |
Success |
Check the status of success, and the data has been successfully received. |
0304 |
|
Status check data must not be empty |
Failed |
|
0307 |
|
Reference number not found |
Pending, need to check the settlement file or checking account |
If you get this response code, you need to see the settlement file or checking account to validate the reference number |
0308 |
|
Status check failed |
Failed |
Please try again hit check status |
0388 |
|
Transaction status is pending, please check again tomorrow at 08:00AM WIB |
Failed |
Please try again hit check status |
0399 |
|
There was an error, please consult with your administrator |
Failed |
|