API Specification - Valas 2.0

Valuta asing diperlukan untuk transaksi di pasar global dan memiliki nilai tukar resmi yang dicatat di bank sentral. API ini akan membantu Anda memantau nilai tukar valuta asing secara real-time dan memungkinkan Anda melakukan transaksi valuta asing langsung dari dasbor bisnis Anda.

Informasi API

Title Valas v2.0

Version

v2.0

URL Sandbox

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

URL Production

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

Kendali Versi

Versi Dok Versi API Tanggal Tautan Dokumen Deskripsi

v1.0

v2.0

14 Oktober 2022

Halaman ini

Versi awal

v1.1

v2.0

22 Desember 2022

Halaman ini

Menambahkan info mandatory dan length field pada struktur request seluruh endpoint

v1.2 v2.0 30 Maret 2023 Halaman ini Menambahkan RC 4038209 "Dormant Account" pada Endpoint Transaction Valas dan Transaction Valas Non-Nego
v1.3 v2.0 19 Mei 2023 Halaman ini Menambahkan RC 4038215 "Transaction Not Permitted. Duplicate Jurnal Sequence" pada Endpoint  Transaction Valas dan Transaction Valas Non-Nego
v1.4 v2.0 07 Agustus 2023 Halaman ini Mengubah mandatory "M" menjadi "O" pada field originalPartnerReferenceNo field untuk Endpoint Inquiry Transaction

 

Deskripsi Produk

Penjelasan Produk

Dokumen ini bertujuan untuk menjelaskan spesifikasi API dari pengembangan Valas 2.0 dengan detail endpoint sebagai berikut :

  • Get Token
  • Info Kurs Counter
  • Valas Nego Info
  • Info Check Deal Code
  • Transaction Valas
  • Transaction Valas Non Nego
  • Inquiry Transaction
  • Inquiry Limit
  • Upload Underlying

Flow API

flow_api

A. Info Kurs Counter

Penjelasan Endpoint

API Info Kurs Counter digunakan untuk mendapatkan single info kurs counter

Informasi Umum

HTTP Method POST
Path /v2.0/valas-info/kurs-counter
Tipe Format JSON
Authentication OAuth 2.0

Struktur Header

Key

Value

Mandatory

Panjang

Deskripsi

Contoh

Content-Type

application/json

M

 -

 

 

Authorization

Bearer {token}

M

 -

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

 64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

 -

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

 -

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Key

Data Type

Mandatory

Panjang

Deskripsi

Contoh

dealtCurrency

string

M

3

 

USD

counterCurrency

string

M

3

 

IDR

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

string

 

7

 

2008200

responseMessage

string

 

150

 

Successful

data

Object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam Object "data"

Field

Data Type

Mandatory

Lenght

Deskripsi

Contoh

currency

string

 

 

 

USD

counterBuy

string

 

 

 

13955.0000

counterSell

string

 

 

 

14105.0000

LastestUpdate

string

 

 

 

2022-12-02T13:28:22.1

Request & Response Payload Sample

Request :

{ 
    "dealtCurrency": "USD", 
    "counterCurrency": "IDR" 
}

Normal Response :

{ 
     "responseCode": "2008200", 
     "responseMessage": "Successful", 
     "data": { 
         "currency": "USD", 
         "counterBuy": "13955.0000", 
         "counterSell": "14105.0000", 
         "LastestUpdate": "2022-12-02T13:28:22.1" 
      }
 }

Erorr Response :

{ 
    "responseCode": "4008201", 
    "responseMessage": "Invalid Field Format dealtCurrency" 
}

List of Error/Response Code

HTTP Status

Response Code

Status

Response Message

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

404

4048201

Gagal

Transaction Not Found
  • Currency List Tidak Terdaftar di db
  • Response Message “No Data” Backend (BRIGATE)

403

4038215

Gagal

Transaction Not Permitted.Currency Pair Not Found

Currecy List tidak terdaftar di Backend

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

B. Valas Nego Info

Penjelasan Endpoint

API Valas Nego Info digunakan untuk mendapatkan single info kurs nego tanpa dealcode

Informasi Umum

HTTP Method POST
Path /v2.0/valas-info/kurs-nego
Tipe Format JSON
Authentication OAuth 2.0

Struktur Header

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

Bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

 

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

dealtCurrency

String

M

3

 

USD

counterCurrency

String

M

3

 

IDR

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

String

 

7

Kode Respon

2008200

responseMessage

String

 

150

Detail Respon

Successful

data

object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam object"data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

currencyPair

String

 

 

 

USD-IDR

currency1

String

 

 

 

UDR

currency2

String

 

 

 

IDR

buy

String

 

 

 

15669.0000

sell

String

 

 

 

15689.0000

lastestUpdate

String

 

 

 

2022-11-30T16:31:24.26

Request & Response Payload Sample

Request :

{ 
    "dealtCurrency": "USD", 
    "counterCurrency": "IDR" 
}

Normal Response :

{ 
    "responseCode": "2008200", 
    "responseMessage": "Successful",
    "data": { 
       "currencyPair": "USD-IDR", 
       "currency1": "USD", 
       "currency2": "IDR", 
       "buy": "15669.0000", 
       "sell": "15689.0000", 
       "lastestUpdate": "2022-11-30T16:31:24.26"
 } 
}

Erorr Response :

{ 
    "responseCode": "4008201", 
    "responseMessage": "Invalid Field Format dealtCurrency" 
}

List of Error/Response Code

HTTP Status

Kode Respon

Status

Detail Respon

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token Expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

404

4048201

Gagal

Transaction Not Found
  • Currency List Tidak Terdaftar di db
  • Response Message “No Data” Backend (BRIGATE)

403

4038215

Gagal

Transaction Not Permitted.Currency Pair Not Found

Currecy List tidak terdaftar di Backend

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

C. Check Deal Code

Penjelasan Endpoint

API Check Deal Code digunakan untuk inquiry dealcode ke briefx.

Informasi Umum

HTTP Method POST
Path /v2.0/valas-transaction/nego/dealcode
Tipe Format JSON
Authentication OAuth 2.0

Header Structure

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

Bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

-

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

dealCode

String

M

 

 

O0003540

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

String

M

7

Kode Respon

2008200

responseMessage

String

M

150

Detail Respon

Successful

data

object

M

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam Object "data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

dealNumber

String

M

 

 

O0761674

dealDate

String

M

 

 

2022-12-05T10:29:07.067

valueDate

String

M

 

 

2022-12-05T00:00:00

debitCurrency

String

M

 

 

USD

creditCurrency

String

M

 

 

EUR

debitAmount

Numeric

M

 

 

12.27

creditAmount

Numeric

M

 

 

10.00

dealRate

Numeric

M

 

 

1.2273

buyRate

Numeric

M

 

 

13819.8280

sellRate

Numeric

M

 

 

16961.0750

timeExpired

String

M

 

 

2022-12-05T23:45:00

Request & Response Payload Sample

Request :

{ 
   "dealCode" : "O0003540" 
 }

Normal Response :

{ 
    "responseCode": "2008200", 
    "responseMessage": "Successful", 
    "data": { 
       "dealNumber": "O0761674", 
       "dealDate": "2022-12-05T10:29:07.067", 
       "valueDate": "2022-12-05T00:00:00", 
       "debitCurrency": "USD", 
       "creditCurrency": "EUR", 
       "debitAmount": "12.27", 
       "creditAmount": "10.00", 
       "dealRate": "1.2273", 
       "buyRate": "13819.8280", 
       "sellRate": "16961.0750", 
       "timeExpired": "2022-12-05T23:45:00"
 } 
}

Erorr Response :

{
    "responseCode": "4008222", 
    "responseMessage": "Dealcode Expired" 
}

Daftar Erorr/Kode Respon

HTTP Status

Kode Respon

Status

Detail Respon

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token Expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

400

4008222

Gagal

Dealcode Expired
  • Response Parameter “status” Backend memiliki status value “DE”
  • Time Expired melebihi set waktu dealCode yang ditentukan

403

4038215

Gagal

Transaction Not Permitted.dealcode already used

Response Parameter “status” Backend memiliki value "SLU", "SK", "STOK", "GK" atau selain status “IN” dan status yang telah disebutkan

403

4038215

Gagal

Transaction Not Permitted.value date does not match today’s date

Transaksi pada dealCode tidak untuk hari yang di set

403

4038215

Gagal

Transaction Not Permitted. Inquiry Delcode Failed.

dealCode tidak ada

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

D. Transaction Valas

Penjelasan Endpoint

API Transaction Valas digunakan untuk melakukan transaksi valas berdasarkan rate yang ada saat itu.

Informasi Umum

HTTP Method POST
Path /v2.0/valas-transaction/nego
Tipe Format JSON
Authentication OAuth 2.0

Struktur Header

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

-

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

debitAccount

String

M

15

 

030702000141509

creditAccount

String

M

15

 

034401083104504

dealCode

String

M

 

 

O0003540

remark

String

 

15

 

374628374

partnerReferenceNo

String

M

64

 

6278163827789

underlyingReference

String

C

 

 

 

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

String

 

7

Kode Respon

2008200

responseMessage

String

 

150

Detail Respon

Successful

data

Object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam object"data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

referenceNo

String

 

 

 

8757771

partnerReferenceNo

String

 

 

 

6278163827789

dealCode

String

 

 

 

O0003540

buy

String

 

 

 

14000.00

sell

String

 

 

 

1.00

debitAmount

String

 

 

 

11.00

creditAmount

String

 

 

 

154000.00

remark

String

 

 

 

374628374

Request & Response Payload Sample

Request :

{ 
    "debitAccount": "030702000141509", 
    "creditAccount": "034401083104504", 
    "dealCode": "O0003540", 
    "remark": "374628374", 
    "partnerReferenceNo": "6278163827789", 
    "underlyingReference": ""/CONDITIONAL 
}

Normal Response :

{ 
    "responseCode": "2008200", 
    "responseMessage": "Successful", 
    "data": { 
       "referenceNo": "8759384", 
       "partnerReferenceNo": "6278163827813", 
       "dealCode": "O0003540",  
       "buy": "14000.00", 
       "sell": "1.00", 
       "debitAmount": "11.00", 
       "creditAmount": "154000.00", 
       "remark": "374628374"
 } 
}

Erorr Response :

{ 
    "responseCode": "4038215", 
    "responseMessage": "Transaction Not Permitted. Inquiry Failed" 
}

Daftar Erorr/Kode Response

HTTP Status

Kode Respon

Status

Detail Respon

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

Invalid Field Format (field name)

Request length, format tidak sesuai

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

400

4008222

Gagal

Dealcode Expired
  • Response Parameter “status” Backend memiliki value “DE”
  • Time Expired melebihi setn waktu dealCode yang ditentukan

403

4038215

Gagal

Transaction Not Permitted.dealcode already used

Response Parameter “status” Backend memiliki value "SLU", "SK", "STOK", "GK" atau selain status “IN” dan status yang telah disebutkan

403

4038215

Gagal

Transaction Not Permitted.value date does not match today’s date

Transaksi pada dealCode tidak uuntuk hari yang di set

403

4038215

Gagal

Transaction Not Permitted. Inquiry Delcode Failed.

dealCode Tidak ada

403

4038218

Gagal

Inactive Account

debitAccount atau creditAccount sudah tidak aktif atau Rekening Tidak Bisa Ditarik

403

4038206

Gagal

Feature Not Allowed At This Time. Must Upload Underlying

Transaksi melebihi limit, harus melakukan upload underlying

404

4048211

Gagal

Invalid Account

debitAccount / creditAccount yang dimasukkan tidak valid

404

4048245

Gagal

debitAccount Not Found

debitAccount tidak ditemukan

400

4008224

Gagal

Transaction Over Limit

Melebihi limit untuk melakukan transaksi

404

4048241

Gagal

Invalid underlyingReference

Missing input underlyingReference

404

4048242

Gagal

Expired underlyingReference

underlyingReference sudah melewati masa aktif (1 hari)

404

4048243

Gagal

underlyingReference already in uses

underlyingReference sudah digunakan

403

4038214

Gagal

Insufficient Funds

Saldo tidak cukup

403

4038215

Gagal

Transaction Not Permitted.Currency discrepency

debitAccount/creditAccount yang direquest tidak sesuai mata uang yang di input

403

4038215

Gagal

Transaction Not Permitted.Transaction is not supported

Transaksi tidak bisa diteruskan

400

4008213

Gagal

Invalid BRI External ID

Duplicate BRI EXTERNAL ID di header

409

4098201

Gagal

Duplicate partnerReferenceNo

partnerReferenceNo sudah digunakan (harus unik)

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • Unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

E. Transaction Valas Non Nego

Penjelasan Endpoint

API Transaction Valas Non Nego digunakan untuk melakukan transaksi valas berdasarkan rate yang ada saat itu

Informasi Umum

HTTP Method POST
Path /v2.0/valas-transaction/counter
Tipe Format JSON
Authentication OAuth 2.0

Struktur Header

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

Bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

-

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

debitAccount

String

M

15

 

030702000141509

creditAccount

String

M

15

 

034401083104504

debitCurrency

String

M

3

 

USD

creditCurrency

String

M

3

 

IDR

debitAmount

String

M

 

 

3.00

remark

String

 

15

 

374628374

partnerReferenceNo

String

M

64

 

6278163827120

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

String

 

7

Kode Respon

2008200

responseMessage

String

 

150

Detail Respon

Successful

data

Object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam object"data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

referenceNo

String

 

 

 

8759248

partnerReferenceNo

String

 

 

 

6278163827120

buy

String

 

 

 

13955.00

sell

String

 

 

 

1.00

DebitAmount

String

 

 

 

3.00

CreditAmount

String

 

 

 

41865.00

remark

String

 

 

 

374628374

Request & Response Payload Sample

Request :

{ 
    "debitAccount": "030702000141509", 
    "creditAccount": "034401083104504", 
    "debitCurrency": "USD", 
    "creditCurrency": "IDR", 
    "debitAmount": "3.00", 
    "remark": "374628374", 
    "partnerReferenceNo": "6278163827120", 
}

Normal Response :

{ 
    "responseCode": "2008200", 
    "responseMessage": "Successful", 
    "data": { 
       "referenceNo": "8759248", 
       "partnerReferenceNo": "6278163827120", 
       "buy": "13955.00", 
       "sell": "1.00", 
       "DebitAmount": "3.00", 
       "CreditAmount": "41865.00", 
       "remark": "374628374"
 } 
}

Erorr Response :

{ 
    "responseCode": "4098201", 
    "responseMessage": "Duplicate partnerReferenceNo" 
}

Daftar Erorr/Kode Response

HTTP Status

Kode Respon

Status

Detail Respon

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

404

4048245

Gagal

debitAccount Not Found debitAccount tidak ditemukan

400

4008224

Gagal

Transaction Over Limit

Transaksi tidak bisa diteruskan

403

4038214

Gagal

Insufficient Funds

Saldo tidak cukup

403

4038215

Gagal

Transaction Not Permitted.Currency discrepency

debitAccount/creditAccount yang direquest tidak sesuai mata uang yang di input

403

4038215

Gagal

Transaction Not Permitted.Transaction is not supported

Transaksi tidak bisa diteruskan

400

4008213

Gagal

Invalid BRI External ID

Duplicate BRI EXTERNAL ID di header

403

4038215

Gagal

Transaction Not Permitted.Unused Parameter

Terdapat Field creditAmount di body Request

404

4048213

Gagal

Invalid Amount

Input debitAmount “0” atau kurang dari 1

404

4048211

Gagal

Invalid Account

debitAccount / creditAccount yang dimasukkan tidak valid

403

4038218

Gagal

Inactive Account

debitAccount atau creditAccount sudah tidak aktif

409

4098201

Gagal

Duplicate partnerReferenceNo

partnerReferenceNo sudah digunakan (harus unik)

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • Unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

F. Inquiry Transaction

Penjelasan Endpoint

API Inquiry Transaction digunakan untuk melakukan inquiry dari transaksi valas yang sudah dilakukan.

Informasi Umum

HTTP Method POST
Path /v2.0/valas-transaction/inquiry
Tipe Format JSON
Authentication OAuth 2.0

struktur Header

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

Bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

 

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

originalPartnerReferenceNo

String

O

64

 

6278163827789

originalReferenceNo

String

M

64

 

8757771

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

String

 

7

 

2008200

responseMessage

String

 

150

 

Successful

data

Object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam object"data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

originalPartnerReferenceNo

String

 

 

 

62791638699848

originalReferenceNo

String

 

 

 

7540140

dealCode

String

 

 

 

AP60136176

buy

String

 

 

 

10698.2569

sell

String

 

 

 

126.9504

amount

String

 

 

 

100979.86

remark

String

 

 

 

3746283742343454555445567788776 5544345671234512345123451234561 23

originalTransactionStatusCode

String

 

 

 

00

originalTransactionStatus

String

 

 

 

Transaction approved

debitAmount

String

 

 

 

100979.86

creditAmount

String

 

 

 

84344627.11

Request & Response Payload Sample

Request :

{
    "originalPartnerReferenceNo": "6278163827789", 
    "originalReferenceNo": "8757771" 
}

Normal Response :

{
    "responseCode": "2008200", 
    "responseMessage": "Successful", 
    "data": { 
       "originalPartnerReferenceNo": "62791638699848", 
       "originalReferenceNo": "7540140", 
       "dealCode": "AP60136176", 
       "buy": "10698.2569", 
       "sell": "126.9504", 
       "debitAmount": "100979.86", 
       "creditAmount": "84344627.11", 
       "remark": "3746283742343454555445567788776554434567123451234512345123456123",
       "originalTransactionStatusCode": "00", 
       "originalTransactionStatus": "Transaction approved"
 } 
}

Erorr Response :

{ 
   "responseCode": "4048201", 
   "responseMessage": "Transaction Not Found" 
}

Daftar Erorr/Kode Response

HTTP Status

Kode Respon

Status

Detail Respon

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

404

4048201

Gagal

Transaction Not Found originalPartnerReferenceNo & originalRefrenceNo tidak ada

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • Unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

G. Inquiry Limit

Penjelasan Endpoint

API Inquiry Limit digunakan untuk check limit harian nasabah

Informasi Umum

HTTP Method POST
Path /v2.0/valas-transaction/inquiry-limit
Tipe Format JSON
Authentication OAuth 2.0

Struktur Header

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

Bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

 

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

debitAccount

String

M

15

 

020602000008513

Struktur Response

Field

Data Type

Mandatory

Length

Deskripsi

Contoh

responseCode

String

 

7

Kode respon

2008200

responseMessage

String

 

150

Detail Respon

Successful

data

Object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam object"data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

totalTransaction

String

 

 

 

0

underlyingThreshold

String

 

 

 

25000

underlyingFormulas

String

 

 

 

PER_BULAN

Request & Response Payload Sample

Request :

{  
   "debitAccount": "020602000008513" 
}

Normal Response :

{ 
   "responseCode": "2008200", 
   "responseMessage": "Successful", 
   "data": { 
      "totalTransaction": 0, 
      "underlyingThreshold": "25000", 
      "underlyingFormulas": "PER_BULAN"
 } 
}

Erorr Response :

{ 
    "responseCode": "4008202", 
    "responseMessage": "Invalid Mandatory Field debitAccount" 
}

Daftar Erorr/Kode Response

HTTP Status

Response Code

Status

Response Message

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

404

4048245

Gagal

debitAccount Not Found debitAccount tidak ditemukan

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • Unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan

H. Upload Underlying

Penjelasan Endpoint

API Upload digunakan untuk upload underlying.

Informasi Umum

HTTP Method POST
Path /v2.0/valas-transaction/upload-underlying
Tipe Format JSON
Authentication OAuth 2.0

Struktur Header

Key

 

Value

 

Mandatory

 

Panjang

 

Deskripsi

 

Contoh

 

Content-Type

application/json

M

-

 

 

Authorization

Bearer {token}

M

-

Token OAuth 2.0

https://developers.bri.co.id/id/docs/authentication

 

BRI-Signature

 

M

64

Signature

https://developers.bri.co.id/id/docs/authentication

 

BRI-Timestamp

 

M

-

Timestamp

Timestamp Waktu dimana anda memanggil API. Format waktu yang digunakan mengacu ke format ISO8601 (yyyy-MMddTHH:mm:ss.SSSZ). Waktu tersebut harus dalam UTC nol.

2020-01- 15T17:01: 11+07:00

partnerCode

 

M

 

Kode Partner

rxEG1EMYHQ ZMgb3

Struktur Request

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

fileData

base64

M

 

File dengan maksimal size 5MB

{inputan base64}}

fileName

String

M

 

Nama File

fileNameTest

Struktur Response

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

responseCode

String

 

7

Kode Respon

2008200

responseMessage

String

 

150

Detail Respon

Successful

data

Object

 

 

Detail isian object data terdapat pada tabel dibawah ini

 

Struktur Response dalam object"data"

Field

Data Type

Mandatory

Panjang

Deskripsi

Contoh

underlyingReference

String

 

 

 

1669089033515629956

Request & Response Payload Sample

Request :

curl --location --request POST 'https://sandbox.partner.api.bri.co.id/v2.0/valas/upload-underlying' \ 
--header 'BRI-Signature: {{signature}}' \ 
--header 'BRI-Timestamp: {{timestamp}}' \ 
--header 'Content-Type: application/json' \ 
--header 'partnerCode: rxEG1EMYHQZMgb3' \ 
--data-raw '{ 
     "fileData": "{Inputan Base64}", 
     "fileName": "fileNameTest" 
}'

Normal Response :

{ 
     "responseCode": "2008200",
     "responseMessage": "Successful", 
     "data": { 
        "underlyingReference": "1669089033515629956"
 } 
}

Erorr Response :

{ 
    "responseCode": "4008201", 
    "responseMessage": "Invalid Field Format fileName" 
}

Daftar Erorr/Kode Response

HTTP Status

Kode Respon

Status

Detail Respon

Deskripsi

200

2008200

Sukses

 Successful

Sukses

400

0601

Gagal

 Invalid Token

  • Token tidak sesuai
  • Token kosong
  • Token expired
  • Product belumdi daftarkan ke devapps

400

0602

Gagal

 Invalid Signature

  • Signature salah
  • Perbedaan timestamp atau timestamp tidak valid
  • Payload untuk generate signature salah

400

0109

Gagal

 Invalid request parameter

  • Error yang berkaitan dengan regex(SQL,injection,etc)
  • value length melebihi batas (>10000000)
  • Array element count melebihi batas (>100)

400

4008201

Gagal

 Invalid Mandatory Field {field name}

  • Request missing mandatory field dari Valas
  • Parameter tidak camelCase

400

4008202

Gagal

 Invalid Field Format {field name}

Request length, format tidak sesuai 

400

4008200

Gagal

 Bad Request

  • Content-Type bukan application/json
  • Data Json tidak sesuai struktur json (Service MS)
  • Error ketika insert DB

401

4018200

Gagal

Unauthorized Client 
  • Request missing partnerCode tidak sesuai
  • partnerCode tidak terdaftar
  • partnerCode yang direquest tidak sesuai dengan partnerCode yang di devapps apigee

403

4038215

Gagal

Transaction Not Permitted.Files too big File yang di upload melebihi 10 MB

403

4038215

Gagal

Transaction Not Permitted. Duplicate filename.

Nama File Sudah digunakan

413

-

Gagal

Request Entity Too Large

File yang di upload melebihi 5 MB

504

5048200

Gagal

Timeout Response time melebihi batas timeout di apigee (55s) dan service

500

5008200

Gagal

General Error
  • General Error Backend
  • Unexpected error
  • Service mati/tidak tersedia
  • List-list error yang tidak ke remapping
Seluruh response error yang tidak tercantum dalam list response BRIAPI memiliki status pending dan perlu dilakukan pengecekan