Fund Transfer Internal v3.1

Per 1 November 2023 produk ini sudah tidak mendapat support untuk pengembangan, pengguna dapat menggunakan produk versi SNAP BI disini

Apa Itu Transfer Antar Rekening BRI?

Dalam menjalani sebuah bisnis, kebutuhan untuk melakukan transfer agar perusahaan bisa berjalan dengan lancar amat beragam, mulai dari melakukan transaksi bisnis, mengirimkan payroll, maupun melakukan pembayaran administrasi perusahaan.

Semenjak hadirnya open banking dari BRI atau BRIAPI, seluruh kegiatan transfer untuk memenuhi kebutuhan bisnis dapat dilakukan secara praktis dan mudah, langsung dasbor bisnis Anda. Hal tersebut bisa direalisasikan dengan penggunaan API Transfer Antar Rekening BRI. Dengan API ini, Anda dapat menyelesaikan segala hal terkait keuangan perusahaan cukup dengan beberapa klik saja, tanpa perlu bepergian ke kantor cabang.

Informasi API

Judul

Fund Transfer Internal v3.1

Version

v3.1

URL Sandbox

https://sandbox.partner.api.bri.co.id/v3.1/transfer/internal

URL Production

https://partner.api.bri.co.id/v3.1/transfer/internal

Kendali Versi

Versi Dok

Versi API

Tanggal

Tautan Dokumen

Deskripsi

v1.0

v3.1

1 Juli 2018

-

Versi Awal

v2.0 v3.1 1 Februari 2019 - Perubahan Struktur dan URL

v3.0

v3.1

12 Maret 2021

buka docs

Perubahan Struktur dan URL, penambahan penjelasan dan Response Code

v3.0

v3.1

12 April 2021

buka docs

Perubahan URL Sandbox

v3.1

v3.1

9 July 2021

di halaman ini

Perubahan struktur API dan response code

 

Deskripsi Produk

Gambaran Produk

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. Validasi Akun

Penjelasan Endpoint

Layanan ini digunakan untuk melakukan inquiry informasi rekening Debet dan Kredit yang akan digunakan untuk melakukan instruksi Fund Transfer. Rekening yang dapat di inquiry adalah rekening giro dan simpanan yang sudah terdaftar sebelumnya.

Informasi Umum

HTTP Method

POST

Path

/accounts

Tipe Format

JSON

Authentication

OAuth 2.0 with Access Token

Header Structure

Key

Value

Mandatory

Length

Deskripsi

Contoh

Authorization

Bearer {token}

M

 

Access Token

 

BRI-Timestamp

 

M

 

Timestamp dengan format ISO8601 

 

BRI-Signature

 

M

64

Signature

 

Content-Type

application/json

M

 

 

 

Request Structure

Field

Data Type

Mandatory

Length

Deskripsi

Contoh

sourceAccount

String

M

15

Rekening sumber transaksi

 

020601000003301

beneficiaryaccount

String

M

15

Rekening tujuan transaksi

020601000003333

Response Structure

Field Data Type Mandatory Length Deskripsi Contoh
responseCode String M 4 Response Code 0100
responseDescription String M   Deskripsi response message Inquiry success
errorDescription String M   Deskripsi pesan error String kosong untuk inquiry sukses. Selain itu, silahkan lihat list error/response code.
data Array M     Berisi kosong jika response error "data":{}
sourceAccount String M   Rekening sumber transaksi 020601000255504
sourceAccountName String M   Nama rekening sumber transaksi Jane Doe
sourceAccountStatus String M   Status rekening sumber transaksi Rekening Aktif
sourceAccountBalance String M   Saldo rekening sumber transaksi 1000000.00
beneficiaryAccount String M   Rekening tujuan transaksi 020601000003333
beneficiaryAccountName String M   Nama rekening tujuan John Doe
beneficiaryAccountStatus String M   Status rekening tujuan transaksi Rekening Aktif

Request & Response Payload Sample

Request :


curl --location --request POST 'https://sandbox.partner.api.bri.co.id/v3.1/transfer/internal/accounts' \
--header 'BRI-Timestamp: ((TIMESTAMP))' \
--header 'BRI-Signature: ((SIGNATURE))' \
--header 'Content-Type: application/json' \
--data-raw '{
"sourceAccount": "020601000255504",
"beneficiaryAccount": "0206010060313061"
}'

Normal Response :

{
    "responseCode": "0100",
    "responseDescription": "Inquiry success",
    "errorDescription": "",
    "data": {
        "sourceAccount": "020601000255504",
        "sourceAccountName": "Jane Doe",
        "sourceAccountStatus": "Rekening Aktif",
        "sourceAccountBalance": "8631682596.05",
        "beneficiaryAccount": "020601006031306",
        "beneficiaryAccountName": "John Doe",
        "beneficiaryAccountStatus": "Rekening Aktif"
    }
}

Error Response :

{
    "responseCode": "0101",
    "responseDescription": "Inquiry failed",
    "errorDescription": "InqRekAsal: Nomor Rekening Tidak Dikenal & InqRekTujuan: 0000020601006031306",
    "data": {
        "sourceAccount": "020601023500255504",
        "beneficiaryAccount": "020601006031306"
    }
}

List of Error/Response Code

Response Code

Response Description

Error Description

Status

Deskripsi

0100

Inquiry Success

-

Success

Inquiry sukses, data berhasil didapatkan.

0101

Inquiry failed

InqRekAsal: <Error Detail> & InqRekTujuan: <Error Detail>

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

Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan
Notes: Silahkan lihat juga halaman "Common Errors" untuk daftar kesalahan umum di BRIAPI

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.

Informasi Umum

HTTP Method

POST

Path

-

Tipe Format

JSON

Authentication

OAuth 2.0 with Access Token

Header Structure

Key

Value

Mandatory

Length

Deskripsi

Authorization

Bearer {token}

M

 

Access Token

BRI-Timestamp

 

M

 

Timestamp dengan format ISO8601

BRI-Signature

 

M

64

Signature

Content-Type

application/json

M

   

Request Structure

Field

Data Type

Mandatory

Length

Deskripsi

Contoh

noReferral

String

M

20

Nomor referensi yang unik, dikirim oleh partner

20210202126111111111

source
Account

String

M

15

Rekening sumber

020601000255504

beneficiary
Account

String

M

15

Rekening tujuan

020601006031306

amount

String

M

15

Nominal transfer Format ##.##

10000.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

transaction
DateTime

String

M

19

Tanggal dan waktu transaksi, format: dd-MM-yyyy HH:mm:ss

09-03-2021 15:08:00

remark

String

M

40

Remark transaksi. Untuk keperluan identifikasi transaksi, mohon untuk mencantumkan nilai unik di dalam remark (dapat menggunkaan noReferral). Ini akan muncul di rekening koran.

REMARK TEST 20210202126111111111

Response Structure

Field

Data Type

Mandatory

Length

Deskripsi

Contoh

responseCode

String

M

 

Response code

0200

responseDescription

String

M

 

Response description

Cek Status Sukses

errorDescription

String

M

 

Error description

Reference number is already used

journalSeq

String

M

 

Journal sequence

8020001

Request & Response Payload Sample

Request :


curl --location --request POST 'https://sandbox.partner.api.bri.co.id/v3.1/transfer/internal' \
  --header 'BRI-Timestamp: ((TIMESTAMP))' \
  --header 'BRI-Signature: ((SIGNATURE))' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "noReferral": "20210202126111111111",
    "sourceAccount": "020601000255504",
    "beneficiaryAccount": "020601006031306",
    "amount": "10000.00",
    "feeType": "OUR",
    "transactionDateTime": "09-03-2021 15:08:00",
    "remark": "REMARK TEST"
  }'	

Normal Response :

{
  "responseCode": "0200",
  "responseDescription": "Payment Success",
  "errorDescription": "",
  "journalSeq": "8020001"
}

Error Response:

{
  "responseCode": "0299",
  "responseDescription": "Payment Failed",
  "errorDescription": "Reference number is not valid"
}

List of Error/Response Code

Response Code Response Description Error Description Status Deskripsi
0200 Payment Success     Transaksi sukses diindikasikan oleh response code ini
0401 Payment Failed invalid source account or beneficiary account format Failed  
0402 Payment Failed field source account or beneficiary account is mandatory Failed  
0403 Payment Failed Account not active Failed  
0404 Payment Failed Account not found Failed  
0411 Payment Failed Insufficient Balance Failed  
0412 Payment Failed Transaction is not allowed Failed  
0413 Payment Failed Request Failed Failed  
0414 Payment Failed Payment Failed Failed  
0415 Payment Failed Invalid Request Format Failed  
0202 Payment can not be processed Payment Timeout Pending Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer.
0288 Payment can not be processed Transaction is being processed Pending Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer.
0298 Payment Failed Remark is not valid Failed  
0299 Payment Failed Reference number is not valid Failed  
0902 Unexpected Error Unexpected Error Pending Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer.
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan
Notes: Silahkan lihat juga halaman "Common Errors" untuk daftar kesalahan umum di BRIAPI.

C. Check Status

Catatan: Layanan pengecekan status hanya dapat dilakukan di luar periode Akhir Hari (EOD). Untuk setiap transaksi transfer yang dilakukan pada periode EOD yang menghasilkan time-out atau respons tertunda, pengecekan akun dapat dilakukan pada pukul 8 pagi Waktu Indonesia Barat.

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. Sebagai alternatif yang lebih valid, partner bisa menggunakan endpoint Check Status Rekening Koran.

Informasi Umum

HTTP Method POST
Path /check
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 Decription Example
noReferral String M 20 Nomor referensi unik yang digunakan di transaksi 20210202126111111111

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   berisi informasi response dari transaksi Kosong untuk response error "Data":{}
noReferral String M   Nomor referensi unik yang digunakan di transaksi 20210202126111111111
journalSeq String M   Journal sequence 8020001
internalTransferStatus String M   Response/Error code dari proses transfer. Silahkan lihat daftar error code di endpoint Transfer untuk penjelasan lebih lengkap. 0412
internalTransferErrorMessage String M   Response/Error Description dari proses transfer. Silahkan lihat daftar error code di endpoint Transfer untuk penjelasan lebih lengkap. Transaction is not allowed

Request & Response Payload Sample

Request :

curl -X POST 'https://sandbox.partner.api.bri.co.id/v3.1/transfer/internal/check' \
 -H 'Authorization: Bearer {{TOKEN}}' \ -H 'X-BRI-Signature: {{SIGNATURE}}' \ -H 'BRI-Timestamp: {{TIMESTAMP}}' \ -H 'Content-Type: application/json' \ -d '{ "noReferral": "20180212002" }'

Normal Response :

{ "responseCode":"0300", "responseDescription":"Cek Status Sukses", "errorDescription":"", "data": { "noReferral":"20210202126111111111" "journalSeq":"8020001", "internalTransferStatus":"0200", "internalTransferErrorMessage":"", } }

Error Response:

{ "responseCode":"0307", "responseDescription":"Reference number not found",
 "errorDescription":"", "data":{} }

List of Error/Response Code

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 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  
0299 Payment Failed Reference number is not valid Failed  
0601 - Invalid token Failed  
0602 - Invalid signature Failed  
0902 Unexpected Error Unexpected Error Pending Mohon untuk melakukan pengecekan rekening koran untuk melihat status transfer.
Any error response not listed in the BRIAPI response list is considered pending and requires further investigation.
Notes: Please see also the "Common Errors" page for a list of common errors in BRIAPI.

D. Cek Status Rekening Koran

notes : Layanan check status rekening koran untuk saat ini hanya tersedia di luar periode jam EOD (End Of Day). Untuk transaksi transfer yang dilakukan di jam EOD kemudian mendapatkan timeout / Pending, pengecekan status dapat dilakukan mulai jam 08.00 WIB.

Penjelasan Endpoint

Endpoint ini digunakan untuk mengetahui status transaksi pemindahbukuan (transfer) antar rekening BRI yang dilakukan sebelumnya berdasarkan hasil pengecekan ke rekening koran. Pengecekan dapat dilakukan setelah 15 menit dari waktu transaksi.

Informasi Umum

HTTP Method POST
Path /check-rekening
Tipe Format JSON
Authentication OAuth 2.0 with Access Token

Header Structure 

Key Value Mandatory Length Deskripsi Contoh
Authorization Bearer {token} M   Access Token  
BRI-Timestamp   M   Timestamp dengan format ISO8601  
BRI-Signature     64 Signature  
Content-Type application/json M      

Request Structure

Field Data Type Mandatory Length Deskripsi Contoh
noReferral String M 20 Nomor referensi unik yang digunakan di transaksi ABCD2021033112369
transactionDate String M 10 Tanggal dilakukan transaksi 01-04-2021

 

Response Structure

Field Data Type Mandatory Length Deskripsi Contoh
responseCode String M 4 response code 0300
responseDescription String M   response description Status check success
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 ABCD2021033112369
journalSeq String M   Journal sequence 7001302
amount String M   Nominal transfer Format ##.## 1000.00
remark String M   Remark transaksi. Untuk keperluan identifikasi transaksi. REMARK TEST BRIAPI
internalTransfer
Status
String M 4 Response/Error code dari proses transfer. Silahkan lihat daftar error code di endpoint Transfer untuk penjelasan lebih lengkap. 0412
internalTransferErrorMessage String M  
Response/Error code dari proses transfer. Silahkan lihat daftar error code di endpoint Transfer untuk penjelasan lebih lengkap.
Transaction is not allowed

Request & Response Payload Sample

Request :

 curl --location --request POST ''\''https://sandbox.partner.api.bri.co.id/v3.1/transfer/internal/check-rekening' \
  --header 'BRI-Timestamp: ((TIMESTAMP))' \
  --header 'BRI-Signature: ((SIGNATURE))' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "noReferral": "ABCD2021033112369",
  "transactionDate": "01-04-2021"
  }'

Normal Response :

{
	"responseCode": "0300",
	"responseDescription": "Status check success",
	"data": {
		"noReferral": "ABCD2021033112345",
		"journalSeq": "7021301",
		"amount": "10000.00",
		"remark": "REMARK TEST BRIAPI",
		"internalTransferStatus": "0200",
		"internalTransferDescription": "Payment success"
	}
}

Error Response:

{
  "responseCode": "0212",
  "responseDescription": "Request can not be processed",
  "errorDescription": "Invalid format transaction datetime",
  "data": {}
}	

List of Transfer Status

Gunakan parameter ini untuk menentukan apakah transaksi yang dilakukan sukses atau gagal

Code (internalTransferStatus) Response Description (internalTransferDescription) Status Deskripsi
0200 Payment success Success Transaksi sukses
0201 Payment failed Failed Transaksi gagal
0388 Transaction status is pending, please check again tomorrow at 08:00AM WIB Pending Silahkan ulangi check status

List of Error/Response Code

Response Code Response Description Error Description Status Deskripsi
0300 Status check success   Success Cek status sukses, dan data berhasil diterima. Lihat field internalTransferStatus dan internalTransferDescription di tabel di atas untuk menentukan transaksi sukses atau gagal.
0307   Reference number not found Failed  
0388   Transaction status is pending, please check again tomorrow at 08:00AM WIB Pending Silahkan ulangi check status. Jike mendapat error ini di jam End Of Day, silahkan mengulangi di hari berikutnya
0210 Request can not be processed Reference number must not be empty Failed Reference number must not be empty
0212 Request can not be processed Invalid format transaction datetime Failed Invalid format transaction datetime
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan
Notes: Silahkan lihat juga halaman "Common Errors" untuk daftar kesalahan umum di BRIAPI.

E. Rekonsiliasi

Sebagai syarat utama partner agar bisa menggunakan environment production API Transfer Internal, partner wajib melakukan proses rekonsiliasi menggunakan API Riwayat Transaksi atau menggunakan file mt940 yang disediakan pada H+1. Cara penggunaan dan pengajuan mt940 dapat dilihat pada halaman berikut [Link]. 

F. Informasi Tambahan

Partner juga harus melihat common error BRIAPI yang berlaku untuk seluruh produk BRIAPI, dan melakukan penanganan error sesuai dengan deskripsi yang dicantumkan.