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 buka docs Initial 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:

GET https://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://sandbox.partner.api.bri.co.id/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 888801000157508
beneficiaryAccount String M 15 Rekening tujuan 888801000003301
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://sandbox.partner.api.bri.co.id/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": "888801000157508",
          "beneficiaryAccount": "888801000003301",
          "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 : 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 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. *NOTES: 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://sandbox.partner.api.bri.co.id/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://sandbox.partner.api.bri.co.id/v3/transfer/internal/accounts?noReferral={{NoReferral}

Normal Response :

{
    "responseCode":"0300",
    "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 : 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