APIDOCS Virtual Account/Briva Online SNAP BI
Informasi API
Title |
API Virtual Account/Briva Online |
---|---|
Version |
v1.0 |
URL Sandbox |
|
URL Production |
Kendali Versi
Versi API |
Tanggal |
Tautan Dokumen |
Deskripsi |
---|---|---|---|
v1.0 |
14 Desember 2021 |
Halaman ini |
Baseline version. |
v2.0 |
25 April 2022 |
Halaman ini |
Update field format |
Deskripsi Produk
Gambaran Produk
Fitur layanan virtual account BRI (BRIVA) untuk mempermudah dan mempercepat aktivitas keuangan yang memiliki keunggulan dibandingkan transfer manual, misalnya tidak perlu melakukan konfirmasi pembayaran secara manual karena akan terverifikasi secara otomatis.
Header Structure
Key |
Value |
Format |
Mandatory |
Length |
Deskripsi |
---|---|---|---|---|---|
Authorization |
Authorization |
|
M |
|
Bearer {Token} |
X-TIMESTAMP |
BRI - Timestamp |
|
M |
|
Format Timestamp ISO8601 |
X-SIGNATURE |
BRI - Signature |
|
M |
|
HMAC_SHA512 |
Content-type |
application/json |
|
M |
|
application/json |
X-PARTNER-ID |
|
Alphanumeric |
M |
36 |
|
CHANNEL-ID |
|
Numeric |
M |
5 |
|
X-EXTERNAL-ID |
|
Alphanumeric |
M |
9 |
numeric |
Endpoint
A. Inquiry
Endpoint Description
Endpoint ini digunakan untuk melakukan inquiry VA ke rekanan BRI
General Information
HTTP Method |
POST |
---|---|
Path |
snap/v1.0/transfer-va/inquiry |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Request Structure
Field |
Data Type |
Format |
Mandatory |
Length |
Deskripsi |
Contoh |
---|---|---|---|---|---|---|
partnerServiceId |
String |
Numeric |
M |
8 |
Turunan dari X PARTNER ID, mirip dengan kode perusahaan, 8 digit left padding space. partnerServiceId + customerNo or virtualAccountNo |
____77777 |
customerNo |
String |
Numeric |
M |
13 Note: SNAP BI length (20) |
Nomor uniik (hingga 20 digit). partnerServiceId + customerNo or virtualAccountNo |
0000000000001 |
virtualAccountNo |
String |
Numeric |
M |
28 |
partnerServiceId (8 digit left padding 0) + customerNo (hingga 20 digit).partnerServiceId + customerNo or virtualAccountNo (kalau devportal BI partnerServiceId + customerNo) |
____777770000000000001 |
amount |
Object |
|
O |
|
|
|
> value |
String |
Numeric |
M |
16,2 |
Jumlah transaksi. Nominal diinput oleh pelanggan dengan 2 desimal |
0.00 |
>currency
|
String |
Alphabet |
M |
3 |
Mata uang |
IDR |
trxDateInit |
Date |
Numeric |
O |
25 |
Tanggal waktu sistem PJP internal dengan zona waktu, yang mengikuti standar ISO-8601 |
2021-11-25T15:01: 07+07:00 |
channelCode |
Integer |
Numeric |
O |
4 |
Channel code berdasarkan ISO 18245 |
1 |
sourceBankCode |
String |
Numeric |
O |
3 |
Code Bank BRI. Format : 0002 |
002 |
passApp |
String |
Alphanumeric |
O |
64 |
Kunci dari pihak ketiga untuk mengakses API seperti client secret |
b7aee423dc7489dfa868 426e5c950c677925f3b9 |
inquiryRequestId |
String |
Alphanumeric |
M |
36 Note: SNAP BI length (128) |
Unique identifier for this Inquiry. dihasilkan oleh PJP |
065ad3ca-2490-44 328a29-0a9a7ce4904b |
additional Info |
Object |
|
O |
|
|
|
>idApp |
String |
Alphanumeric |
M |
8 |
Bank identifier dari pihak ketiga untuk mengakses API |
TEST |
Response Structure
Field |
Data Type |
Format |
Mandatory |
Length |
Deskripsi |
Contoh |
---|---|---|---|---|---|---|
responseCode |
String |
Numeric |
M |
7 |
Respons code |
2002400 |
responseMessage |
String |
Alphabet |
M |
150 |
Respons deskripsi |
Successful |
virtualAccountData |
Object |
|
M |
|
Detail data akun virtual |
|
>partnerServiceId |
String |
Numeric |
M |
8 |
Derivative of X- PARTNER- ID , mirip dengan kode perusahaan partnerServiceId + customerNo or virtualAccountNo |
____77777 |
>customerNo |
String |
Numeric |
M |
13 Note: SNAP BI length (20) |
Nomor unik (hingga 20 digits). partnerServi ceId + customerNo or virtualAccountNo |
0000000000001 |
>virtualAccountNo |
String |
Numeric |
M |
18 |
Nomor BRIVA . Format : partnerServiceId + customerNo |
___111870000000000001 |
>virtualAccountName |
String |
Alphanumeric |
M |
255 |
Nama pelanggan |
John Doe |
>inquiryRequestId |
String |
Alphanumeric |
M |
128 |
dari Inquiry Request |
65eb36a8-377f-4c17-89e9-146ed755d188 |
>totalAmount |
Object |
|
M |
|
|
|
>>value |
String |
Numeric |
M |
16,2 |
Jumlah transaksi. jumlah total 2 desimal (ISO 4217 ) |
940000 |
>>currency |
String |
|
M |
3 |
Mata uang |
IDR |
>inquiryStatus |
String |
Numeric |
O |
2 |
|
00 |
>inquiryReason |
Object |
|
O |
|
|
|
>>english |
String |
Alphabet |
O |
64 |
|
Success |
>>indonesia |
String |
Alphabet |
O |
64 |
|
Sukses |
>additionalInfo |
String |
|
O |
|
|
|
>>idApp |
String |
Alphanumeric |
O |
8 |
Bank identifier dari pihak ketiga untuk mengakses API |
TEST |
>>info1 |
String |
Alphanumeric |
O |
|
|
info 1 harus diisi |
Request & Response Payload Sample
Request
{ "partnerServiceId": " 77777", "customerNo": "0000000000001", "virtualAccountNo": " 777770000000000001", "trxDateInit": "2021-11-25T22:01:07+07:00", "channelCode": 1, "sourceBankCode": "002", "passApp": "b7aee423dc7489dfa868426e5c950c677925", "inquiryRequestId": "e3bcb9a2-e253-40c6-aa77-d72cc138b744", "additionalInfo": { "idApp": "TEST" }
Normal Response :
{ "responseCode": "2002400", "responseMessage": "Successful", "virtualAccountData": { "partnerServiceId": " 77777", "customerNo": "0000000000001", "virtualAccountNo": " 777770000000000001", "virtualAccountName": "John Doe", "inquiryRequestId": "e3bcb9a2-e253-40c6-aa77-d72cc138b744", "totalAmount": { "value": "200000.00", "currency": "IDR" }, "inquiryStatus": "00", "inquiryReason": { "english": "Success", "indonesia": "Sukses" }, "additionalInfo": { "idApp": "TEST", "info1": "info 1 harus diisi" } } }
Error Response :
{ "responseCode": "4042414", "responseMessage": "Paid Bill" }
List of Error/Response Code
HTTP Status |
Service Code |
Case Code |
Status |
Response Message |
Deskripsi |
---|---|---|---|---|---|
200 |
24 |
00 |
Success |
Successful |
|
400 |
24 |
00 |
Failed |
Bad Request |
|
404 |
24 |
01 |
Failed |
Invalid Field Format |
|
400 |
24 |
02 |
Failed |
Invalid Mandatory Field |
|
401 |
24 |
00 |
Failed |
Unauthorized. (Reason) |
|
401 |
24 |
01 |
Failed |
Invalid Token (B2B) |
|
404 |
24 |
11 |
Failed |
Invalid Card/Account/Customer [info]/Virtual Account |
|
404 |
24 |
12 |
Failed |
Invalid Bill/Virtual Account not Found |
|
404 |
24 |
14 |
Failed |
Paid Bill |
|
404 |
24 |
19 |
Failed |
Invalid Bill/Virtual Account |
|
409 |
24 |
00 |
Failed |
Conflict |
|
500 |
24 |
00 |
Failed |
General Error |
|
504 |
24 |
00 |
Failed |
Timeout |
|
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan
B. Payment
Endpoint Description
Endpoint ini digunakan untuk menandai pembayaran VA ke mitra BRI
General Information
HTTP Method |
POST |
---|---|
Path |
snap/v1.0/transfer-va/payment |
Tipe Format |
JSON |
Authentication |
OAuth 2.0 with Access Token |
Request Structure
Field |
Data Type |
Format |
Mandatory |
Length |
Deskripsi |
Contoh |
---|---|---|---|---|---|---|
partnerServiceId |
String |
Numeric |
M |
8 |
Turunan dari X PARTNER ID, mirip dengan kode perusahaan, 8 digit left padding space. partnerServiceId + customerNo or virtualAccountNo |
____77777 |
customer No |
String |
Numeric |
M |
13 Note: SNAPBI length (20) |
Nomor Unik (hingga 20 digits). partnerServiceId + customerNo or virtualAccou ntNo |
0000000000001 |
virtualAccountNo |
String |
Numeric |
M |
28 |
partnerServiceId (8 digit left padding 0) + customerNo (hingga 20 digits). partnerServiceId + customerNo or virtualAccountNo |
__111870000000000001 |
virtualAccountName |
String |
Alphanumeric |
O |
255 |
Nama Pelanggan |
John Doe |
paidAmount |
Object |
|
M |
|
|
10001 |
>value |
String |
Numeric |
M |
16,2 |
Jumlah transaksi. Nominal diinput oleh pelanggan dengan 2 desimal |
10000.00 |
>currency |
String |
Alphabet |
M |
3 |
Mata Uang |
IDR |
trxDateTime |
Date |
Numeric |
O |
25 |
Tanggal waktu sistem PJP internal dengan zona waktu, yang mengikuti standar ISO-8601 |
2022-02-28T22:38: 25+07:00 |
channelCode |
Integer |
Numeric |
O |
4 |
Channel code berdasarkan ISO 18245 |
1 |
sourceBankCode |
String |
Numeric |
O |
3 |
Kode bank BRI. Format : 0002 |
002 |
trxId |
String |
Numeric |
C |
64 |
Unique identifier dihasilkan oleh mintra, Mandatory jika pembayaran berasal dari permintaan pembuatan VA |
2132902068917559061 |
paymentRequestId |
String |
Alphanumeric |
M |
36 Note SNAP BI length (128) |
Unique identifier dihasilkan oleh PJP. jika pembayaran datang dari inquiry proses, nilai harus sama dengan inquiryRequestId |
72064b48-c277-4f98-ae27-feb4a0a89d83 |
hashedSourceAccountNo |
String |
Hase Base64 |
O |
32 |
nomor akun sumber di hash |
abcdefghijklmnop qrstuvwxyz123456 |
additionalInfo |
Object |
|
O |
|
|
|
>passApp |
String |
Alphanumeric |
O |
64 |
kunci dari pihak ketiga untuk akses API |
b7aee423dc7489dfa86 8426e5c950c677925f3b9 |
>idApp |
String |
Alphanumeric |
O |
8 |
Bank identifier dari pihak ketiga untuk akses API |
TEST |
Response Structure
Field |
Data Type |
Format |
Mandatory |
Length |
Deskripsi |
Contoh |
---|---|---|---|---|---|---|
responseCode |
String |
Numeric |
M |
7 |
Response code |
2002500 |
responseMessage |
String |
|
M |
150 |
Response description |
Successful |
virtualAccountData |
Object |
|
M |
|
Detail data akun vertual |
|
>partnerServiceId |
String |
Numeric |
M |
8 |
Turunan dari f X- PARTNER- ID , mirip dengan kode perusahaan. partnerServiceId + customerNo atau virtualAccountNo |
___77777 |
>customerNo |
String |
Numeric |
M |
13 Note: SNAP BI length (20) |
Nomor unik (hingaa 20 digit). partnerServiceId + customerNo atau virtualAccountNo |
0000000000001 |
>virtualAccountNo |
String |
Numeric |
M |
28 |
Nomor BRIVA. Format : partnerServiceId + customerNo |
___777770000000000001 |
>virtualAccountName |
String |
Alphanumeric |
M |
255 |
Nama Pelanggan |
John Doe |
>paymentRequestId |
String |
Alphanumeric |
M |
36 Note: SNAP BI length (128) |
Dari permintaan pembayaran |
f55fa7fe-d55a-4954-934f-21c08a051a87 |
>paidAmount |
Object |
|
O |
|
|
|
>>value |
String |
Numeric |
M |
16,2 |
Jumlah transaksi dari permintaan pembayaran |
10001 |
>>currency |
String |
Alphabet |
M |
3 |
Mata Uang |
IDR |
>paymentFlagStatus |
Object |
Numeric |
O |
2 |
Status for Payment Flag from Partner 00 = Success 01 = Reject 02 = Timeout |
00 |
>paymentFlagReason |
String |
|
|
|
|
|
>>english |
String |
Alphabet |
O |
|
|
Success |
>>indonesia |
String |
Alphabet |
O |
|
|
Sukses |
>additionalInfo |
Object |
|
O |
|
|
|
>passApp |
String |
Alphanumeric |
O |
64 |
Kunci dari pihak ketiga untuk mengakses API |
b7aee423dc7489dfa86842 6e5c950c677925f3b9 |
>idApp |
String |
Alphanumeric |
M |
8 |
Bank identifier dari pihak ketiga untuk mengakses API |
TEST |
>>info1 |
String |
Alphanumeric |
O |
|
Catatan dari mitra |
Test |
Request & Response Payload Sample
Request
'{ "partnerServiceId": " 77777", "customerNo": "0000000000001", "virtualAccountNo": " 777770000000000003", virtualAccountName": "John Doe", "paidAmount": { "value": "10001.00", "currency": "IDR" }, "trxDateTime": "2021-11-25T22:56:31+07:00", "channelCode": 1, "sourceBankCode": "002" "trxId": "2132902068917559061", "paymentRequestId": "e3bcb9a2-e253-40c6-aa77-d72cc138b744", "hashedSourceAccountNo": "kmlm234k2nnsoebr997", "additionalInfo": { "idApp": "TEST", "passApp": "b7aee423dc7489dfa868426e5c950c677925f3b9" } }'
Normal Response :
{ "responseCode": "2002500", "responseMessage": "Successful", "virtualAccountData": { "partnerServiceId": " 77777", "customerNo": "0000000000001", "virtualAccountNo": " 777770000000000001", "virtualAccountName": "John Doe", "paymentRequestId": "e3bcb9a2-e253-40c6-aa77-d72cc138b744", "paidAmount": { "value": "10001.00", "currency": "IDR" }, "paymentFlagStatus": "00", "paymentFlagReason": { "english": "Success", "indonesia": "Sukses" }, "additionalInfo": { "idApp": "TEST", "passApp": "b7aee423dc7489dfa868426e5c950c677925f3b9", "info1": "info 1 harus diisi" } } }
Error Response :
> { "responseCode": "4042512", "responseMessage": "Invalid Bill" }
List of Error/Response Code
HTTP Status |
Response Code |
Case Code |
Status |
Response Description |
Deskripsi |
---|---|---|---|---|---|
200 |
25 |
00 |
Success |
Successful |
|
400 |
25 |
00 |
Reversal |
Bad Request |
|
400 |
25 |
01 |
Reversal |
Invalid Field Format |
|
400 |
25 |
02 |
Reversal |
Invalid Mandatory Field |
|
401 |
25 |
01 |
Reversal |
Unauthorized. (Reason) |
|
401 |
25 |
01 |
Reversal |
Ivalid Token (B2B) |
|
404 |
25 |
12 |
Reversal |
Invalid Bill/Virtual Account not Found |
|
404 |
25 |
13 |
Reversal |
Invalid Amount |
|
404 |
25 |
14 |
Reversal |
Paid Bill |
|
404 |
25 |
19 |
Reversal |
Invalid Bill/Virtual Account |
|
409 |
25 |
00 |
Reversal |
Conflict |
|
500 |
25 |
00 |
Suspend |
General Error |
|
504 |
25 |
00 |
Suspend |
Timeout |
|
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan