APIDOCS Virtual Account/Briva Online SNAP BI

Informasi API

Title

API Virtual Account/Briva Online

Version

v1.0

URL Sandbox

https://sandbox.partner.api.bri.co.id

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

partner

ServiceId

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:

SNAP BI

length

(20)

Nomor uniik (hingga 20 digit). partnerServiceId + customerNo or

virtualAccountNo

0000000

000001

virtual

Account

No

String

Numeric

M

28

partnerServiceId (8 digit left padding 0) + customerNo (hingga 20 digit).partnerServiceId + customerNo or virtualAccountNo

(kalau devportal BI partnerServiceId + customerNo)

____77777000

0000000001

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

channel

Code

Integer

Numeric

O

4

Channel code berdasarkan ISO 18245

1

source

BankCode

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

b7aee423d

c7489dfa8684

26e5c950c6

77925f3b9

inquiryRequestId

String

Alphanumeric

M

36

Note:

SNAP BI

length

(128)

Unique identifier for this Inquiry. dihasilkan oleh PJP

065ad3ca-2490

-4432-

8a29-0a9a

7ce4904b

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

response

Code

String

Numeric

M

7

Respons code

2002400

response

Message

String

Alphabet

M

150

Respons deskripsi

Successful

virtual

Account

Data

Object

 

M

 

Detail data akun virtual

 

>partner

ServiceId

String

Numeric

M

8

Derivative of X- PARTNER- ID , mirip dengan kode perusahaan partnerServiceId + customerNo or virtualAccountNo

____77777

>customer

No

String

Numeric

M

13

Note: SNAP BI

length

(20)

Nomor unik (hingga 20 digits). partnerServi ceId + customerNo or virtualAccountNo

000000

0000001

>virtual

AccountNo

String

Numeric

M

18

Nomor BRIVA . Format : partnerServiceId + customerNo

___111870000

000000001

>virtual

Account

Name

String

Alphanumeric

M

255

Nama pelanggan

John Doe

>inquiry

RequestId

String

Alphanumeric

M

128

dari Inquiry Request

65eb36a8-

377f-4c17-

89e9-146ed

755d188

>total

Amount

Object

 

M

 

 

 

>>value

String

Numeric

M

16,2

Jumlah transaksi. jumlah total 2 desimal (ISO 4217 )

940000

>>currency

String

 

M

3

Mata uang

IDR

>inquiry

Status

String

Numeric

O

2

 

00

>inquiry

Reason

Object

 

O

 

 

 

>>english

String

Alphabet

O

64

 

Success

>>indonesia

String

Alphabet

O

64

 

Sukses

>additional

Info

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

 

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

partner

ServiceId

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

000000

0000001

virtual

Account

No

String

Numeric

M

28

partnerServiceId (8 digit left padding 0) + customerNo (hingga 20 digits). partnerServiceId +

customerNo or virtualAccountNo

__1118700000000000 01

virtual

Account

Name

String

Alphanumeric

O

255

Nama Pelanggan

John Doe

paid

Amount

Object

 

M

 

 

10001

> value

String

Numeric

M

16,2

Jumlah transaksi.

Nominal diinput oleh pelanggan dengan 2 desimal

1000

0.00

>currency

String

Alphabet

M

3

Mata Uang

IDR

trxDate

Time

Date

Numeric

O

25

Tanggal waktu sistem PJP internal dengan zona waktu, yang mengikuti standar ISO-8601

2022-02-

28T22:38:

25+07:00

channel

Code

Integer

Numeric

O

4

Channel code berdasarkan ISO 18245

1

source

Bank

Code

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

21329020

68917559061

payment

RequestId

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-feb4a

0a89d83

hashed

Source Account

No

String

Hase Base64

O

32

nomor akun sumber di hash

abcdefghijkl

mnopqrstuv

wxyz123456

additional

Info

Object

 

O

 

 

 

>passApp

String

Alphanumeric

O

64

kunci dari pihak ketiga untuk akses API

b7aee423d

c7489dfa86

8426e5c950

c677925f3b9

>idApp

String

Alphanumeric

O

8

Bank identifier dari pihak ketiga untuk akses API

TEST

Response Structure

Field

Data Type

Format

Mandatory

Length

Deskripsi

Contoh

response

Code

String

Numeric

M

7

Response code

2002500

response

Message

String

 

M

150

Response description

Successful

virtual

Account

Data

Object

 

M

 

Detail data akun vertual

 

>partner

ServiceId

String

Numeric

M

8

Turunan dari f X- PARTNER- ID , mirip dengan kode perusahaan. partnerServiceId + customerNo atau virtualAccountNo

___77777

>customer

No

String

Numeric

M

13

Note: SNAP BI length (20)

Nomor unik (hingaa 20 digit). partnerServiceId + customerNo atau virtualAccountNo

000000

0000001

>virtual

Account

No

String

Numeric

M

28

Nomor BRIVA. Format : partnerServiceId + customerNo

___77777000

0000000001

>virtual

Account

Name

String

Alphanumeric

M

255

Nama Pelanggan

John Doe

>payment

RequestId

String

Alphanumeric

M

36

Note: SNAP BI

length

(128)

Dari permintaan pembayaran

f55fa7fe-

d55a-4954-

934f-21c08

a051a87

>paid

Amount

Object

 

O

 

 

 

>>value

String

Numeric

M

16,2

Jumlah transaksi dari permintaan pembayaran

10001

>>currency

String

Alphabet

M

3

Mata Uang

IDR

>payment

Flag

Status

Object

Numeric

O

2

Status for Payment Flag from Partner

00 = Success 01 = Reject 02 = Timeout

00

>payment

Flag

Reason

String

 

 

 

 

 

>>english

String

Alphabet

O

 

 

Success

>>indonesia

String

Alphabet

O

 

 

Sukses

>additional

Info

Object

 

O

 

 

 

>passApp

String

Alphanumeric

O

64

Kunci dari pihak ketiga untuk mengakses API

b7aee423dc7

489dfa86842 6e5c950c67

7925f3b9

>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

 

Simulation