+ All Categories
Home > Documents > API Gateway Detail Specification - BNI API Digital Services

API Gateway Detail Specification - BNI API Digital Services

Date post: 16-Jan-2023
Category:
Upload: khangminh22
View: 1 times
Download: 0 times
Share this document with a friend
457
© BNI, 2019 / Version: 4.00 / Status : Final / Ref. : 1/457 STRICTLY CONFIDENTIAL BNI API Management Solution API Gateway Detail Specification
Transcript

© BNI, 2019 / Version: 4.00 / Status : Final / Ref. :

1/457

STR ICTLY CONFIDENTIAL

BNI API Management Solution

API Gateway Detail Specification

2/457

Change Log

Release Date Summary Update by

1.0 November 14th, 2017 Initial document BNI Team

1.1 November17th, 2017 Updated HTTP Headers, added X-Auth BNI Team

1.2 January17th, 2018 Added spec for Payment TELKOM, TV Subscription – Indovision, TV Subscription – Firstmedia, BPJS KS VA, PDAM, and Multifinance

BNI Team

1.3 January24th, 2018 Edit Keagenan PING and added spec for :

Payment : Insurance-BNI Life, PLN Postpaid, PLN Nontaglis, Insurance-Prudential, BNI Credit Card, Non BNI Credit Card, Personal Loan, Charity, Mobile Postpaid

Transfer : BNI Transfer, Non BNI Transfer Purchase : PLN Prepaid, PLN Manual Advice, Top Up

GSM Digital Financial Services : TapCash, UnikQu-Cash In

BNI Team

1.4 February2nd, 2018 Edit description and path of Keagenan PING, and added spec for :

Payment : BPJS TK BPU, Airline Ticketing, Train Ticketing, Insurance-Bumiputera, Internet Telkom (Speedy)

Purchase : PLN Prepaid, PLN Manual Advice, Top Up GoPay, Internet Package-Telkomsel, Internet Package-Indosat Ooredo

Lakupandai CDN

BNI Team

1.5 March 27th, 2018 Enhance spec :

Transfer : Transfer BNI Inquiry (Change from FTR301 to FTR333)

Payment : BPJS KS VA (added h_transactionId on Inquiry Response, Payment Request & Response)

Purchase : Internet Package-Indosat Ooredo (deleted accountNum & amount on Inquiry Request)

Added spec for :

Purchase : Top Up GrabPay, Internet Package-XL Axiata

Agent Management : Agent Registration, Get Temporary Agent List, Get Agent Approved, Get Transaction List, Get One Transaction

CDN : Feature for Upload Photos

BNI Team

1.6 April 24th, 2018 Added spec for :

BNI Life Micro Insurance : Micro Insurance Inquiry, Micro Insurance Payment, Micro Insurance Reprint

Remittance : Remittance Search, Remittance Inquiry, Remittance Payment.

BNI Team

1.7 May 4th, 2018 Enhance spec :

Payment : BPJS KS VA (added biaya_loket on Inquiry Response, Payment Request & Response)

Transfer : Transfer Non BNI (edit Description of field userChannelId), Transfer BNI (edit Description of field requestId & added biaya_loket on Request Payment)

BNI Team

3/457

Lakupandai : Account Opening (added Notes initial step to validate initial deposit amount)

Added spec for :

Payment : Railink

1.8 August 07th, 2018 Enhance spec :

Transfer : Transfer Non BNI (update biaya_adm from hardcode into inquiry response). Attach biaya_adm as payment request. Added spec for : Payment : Jiwasraya Insurance Payment : Transvision TV Subscription

BNI Team

1.9 September 26th, 2018 Enhance spec :

Top Up BNI TapCash : removed data.clientId & data.providerId on Request Payment (for existing client, they can still send both fields and will be ignored by BNI's system), added biaya_loket on Response Payment.

Transavision : change fiturId of Transvision into

FTR519 (Inquiry) and FTR520 (Payment)

Agent Registration : added alamat_jalan_usaha, alamat_rt_usaha, kelurahan_usaha, kecamatan_usaha, kabupaten_usaha, provinsi_usaha, kodepos_usaha, register2 (upload photo CDN for photo agen), manage_by, kategori_agen, klasifikasi_agen

BPJS KS VA – Inquiry : update description of

numberOfMonthsOfBills

Top Up GSM : Removed "Top Up GSM – Big Denom –

Payment", & "Top Up GSM – Small Denom – Payment", added spec "Top Up GSM" (FTR471), top up GSM for all provider

Internet Package : Removed “Internet package – XL Axiata”, “Internet package – Indosat Ooredo”, & “Internet Package – Telkomsel”, added spec “Internet Package” (FTR521), top up Internet Package for all provider

BNI Team

1.10 October 16th, 2018 Added spec for : Payment : Tax

BNI Team

1.11 January 25th, 2019 Enhance spec : Tax : added billerCode on Request Inquiry, added

providerId, billerCode, daerah, kodeRekeningSanksi, jumlahSanksi on Response Inquiry, added kodeRekeningSanksi, jumlahSanksi, billerCode on Request Payment, added providerId on Response Payment

BPJS TK BPU – Inquiry : change name to “BPJS TK BPU & TKI – Inquiry”, added payment_type on Request Inquiry

BNI Team

4/457

BPJS TK BPU – Payment : change name to “BPJS TK

BPU & TKI – Payment”, added payment_type on Request Payment, removed c_description on Request Payment

Removed spec : Purchase : Top Up GrabPay

Additional changes : Update list denom of Top Up GSM Removed all BOLT parameters

5/457

Summary

1.  BNI API’s Overview 9 

2.  Operation Definition 9 

2.1.  Get Token 9 2.2.  Keagenan PING 10 2.3.  Keagenan Transaction 12 

2.3.1.  PAYMENT 12 2.3.1.1.  TELKOM - Inquiry 12 2.3.1.2.  TELKOM - Payment 14 2.3.1.3.  TV Subscription – Indovision - Inquiry 19 2.3.1.4.  TV Subscription – Indovision - Payment 21 2.3.1.5.  TV Subscription – Firstmedia - Inquiry 25 2.3.1.6.  TV Subscription – Firstmedia - Payment 28 2.3.1.7.  BPJS KS VA - Inquiry 32 2.3.1.8.  BPJS KS VA - Payment 35 2.3.1.9.  PDAM - Inquiry 42 2.3.1.10. PDAM - Payment 46 2.3.1.11. Multifinance - Adira - Inquiry 52 2.3.1.12. Multifinance - Adira – Payment 55 2.3.1.13. Multifinance - FIF – Inquiry 62 2.3.1.14. Multifinance - FIF – Payment 65 2.3.1.15. Multifinance - OTO Kredit – Inquiry 72 2.3.1.16. Multifinance - OTO Kredit – Payment 75 2.3.1.17. Multifinance - SMS Finance – Inquiry 82 2.3.1.18. Multifinance - SMS Finance – Payment 85 2.3.1.19. Multifinance - NSC Finance – Inquiry 92 2.3.1.20. Multifinance - NSC Finance – Payment 95 2.3.1.21. Multifinance – KreditPlus– Inquiry 102 2.3.1.22. Multifinance – KreditPlus – Payment 105 2.3.1.23. Multifinance - ACC Finance - Inquiry 112 2.3.1.24. Multifinance - ACC Finance – Payment 115 2.3.1.25.  Insurance – BNI Life – Inquiry 121 2.3.1.26.  Insurance – BNI Life – Payment 124 2.3.1.27. PLN Postpaid – Inquiry 129 2.3.1.28. PLN Postpaid – Payment 136 2.3.1.29. PLN Nontaglis – Inquiry 142 2.3.1.30. PLN Nontaglis - Payment 146 2.3.1.31.  Insurance – Prudential - Initial Premium 151 2.3.1.32.  Insurance – Prudential – Continuation Premium - Inquiry 155 2.3.1.33.  Insurance – Prudential – Continuation Premium – Payment 158 2.3.1.34.  Insurance – Prudential–Premium TopUp – Inquiry 162 

6/457

2.3.1.35.  Insurance – Prudential – Premium TopUp – Payment 165 2.3.1.36.  Insurance – Prudential – Policy Re-print – Inquiry 170 2.3.1.37.  Insurance – Prudential – Policy Re-print – Payment 173 2.3.1.38.  Insurance – Prudential – Policy Adjustment – Inquiry 178 2.3.1.39.  Insurance – Prudential – Policy Adjustment – Payment 181 2.3.1.40.  Insurance – Prudential – Card Printing – Inquiry 185 2.3.1.41.  Insurance – Prudential – Card Printing – Payment 188 2.3.1.42. Credit Card – BNI – Inquiry 193 2.3.1.43. Credit Card – BNI – Payment 195 2.3.1.44. Credit Card – Non BNI – Payment 199 2.3.1.45. Personal Loan 203 2.3.1.46. Charity 207 2.3.1.47. Mobile Postpaid – Inquiry 211 2.3.1.48. Mobile Postpaid– Payment 214 2.3.1.49. BPJS TK BPU & TKI – Inquiry 218 2.3.1.50. BPJS TK BPU & TKI – Payment 222 2.3.1.51. Airline Ticketing– Inquiry 228 2.3.1.52. Airline Ticketing– Payment 231 2.3.1.53. Train Ticketing– Inquiry 235 2.3.1.54. Train Ticketing– Payment 238 2.3.1.55.  Insurance – Bumiputera – Inquiry 244 2.3.1.56.  Insurance – Bumiputera– Payment 247 2.3.1.57.  Internet Telkom– Inquiry 252 2.3.1.58.  Internet Telkom– Payment 255 2.3.1.59. Railink – Inquiry 259 2.3.1.60. Railink– Payment 261 2.3.1.61.  Insurance – Jiwasraya – Inquiry 266 2.3.1.62.  Insurance – Jiwasraya – Payment 268 2.3.1.63. TV Subscription – Transvision - Inquiry 273 2.3.1.64. TV Subscription – Transvision - Payment 275 2.3.1.65. Tax - Inquiry 279 2.3.1.66. Tax - Payment 283 2.3.2.  PURCHASE 290 2.3.2.1.  PLN Prepaid – Inquiry 290 2.3.2.2.  PLN Prepaid – Payment 294 2.3.2.3.  PLN Manual Advice 300 2.3.2.4.  Top Up GSM 303 2.3.2.5.  Top Up Go Pay– Inquiry 307 2.3.2.6.  Top Up Go Pay– Payment 310 2.3.2.7.  Internet Package 315 2.3.2.  TRANSFER 320 2.3.3.1.  Transfer – BNI – Inquiry 320 2.3.3.2.  Transfer – BNI– Payment 323 

7/457

2.3.3.3.  Transfer – Non BNI – Inquiry 327 2.3.3.4.  Transfer – Non BNI – Payment 329 2.3.4.  DIGITAL FINANCIAL SERVICES 334 2.3.4.1.  Top Up BNI TapCash 334 2.3.4.2.  UnikQu – Cash In – Inquiry 338 2.3.4.3.  UnikQu – Cash In – Payment 341 2.3.5.  LAKUPANDAI 345 2.3.5.1.  Account Opening 345 2.3.5.2.  Cash Deposit 352 2.3.5.3.  Cash Withdrawal 356 2.3.5.4.  Create OTP 359 2.3.5.5.  Check Account 363 2.3.5.6.  Check Account Details 366 2.3.6.  AGENT MANAGEMENT 370 2.3.6.1.  Agent Registration 370 2.3.6.2.  Get Temporary Agent List 374 2.3.6.3.  Get Agent Approved 380 2.3.6.4.  Get Transaction List 384 2.3.6.5.  Get One Transaction 389 2.3.7.  BNI LIFE MICRO INSURANCE 392 2.3.2.8.  Micro Insurance – Inquiry 392 2.3.2.9.  Micro Insurance– Payment 394 2.3.2.10. Micro Insurance Reprint 400 2.3.8.  CDN 405 2.3.9.  REMITTANCE 407 2.3.9.1.  Remittance – Search 407 2.3.9.2.  Remittance – Inquiry 410 2.3.9.3.  Remittance – Payment 414 

2.4.  Avoid Characters 420 

2.5.  Appendix 421 

2.5.1.  List of Feature Id 421 2.5.2.  Biller PDAM 424 2.5.3.  List Bank Non BNI 426 2.5.4.  List Denom of Top Up GSM 436 2.5.5.  List Job Code 437 2.5.6.  List Job Code for Agent Registration 438 2.5.7.  BNI Branch Code 438 2.5.8.  BI Area Code 443 2.5.9.  List Product of BNI Life Micro Insurance 451 2.5.10.  List Product of Internet Package 452 2.5.11.  List of Tax Payment Type 456 

8/457

9/457

1. BNI API’s Overview This document describes API Services definition for BNI API Management Solution for Keagenan services.

2. Operation Definition

Following are the operation Definition for the services.

2.1. Get Token GET Token

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /api/oauth/token

HTTP Headers Name Format Mandatory Description

Authorization Basic

BASE64(client_id:client_secret)

Yes

Content-Type application/x-www-form-urlencoded Yes

Query string

parameters

None

Format x-www-form-urlencoded

Authentication None

Request

Definition

Field Data Type Mandatory Description

grant_type String Yes Value = client_credentials

Request

Authorization

Name Value Mandatory Description

Type Basic Yes

Username To be confirm Yes Client id application

dev_testingapps

password To be confirm Yes Client secret application

dev_testingapps

Request Header Content-Type:application/x-www-form-urlencoded

Authorization:Basic

YWI0ZTllODctM2IyYy00ZWQwLTg3YmYtZjgwN2FlOWIxN2UxOmZmOTE1MzQ5LWNiYzYtNGI5ZS1hY2

ZkLWM3MjdkZjk2MGRlZA==

Request Body grant_type=client_credentials

Success response

code

HTTP 200

Response

(Success)

{

"access_token": "x3LyfeWKbeaARhd2PfU4F4OeNi43CrDFdi6XnzScKIuk5VmvFiq0B2",

"token_type": "Bearer",

10/457

"expires_in": 3599,

"scope": "resource.WRITE resource.READ"

}

Error response

code

http 401 Unauthorize

Response

(error)

2.2. Keagenan PING Keagenan PING

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

Content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username and

password are set by

MITRA username and

MITRA password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “ping”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request { "typereq": "ping" }

Response

Definition

Field Data

Type

Mandatory Description

status String Yes If success, value is “true” else

“false”

code String Yes Default “1”

data String Yes Message ping successfully

11/457

Success

response code

HTTP 200

Response

(Success) {     "status": true,     "code": "1",     "data": "Access from 172.18.1.242 at 2018‐01‐19 11:02:58" } 

Error response

code

Response

(error)

{

"status": false,

"error": "Unauthorized"

}

12/457

2.3. Keagenan Transaction

2.3.1. PAYMENT

2.3.1.1. TELKOM - Inquiry Inquiry TELKOM

Description feature for inquiry of TELKOM bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : code for counter of

13/457

MITRA

Example :

reffNum =20170607110019123450100021

data.areaCode String Yes Area code of the customer phone number

(TELKOM phone number)

data.phoneNum String Yes Customer phone number (TELKOM phone

number)

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR439",   "data": {     "clientId": "IBOC",     "reffNum": "20161028110953000001",     "areaCode": "0021",     "phoneNum": "998877441"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket String Yes Transaction description

reffNum String Yes Reference number, as perRequest

amount * String Yes Total of amount payment

areaCode * String Yes Area code of the customerphone

number (TELKOM phone

number), as perRequest

phoneNum * String Yes Customer phone number

(TELKOM phone number), as

perRequest

divreCode String Yes TELKOM divre code

NPWP String Yes Customer NPWP

customerName * String Yes Customer Name

paymentFlag String Yes Payment flag

amountBill String Yes Amount of billing

datelCode String Yes Region code

billAmount1 String Yes Amount payment of billing 1

billRef1 String Yes Reference number of billing 1

billAmount2 String Yes Amount payment of billing 2

14/457

billRef2 String Yes Reference number of billing 2

billAmount3 String Yes Amount payment of billing 3

billRef3 String Yes Reference number of billing 3

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Telkom Inquiry",   "reffNum": "20170810170406998877",   "amount": "65000",   "areaCode": "0021", "phoneNum": "998877441",   "divreCode": "020201",   "NPWP": "123456789012345",   "customerName": "EDWARD VAN DER KAAT",   "paymentFlag": "02",   "amountBill": "2",   "datelCode": "0201",   "billAmount1": "",   "billRef1": "",   "billAmount2": "30000",   "billRef2": "209A238010",   "billAmount3": "35000",   "billRef3": "208A837050" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "TELKOM91",

"message": "Pastikan nomor yang Anda input benar"

2.3.1.2. TELKOM - Payment Payment TELKOM

Description feature for TELKOM bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username and

password are set

by MITRA

username and

15/457

MITRA password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after

MITRA registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

16/457

3. agen counter code : code for counter of

MITRA

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “TELKOM”

data.amount String Yes Total of amount payment.Same value as

Inquiry response

data.areaCode String Yes Area code of the customer phone number

(TELKOM phone number).Same value as

Inquiry response

data.phoneNum String Yes TELKOM phone number.Same value as

Inquiry response

data.divreCode String Yes TELKOM divre code. Same value as Inquiry

response

data.NPWP String Yes Customer NPWP. Same value as Inquiry

response

data.customerName String Yes Customer Name. Same value as Inquiry

response

data.paymentFlag String Yes Payment flag. Same value as Inquiry

response

data.amountBill String Yes Amount of billing. Same value as Inquiry

response

data.datelCode String Yes Region code. Same value as Inquiry

response

data.billAmount1 String Yes Amount payment of billing 1. Same value as

Inquiry response

data.billRef1 String Yes Reference numberof billing 1. Same value

as Inquiry response

data.billAmount2 String Yes Amount payment of billing 2. Same value as

Inquiry response

data.billRef2 String Yes Reference number of billing 2. Same value

as Inquiry response

data.billAmount3 String Yes Amount payment of billing 3. Same value as

Inquiry response

data.billRef3 String Yes Reference number of billing 3. Same value

as Inquiry response

data.accountNum String Yes BNI Agent account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR440",   "data": { 

17/457

    "kode_mitra": "IPY",    "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20151203111111111311",     "providerId": "TELKOM",     "amount": "65000",     "areaCode": "0021",     "phoneNum": "998877441",     "divreCode": "020201",     "NPWP": "123456789012345",     "customerName": "JACO VAN NISTELROOY",     "paymentFlag": "02",     "amountBill": "2",     "datelCode": "0201",     "billAmount1": "",     "billRef1": "",     "billAmount2": "30000",     "billRef2": "209A238010",     "billAmount3": "35000",     "billRef3": "208A837050",     "accountNum": "113020167"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction type.

“20” is for TELKOM payment

status String Yes Connection status with 3rdparties.

data.error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

data.ket String Yes Transaction description

data.journal * String Yes Transaction journal

data.financialJournal * String Yes Transaction financial journal

data.customerName * String Yes Customer name.Same value as

Payment request

data.amountBill String Yes Amount of billing.Same value as

Payment request

data.amount * String Yes Total of amount payment.Same

value as Payment request

data.billAmount1 String Yes Amount payment of billing 1.

Same value as Payment request

data.billAmount2 String Yes Amount payment of billing 2.

Same value as Payment request

data.billAmount3 String Yes Amount payment of billing 3.

18/457

Same value as Payment request

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.biaya_adm String Yes Transaction admin fee

CustomerData.no_tel * String Yes Area code of the customer’s

phone number + customer’s

phone number

CustomerData.nominal String Yes Total of amount payment.

CustomerData.time * String Yes Transaction datetime

Success

response code

HTTP 200

Response

(Success) {   "trxType": "20",   "status": "success",   "data": {     "error": false,     "ket": "TelkomPayment",     "journal": "941330158   ",     "financialJournal": "194770",     "customerName": "JACO VAN NISTELROOY",     "amountBill": "2",     "amount": "65000",     "billAmount1": "",     "billAmount2": "30000",     "billAmount3": "35000"   },   "result": {     "kode_loket": "BNI02250001",     "kd_lkt": 50001,     "nama": "Ryan Ditya Permadi",     "kode_cabang": "022",     "kode_mitra": "BNI",     "alamat": "1\/1 Jatikarya Jati Sampurna Kota Bekasi Jawa Barat 17435"   },   "CustomerData": {     "biaya_adm": "2500",     "no_tel": "0021998877441",     "nominal": "65000",     "time": "2015‐12‐30T10:52:42‐08:00"   } 

} Error response

code

Response

(error)

{

"trxType": "20",

19/457

"status": "success",

"data": {

"error": true,

"errorNum": "TELKOM91",

"message": "Pastikan nomor yang Anda input benar"

},

"result": {

"kode_loket": "INV259100024",

"kd_lkt": "100024",

"nama": "Devi Miraj Pusparini",

"kode_cabang": "259",

"kode_mitra": "INV",

"alamat": "004 Cikini Menteng Kota Jakarta Pusat DKI Jakarta 10330"

},

"CustomerData": {

"biaya_adm": "2500",

"no_tel": "00214351603",

"nominal": "100000",

"time": "2017-08-02T14:48:54+07:00"

}

}

2.3.1.3. TV Subscription – Indovision - Inquiry Inquiry TV Subscription Indovison

Description feature for inquiry of Indovision bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

20/457

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of MITRA

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “INDOVISION”

data.customerId String Yes Customer number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR428",   "data": {     "clientId": "IBOC",     "reffNum": "20151201091320000252",     "providerId": "INDOVISION",     "customerId": "0123012345678"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket * String Yes Transaction description

amount * String Yes Total of amount payment

customerId * String Yes Customer number

21/457

customNum String Yes Service period

npwp String Yes Customer NPWP

customerName * String Yes Customer Name

telkomFlag String Yes Transaction flag, default “02”

numOfBill String Yes Number of billing

billAmount String Yes Amount payment

Success

response code

HTTP 200

Response

(Success)

{

"error": false,

"ket": "TV Berlangganan TORABIKA CAPPUCINO NAN UENAKSS",

"amount": "729000",

"customerId": "0123012345678",

"customNum": "30092013-30",

"npwp": "102013",

"customerName": "TORABIKA CAPPUCINO NAN UENAKSS",

"telkomFlag": "02",

"numOfBill": "1",

"billAmount": "729000"

}

Error response

code

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Issuer down"

}

2.3.1.4. TV Subscription – Indovision - Payment PaymentTV Subscription Indovision

Description feature for Indovision bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

22/457

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

23/457

• length : 1 digit

3. agen counter code : code for counter of

MITRA

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “INDOVISION”

data.amount String Yes Total of amount payment.Same value as

Inquiry response

data.customerId String Yes Customer number. Same value as Inquiry

response

data.customNum String Yes Transaction flag.Same value as Inquiry

response

data.npwp String Yes Customer NPWP. Same value as Inquiry

response

data.customerName String Yes Customer Name. Same value as Inquiry

response

data.telkomFlag String Yes Transaction flag. Same value as Inquiry

response

data.numOfBill String Yes Number of billing. Same value as Inquiry

response

data.billAmount String Yes Amount payment. Same value as Inquiry

response

data.accountNum String Yes BNI Agent account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR429",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20151201091320000255",     "providerId": "INDOVISION",     "amount": "700000",     "customerId": "0123012345678",     "customNum": "200801  ‐20",     "npwp": "0802",     "customerName": "HUDI SUKARMA",     "telkomFlag": "02",     "numOfBill": "1",     "billAmount": "700000",     "accountNum": "115258134"   } 

24/457

} Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction type.

“40” is for Indovision payment

status String Yes Connection status with 3rdparties.

data.error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

data.ket String Yes Transaction description

data.financialJournal * String Yes Transaction financial journal

data.journal * String Yes Transaction journal

data.customerId * String Yes Customer number.Same value as

Payment request

data.customerName * String Yes Customer name.Same value as

Payment request

data.reffNum String Yes Transaction reference

number.Same value as Payment

request

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.biaya_adm String Yes Transaction admin fee

CustomerData.nominal String Yes Total of amount payment.

CustomerData.time String Yes Transaction datetime

Success

response code

HTTP 200

Response

(Success) {   "trxType": "40",   "status": "success",   "data": {     "error": false,     "ket": "TV Payment Indovision",     "financialJournal": "317844",     "journal": "945525391   ",     "customerId": "0401000040584",     "customerName": "YUSNITA  PRANIDYA",     "reffNum": "20160212084553050068"   },   "result": {     "kode_loket": "BNI06650068",     "kd_lkt": 50068, 

25/457

    "nama": "DENOK WULANDARI",    "kode_cabang": "066",     "kode_mitra": "BNI",     "alamat": "003\/004 Lempeh Sumbawa Kab Sumbawa Nusa Tenggara Barat (NTB) 84312"   },   "CustomerData": {     "biaya_adm": 0,     "nominal": "104900",     "time": "2016‐02‐12T08:45:56+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "40",

"status": "success",

"data": {

"error": true,

"errorNum": "91",

"message": "Issuer down"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"biaya_adm": 0,

"nominal": "70000",

"time": "2018-01-15T10:08:49+07:00"

}

}

2.3.1.5. TV Subscription – Firstmedia - Inquiry Inquiry TV SubscriptionFirstmedia

Description feature for inquiry of Firstmedia bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

26/457

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of MITRA

Example :

reffNum =20170607110019123450100021

data.customerId String Yes Customer number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR500",   "data": {     "reffNum": "20170815114523000929",     "customerId": "11113333"   } }

Response

27/457

Definition Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket * String Yes Transaction description

systemId String Yes Default “FIRSTMEDIA”

channelId String Yes Default “IBOC”

clientId String Yes Default “IBOC”

reffNum String Yes Transaction reference

number.Same value as Inquiry

request

amount * String Yes Total of amount payment

customerId * String Yes Customer number

penalty String Yes Transaction penalty

billReffNo String Yes Bill reference number

customerName * String Yes Customer Name

kandatelNum String Yes Transaction region code

fee * String Yes Bank admin fee

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "First Media Payment",   "systemId": "FIRSTMEDIA",   "channelId": "IBOC",   "clientId": "IBOC",   "reffNum": "20170823114523000930",   "amount": "250000",   "customerId": "11113333",   "penalty": "0",   "billReffNo": "111111111111111",   "customerName": "HAJI MUIDIN",   "kandatelNum": "0000",   "fee": "0" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Transaksi tidak dapat dilakukan. Tidak ada balasan dari database provider/biller. (RC

91)"

}

28/457

2.3.1.6. TV Subscription – Firstmedia - Payment PaymentTV SubscriptionFirstmedia

Description feature for Firstmedia bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

29/457

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of

MITRA

Example :

reffNum =20170607110019123450100021

data.amount String Yes Total of amount payment.Same value as

Inquiry response

data.customerId String Yes Customer number. Same value as Inquiry

response

data.penalty String Yes Transaction penalty.Same value as Inquiry

response

data.billReffNo String Yes Bill reference number. Same value as Inquiry

response

data.customerName String Yes Customer Name. Same value as Inquiry

response

data.kandatelNum String Yes Transaction region code. Same value as

Inquiry response

data.accountNum String Yes BNI Agent account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR427",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "pin_transaksi": "12345", 

30/457

    "reffNum": "20170808114523000995",    "amount": "25000",     "customerId": "11113333",     "penalty": "0",     "billReffNo": "111111111111111",     "customerName": "HAJI MUIDIN",     "kandatelNum": "0000",     "accountNum": "115258134"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction type.

“39” is for Firstmedia payment

status String Yes Connection status with 3rdparties.

data.error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

data.ket * String Yes Transaction description

data.systemId String Yes Default “FIRSTMEDIA”

data.channelId String Yes Default “IBOC”

data.clientId String Yes Default “IBOC” .Same value as

Payment request

data.reffNum String Yes Transaction reference

number.Same value as Payment

request

data.journal String Yes Transaction journal

data.financialJournal * String Yes Transaction financial journal

data.amount * String Yes Total of amount payment.Same

value as Payment request

data.customerId * String Yes Customer number.Same value as

Payment request

data.penalty String Yes Transaction penalty.Same value

as Payment request

data.billReffNo * String Yes Bill reference number.Same

value as Payment request

data.customerName * String Yes Customer name.Same value as

Payment request

data.kandatelNum String Yes Transaction region code.Same

value as Payment request

data.accountNum String Yes BNI Agent account number.Same

value as Payment request

data.fee * String Yes Bank admin fee

data.errorNum String Yes Error number, if transaction

31/457

success value = “”

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.biaya_adm String Yes Transaction admin fee

CustomerData.nominal String Yes Total of amount payment.

CustomerData.time * String Yes Transaction datetime

Success

response code

HTTP 200

Response

(Success) {   "trxType": "39",   "status": "success",   "data": {     "error": false,     "ket": "First Media Payment",     "systemId": "FIRSTMEDIA",     "channelId": "IBOC",     "clientId": "IBOC",     "reffNum": "20170823114523000931",     "journal": "917530407   ",     "financialJournal": "469690",     "amount": "25000",     "customerId": "11113333",     "penalty": "0",     "billReffNo": "111111111111111",     "customerName": "HAJI MUIDIN",     "kandatelNum": "0000",     "accountNum": "115258134",     "fee": "0",     "errorNum": ""   },   "result": {     "kode_loket": "BNI22550309",     "kd_lkt": "50309",     "nama": "BNI BANSOS",     "kode_cabang": "225",     "kode_mitra": "BNI",     "alamat": "3/4 Jatikalang Sawahan Kab Sidoarjo JAWA TIMUR 60252"   },   "CustomerData": {     "biaya_adm": 0,     "nominal": "25000",     "time": "2017‐08‐23T16:18:29+07:00"   } }

Error response

code

32/457

Response

(error)

{

"trxType": "39",

"status": "success",

"data": {

"error": true,

"message": "Nomor pelanggan/billing/handphone/tagihan/kode bayar/kartu tidak

ditemukan, pastikan nomor yang Anda masukkan sudah benar. (RC D0)",

"errorNum": "D0",

"ori_errorNum": "D0"

},

"result": {

"nama": "Desi",

"alamat": "000 Kebon Sirih Menteng Kota Jakarta Pusat DKI Jakarta 10340",

"kd_lkt": "100048",

"kode_loket": "PTN259100048",

"kode_mitra": "PTN",

"kode_cabang": "259"

},

"CustomerData": {

"time": "2017-11-02T14:10:12+07:00",

"nominal": "300000"

}

}

2.3.1.7. BPJS KS VA - Inquiry Inquiry BPJS KS VA

Description feature for inquiry of BPJS KS VA bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

33/457

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered

in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part

of the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent PIN transaction

data.billingId String Yes BPJS participant VA/billing Id

data.numberOfMonthsOfBills String Yes Number of months of payment,

with options 1, 2, 3, 4, 5, 6, 7, 8,

9, 10, 11, dan 12

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for

34/457

counter of MITRA

Example :

reffNum

=20170607110019123450100021

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR442",   "data": {     "kode_mitra": "IPY",     "kode_cabang": "014",     "kode_loket": "00005",                                         "pin_transaksi": "12345",     "billingId": "8888801260835323",     "numberOfMonthsOfBills": "1",     "reffNum": "20160829093604000005"   } }

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status.

If transaction is success,

value will be “false” else “true”

PAYMENT_TYPE String Yes Default

“BPJS_KESEHATAN_VA”

CHANNEL String Yes Default “AGENT”

MCP_ID String Yes Default

“BPJS_KESEHATAN_VA”

h_billingId * String Yes BPJS participantVA/billing

Id.Same value as Inquiry

request

h_numberOfMonthsOfBills * String Yes Number of months of

payment.Same value as

Inquiry request

h_customerName * String Yes BPJS participant name

h_branchCode String Yes BPJS Branch code

h_branchName * String Yes BPJS Branch name

h_currency String Yes Transaction currency

h_totalBills * String Yes Total bill

c_fee * String Yes Bank admin fee

h_memberNumber String Yes BPJS head of participant

number

h_totalMember * String Yes Number of family member

35/457

h_detailBillingId String Yes BPJS Participant billing Id

h_detailPremi String Yes Nominal of participant premi

h_detailName String Yes BPJS participant name

h_inquiryTransId String Yes Inquiry transaction Id

h_transactionId String Yes Transaction Id

biaya_loket * String Yes Counter Fee

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "PAYMENT_TYPE": "BPJS_KESEHATAN_VA",   "CHANNEL": "AGENT",   "MCP_ID": "BPJS_KESEHATAN_VA",   "h_billingId": "8888801260835323",   "h_numberOfMonthsOfBills": "1",   "h_customerName": "SEPTIA HANNY LESTARI",   "h_branchCode": "1501",   "h_branchName": "PONTIANAK",   "h_currency": "IDR",   "h_totalBills": "25500",   "c_fee": "5000",   "h_memberNumber": "0001260835323",   "h_totalMember": "1",   "h_detailBillingId": "8888801260835323",   "h_detailPremi": "25500.0",   "h_detailName": "SEPTIA HANNY LESTARI",   "h_inquiryTransId": "20160829T094525N000006J0000000840R030SRAVI0",   "h_transactionId": "E098CF4618BB556C",                     "biaya_loket": "2500" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "20",

"message": "Transaksi tidak dapat dilakukan. (RC 20)"

}

2.3.1.8. BPJS KS VA - Payment Payment BPJS KS VA

Description feature for BPJS KS VA bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

36/457

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI

after MITRA registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered

in BNI H2H system. This code is part

of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

data.accountNum String Yes BNI Agent account number

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen counter

37/457

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for

counter of MITRA

Example :

reffNum

=20170607110019123450100021

data.PAYMENT_TYPE String Yes Default “BPJS_KESEHATAN_VA”.

Same value as Inquiry response

data.CHANNEL String Yes Default “AGENT”. Same value as

Inquiry response

data.MCP_ID String Yes Default “BPJS_KESEHATAN_VA”.

Same value as Inquiry response

data.h_billingId String Yes BPJS participant VA/billing Id.Same

value as Inquiry response

data.h_numberOfMonthsOfBills String Yes Number of months of payment.

Same value as Inquiry response

data.h_customerName String Yes BPJS participant name.Same value

as Inquiry response

data.h_branchCode String Yes BPJS Branch code. Same value as

Inquiry response

data.h_branchName String Yes BPJS Branch name. Same value as

Inquiry response

data.h_currency String Yes Transaction currency. Same value as

Inquiry response

data.h_totalBills String Yes Total bill. Same value as Inquiry

response

data.c_fee String Yes Bank admin fee. Same value as

Inquiry response

data.h_memberNumber String Yes BPJS head of participant number.

Same value as Inquiry response

data.h_totalMember String Yes Number of family member. Same

value as Inquiry response

data.h_amountPaid String Yes Default “0”

data.c_payMethod String Yes Default “2”

data.c_dbAccountNum String Yes BNI Agent account number

data.h_totalAmount String Yes Total payment. SUM of the

38/457

valuesof data.h_totalBills and

data.h_fee

data.h_detailBillingId String Yes BPJS Participant billing Id. Same

value as Inquiry response

data.h_detailPremi String Yes Nominal of participant premi. Same

value as Inquiry response

data.h_detailName String Yes BPJS participant name. Same value

as Inquiry response

data.h_inquiryTransId String Yes Inquiry transaction Id. Same value

as Inquiry response

data.h_transactionId String Yes Transaction Id. Same value as

Inquiry response

data.c_description String Yes Transaction narration (free text)

data.biaya_loket * String Yes Counter Fee. Same value as Inquiry

response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR443",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "accountNum": 116724773,     "reffNum": "20160829093713000005",     "PAYMENT_TYPE": "BPJS_KESEHATAN_VA",     "CHANNEL": "AGENT",     "MCP_ID": "BPJS_KESEHATAN_VA",     "h_billingId": "8888801260835323",     "h_numberOfMonthsOfBills": "1",     "h_customerName": "SEPTIA HANNY LESTARI",     "h_branchCode": "1501",     "h_branchName": "PONTIANAK",     "h_currency": "IDR",     "h_totalBills": "25500",     "c_fee": "5000",     "h_memberNumber": "0001260835323",     "h_totalMember": "1",     "h_amountPaid": "0",     "c_payMethod": "2",     "c_dbAccountNum": 116724773,     "h_totalAmount": 30500,     "h_detailBillingId": "8888801260835323",     "h_detailPremi": "25500.0",     "h_detailName": "SEPTIA HANNY LESTARI",     "h_inquiryTransId": "20160829T094525N000006J0000000840R030SRAVI0",     "h_transactionId": "E098CF4618BB556C", 

39/457

                                        "biaya_loket": "2500",    "c_description": "ok"   } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction type.

“101” is for BPJS KS VA payment

status String Yes Connection status with

3rdparties.

data.error String Yes Transaction status.

If transaction is success,

value will be “false” else “true”

data.ket String Yes Transaction description

data.PAYMENT_TYPE String Yes Default

“BPJS_KESEHATAN_VA”. Same

value as Payment request

data.CHANNEL String Yes Default “AGENT”. Same value

as Payment request

data.MCP_ID String Yes Default

“BPJS_KESEHATAN_VA”. Same

value as Payment request

data.h_billingId * String Yes BPJS participant VA/billing

Id.Same value as Payment

request

data.h_numberOfMonthsOfBills * String Yes Number of months of

payment. Same value as

Payment request

data.h_customerName * String Yes BPJS participant name.Same

value as Payment request

data.h_branchCode String Yes BPJS Branch code. Same

value as Payment request

data.h_branchName * String Yes BPJS Branch name. Same

value as Payment request

data.h_currency String Yes Transaction currency. Same

value as Payment request

data.h_totalBills * String Yes Total bill. Same value as

Payment request

data.h_amountPaid String Yes Default “0”. Same value as

Payment request

data.status * String Yes Transaction status :

SUKSES : success

transaction

GAGAL : failed

40/457

transaction

TRANSAKSI DALAM 

PROSES : suspend 

transaction 

data.c_fee * String Yes Bank admin fee. Same value

as Payment request

data.h_totalAmount String Yes Total payment. SUM of the

values of data.h_totalBills

and data.h_fee

data.c_payMethod String Yes Default “2”. Same value as

Payment request

data.c_dbAccountNum String Yes BNI Agent account number.

Same value as Payment

request

data.c_description * String Yes Transaction narration. Same

value as Payment request

data.h_memberNumber String Yes BPJS head of participant

number. Same value as

Payment request

data.h_totalMember * String Yes Number of family member.

Same value as Payment

request

data.trxNum String Yes Transaction number

data.accountNumber String Yes BNI Agent account number.

Same value as Payment

request

data.trxTime String Yes Transaction time

data.journal * String Yes Transaction journal number

data.h_transactionId String Yes Transaction Id. Same value

as Payment request

data.errorNum String Yes Error number, if transaction

success value = “”

data.biaya_loket* String Yes Counter fee. Same value as

Payment request

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.biaya_adm String Yes Bank admin fee

CustomerData.noRek String Yes BNI Agent account number.

CustomerData.nominal String Yes Total of amount payment.

41/457

CustomerData.time String Yes Transaction datetime

Success

response code

HTTP 200

Response

(Success) {   "trxType": "101",   "status": "success",   "data": {     "error": false,     "ket": "vabpjsPayment",     "PAYMENT_TYPE": "BPJS_KESEHATAN_VA",     "CHANNEL": "AGENT",     "MCP_ID": "BPJS_KESEHATAN_VA",     "h_billingId": "8888801260835542",     "h_numberOfMonthsOfBills": "3",     "h_customerName": "DIONWIYOKO",     "h_branchCode": "0101",     "h_branchName": "TANJUNG PRIOK PONDOK CABE",     "h_currency": "IDR",     "h_totalBills": "200000",     "h_amountPaid": "0",     "status": "SUKSES",     "c_fee": "0",     "h_totalAmount": "200000",     "c_payMethod": "2",     "c_dbAccountNum": "125143302",     "c_description": "undefined",     "h_memberNumber": "0001835276297",     "h_totalMember": "6",     "trxNum": "630939",     "accountNumber": "125143302",     "trxTime": "13:16:13",     "journal": "630939",     "h_transactionId": "E098CF4618BB556C",     "errorNum": "",                                          "biaya_loket": "2500"   },   "result": {     "kode_loket": "KSN25950312",     "kd_lkt": "50312",     "nama": "KIOSON",     "kode_cabang": "259",     "kode_mitra": "KSN",     "alamat": "RT 4 Tangsel Setiabudi Jakarta Selatan DKI JAKARTA 12910"   },   "CustomerData": {     "biaya_adm": 0,     "noRek": "125143302",     "nominal": "200000",     "time": "2017‐09‐29T13:17:53+07:00"   } }

Error response

42/457

code

Response

(error)

{

"trxType": "101",

"status": "success",

"data": {

"error": true,

"errorNum": "",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "KSN25950303",

"kd_lkt": "50303",

"nama": "Indra Gunawan Wibisono",

"kode_cabang": "259",

"kode_mitra": "KSN",

"alamat": "04\/09 KEBAYORAN LAMA SELATAN KEBAYORAN LAMA JAKARTA

SELATAN DKI JAKARTA 15415"

},

"CustomerData": {

"biaya_adm": 0,

"noRek": "315647407",

"nominal": "200000",

"time": "2017-10-23T11:19:51+08:00"

}

}

2.3.1.9. PDAM - Inquiry Inquiry PDAM

Description feature for inquiry of PDAM bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

43/457

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandator

y

Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of

MITRA

Example :

44/457

reffNum =20170607110019123450100021

data.providerId String Yes Provider id, value refer to mapping on

Appendix 2.5.2 column “provider_id”

(According to the chosen PDAM)

data.adminFeeFlag String Yes Admin fee flag, value refer to mapping on

Appendix 2.5.2 column “admin_fee_flag”

(According to the chosen PDAM)

data.pdam_type String Yes Type of PDAM, value refer to mapping on

Appendix 2.5.2 column “pdam_type”

(According to the chosen PDAM)

data.billingId String Yes Customer number

PDAM Aggegator : billingId send as per

customer input on screen added with the

last 2 digit of biller code as prefix. Value

of biller code refer to mapping on

Appendix 2.5.2 column “biller_code”

(According to the chosen PDAM)

Example :

Customer noinput by customer :

123456

biller code : 131001

billingId : 01123456

PDAM Non Aggregator : billingId send

as per customer input on screen

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR479",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20170811113337151005",     "providerId": "AETRA",     "adminFeeFlag": "1",     "pdam_type": "NON_AGGREGATOR",     "billingId": "400"   } } 

Response

Definition

Field Data

Type

Mandatory Description

45/457

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket String Yes Transaction description

billingId * String Yes Customer number

customerName * String Yes Customer name

flag String Yes Default “02”

billRepeatCount String Yes Amount of bill

kandatelNum String Yes Region code

langCode String Yes Default “1”

billerCode String Yes Biller code

adminFee * String Yes Bank admin fee

billDate String Yes Billing date

billAmount String Yes Billing amount

kubikasi * String Yes Total usage

amount String Yes Total payment

response String Yes variable for internal needs

bl_th * String Yes Billing period

nominalTagihan * String Yes Nominal bill

penalti * String Yes Transaction penalty

totalTagihan * String Yes Total bill payment

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "AETRA",   "billingId": "400",   "customerName": "SRIYANTO",   "flag": "02",   "billRepeatCount": "5",   "kandatelNum": "",   "langCode": " 1",   "billerCode": "1302",   "adminFee": 12500,   "billDate": [     "201211",     "201212",     "201301",     "201302",     "201303"   ],   "billAmount": [     "000000003500",     "000000003500",     "000000003500",     "000000003500",     "000000003500"   ], 

46/457

  "kubikasi": 18000,  "amount": "371558",   "response": "<flag>02</flag><billRepeatCount>5</billRepeatCount><adminFee>2500</adminFee><langCode> 1</langCode><billDate1>201211</billDate1><billAmount1>000000003500</billAmount1><kubikasi1>00050000‐00060000</kubikasi1><billDate2>201212</billDate2><billAmount2>000000003500</billAmount2><kubikasi2>00005000‐00007000</kubikasi2><billDate3>201301</billDate3><billAmount3>000000003500</billAmount3><kubikasi3>00005000‐00007000</kubikasi3><billDate4>201302</billDate4><billAmount4>000000003500</billAmount4><kubikasi4>00005000‐00007000</kubikasi4><billDate5>201303</billDate5><billAmount5>000000003500</billAmount5><kubikasi5>00005000‐00007000</kubikasi5><billDate6></billDate6><billAmount6></billAmount6><kubikasi6></kubikasi6><billDate7></billDate7><billAmount7></billAmount7><kubikasi7></kubikasi7><billDate8></billDate8><billAmount8></billAmount8><kubikasi8></kubikasi8><billDate9></billDate9><billAmount9></billAmount9><kubikasi9></kubikasi9>",   "bl_th": "NOV12, DEC12, JAN13, FEB13, MAR13",   "nominalTagihan": 17500,   "penalti": 354058,   "totalTagihan": 384058 } 

Error response

code

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Transaksi tidak dapat dilakukan. Tidak ada balasan dari database

provider/biller. (RC 91)"

}

2.3.1.10. PDAM - Payment Payment PDAM

Description feature for PDAM bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

47/457

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI

after MITRA registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered

in BNI H2H system. This code is part

of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

48/457

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for

counter of MITRA

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Provider id, value refer to mapping

on Appendix 2.5.2 column

“provider_id” (According to the

chosen PDAM)

data.billingId String Yes Customer number. Same value as

Inquiry response

data.customerName String Yes Customer name. Same value as

Inquiry response

data.response String Yes Same value as Inquiry response

data.bl_th String Yes Billing period.Same value as Inquiry

response

data.penalti String Yes Transaction penalty. Same value as

Inquiry response

data.namaPerusahaan String Yes PDAM company name, value refer to

mapping on Appendix 2.5.2 column

“provider_name” (According to the

chosen PDAM)

data.kubikasi String Yes Total usage. Same value as Inquiry

response

data.amount String Yes Total payment. Same value as

Inquiry response

data.adminFee String Yes Bank admin fee. Same value as

Inquiry response

data.nominalTagihan String Yes Nominal bill. Same value as Inquiry

response

data.totalTagihan String Yes Total bill payment. Same value as

Inquiry response

data.pin_transaksi String Yes Agent PIN transaction

data.accountNum String Yes BNI Agent account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR480",   "data": {     "kode_mitra": "IPY", 

49/457

    "kode_loket": "00005",    "kode_cabang": "014",     "clientId": "IBOC",     "reffNum": "20170811113336400026",     "providerId": "AETRA",     "billingId": "400",     "customerName": "SRIYANTO",     "response": "<flag>02</flag><billRepeatCount>5</billRepeatCount><adminFee>25000</adminFee><langCode> 1</langCode><billDate1>201211</billDate1><billAmount1>000000003500</billAmount1><kubikasi1>00050000‐00060000</kubikasi1><billDate2>201212</billDate2><billAmount2>000000003500</billAmount2><kubikasi2>00005000‐00007000</kubikasi2><billDate3>201301</billDate3><billAmount3>000000003500</billAmount3><kubikasi3>00005000‐00007000</kubikasi3><billDate4>201302</billDate4><billAmount4>000000003500</billAmount4><kubikasi4>00005000‐00007000</kubikasi4><billDate5>201303</billDate5><billAmount5>000000003500</billAmount5><kubikasi5>00005000‐00007000</kubikasi5><billDate6></billDate6><billAmount6></billAmount6><kubikasi6></kubikasi6><billDate7></billDate7><billAmount7></billAmount7><kubikasi7></kubikasi7><billDate8></billDate8><billAmount8></billAmount8><kubikasi8></kubikasi8><billDate9></billDate9><billAmount9></billAmount9><kubikasi9></kubikasi9>",     "bl_th": "NOV12, DEC12, JAN13, FEB13, MAR13",     "penalti": "354058",     "namaPerusahaan": "AETRA",     "kubikasi": "18000",     "amount": "371558",     "adminFee": "125000",     "nominalTagihan": "17500",     "totalTagihan": "496558",     "pin_transaksi": "12345",     "accountNum": "115208477"   } } 

Response

Definition

Field Data

Type

Mandat

ory

Description

trxType String Yes Transaction type.

“69” is for PDAM payment

status String Yes Connection status with

3rdparties.

data.error String Yes Transaction status.

If transaction is success,

value will be “false” else “true”

data.ket String Yes Transaction description

data.reffNum String Yes Transaction reference

number.Same value as

Payment request

data.journal String Yes Transaction journal

50/457

data.financialJournal * String Yes Transaction financial journal

data.amount String Yes Total payment.Same value as

Payment request

data.billingId * String Yes Customer number. Same

value as Payment request

data.billReffNum String Yes Billing refference number

data.customerName * String Yes Customer name. Same value

as Payment request

data.accountNum String Yes BNI Agent account number.

Same value as Payment

request

data.bl_th * String Yes Billing period. Same value as

Payment request

data.penalti * String Yes Transaction penalty. Same

value as Payment request

data.kubikasi * String Yes Total usage. Same value as

Payment request

data.nominalTagihan * String Yes Nominal bill. Same value as

Payment request

data.totalTagihan * String Yes Total bill payment. Same

value as Payment request

data.errorNum String Yes Error number, if transaction

success value = “”

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.noRek String Yes BNI Agent account number

CustomerData.customerName String Yes Customer name. Same value

as Payment request

CustomerData.adminFee * String Yes Bank admin fee

CustomerData.namaPerusahaan String Yes PDAM company name. Same

value as Payment request

CustomerData.time * String Yes Transaction datetime

Success

response code

HTTP 200

Response

(Success) {     "trxType": "69",     "status": "success",     "data": {         "error": false,         "ket": "AETRA",         "reffNum": "20170811113336400026", 

51/457

        "journal": "938490834   ",        "financialJournal": "456261",         "amount": "371558",         "billingId": "400",         "billReffNum": "132R94610001",         "customerName": "SRIYANTO",         "accountNum": "115208477",         "bl_th": "NOV12, DEC12, JAN13, FEB13, MAR13",         "penalti": "354058",         "kubikasi": "18000",         "nominalTagihan": "17500",         "totalTagihan": "496558",         "errorNum": ""     },     "result": {         "kode_loket": "IPY01400005",         "kd_lkt": "00005",         "nama": "Agung",         "kode_cabang": "014",         "kode_mitra": "IPY",         "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"     },     "CustomerData": {         "noRek": "115208477",         "customerName": "SRIYANTO",         "adminFee": "125000",         "namaPerusahaan": "AETRA",         "time": "2017‐08‐11T17:40:29+07:00"     } } 

Error response

code

Response

(error)

{

"trxType": "69",

"status": "success",

"data": {

"error": true,

"errorNum": "",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "KSN25950312",

"kd_lkt": "50312",

"nama": "KIOSON",

"kode_cabang": "259",

"kode_mitra": "KSN",

"alamat": "RT 4 Tangsel Setiabudi Jakarta Selatan DKI JAKARTA 12910"

},

"CustomerData": {

52/457

"noRek": "116908716",

"customerName": "SRIYANTO",

"adminFee": 5000,

"namaPerusahaan": "AETRA",

"time": "2017-09-20T15:25:15+07:00"

}

}

2.3.1.11. Multifinance - Adira - Inquiry Inquiry Multifinance Adira

Description feature for inquiry of Multifinance Adira bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

53/457

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “ADIRA_FINANCE”

data.billingId String Yes Customer’sbilling number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR450",    "data":{   

      "kode_mitra":"ARD",       "kode_cabang":"259",       "kode_loket":"100019",       "pin_transaksi":"12345",       "clientId":"IBOC",       "providerId":"ADIRA_FINANCE",       "billingId":"0754589745",       "reffNum":"20170510093604000012" 

   } }

Response

54/457

Definition Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

Provider * String Yes Multifinance’s provider name

billerCode String Yes Multifinance’s biller code

billingId * String Yes Customer’s bill number

totalBill String Yes Customer’s total bill

installmentNo * String Yes Customer’s installment number

dueDate * String Yes Bill’s due date

policeNo * String Yes Police number/vehicle plate

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

totalInstallment * String Yes Customer’s total installment

amount * String Yes Customer’s bill amount

adminFee * String Yes Bank admin fee

collectionFee String Yes Collection fee

langCode String Yes Language code

transactionName String Yes Transaction’s name

cutOffDate String Yes Bill’s cut off date

billingInfo String Yes Billinginfo

customerName * String Yes Customer’s name

customerType String Yes Customer’s type

mainDebt String Yes Main debt

interest String Yes Interest

outstandingAmount String Yes Outstanding amount

maxPayment * String Yes Maximum payment

minPayment * String Yes Minimum payment

billReffNum String Yes Bill’s reference number

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "Adira Finance",   "billerCode": "1003",   "billingId": "0754589745",   "totalBill": "2920000",   "installmentNo": "10",   "dueDate": "20121224‐20121224",   "policeNo": "",   "installmentAmount": "2900000",   "finedAmount": "20000",   "totalInstallment": "2920000",   "amount": "2940000",   "adminFee": "0",   "collectionFee": "0", 

55/457

  "langCode": "0",  "transactionName": "FIF KRD MBL MTR",   "cutOffDate": "20121224",   "billingInfo": "1",   "customerName": "ROSTINAH",   "customerType": "01",   "mainDebt": "0",   "interest": "0",   "outstandingAmount": "0",   "maxPayment": "2920000",   "minPayment": "2920000",   "billReffNum": "136677790105850011" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86"

}

2.3.1.12. Multifinance - Adira – Payment Payment Multifinance Adira

Description feature for Multifinance Adira bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

Typereq String Yes Type Request. Default “trans”

56/457

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “ADIRA_FINANCE”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

57/457

data.adminFee String Yes Bank admin fee. Same value as Inquiry

response

data.collectionFee String Yes Collection fee. Same value as Inquiry

response

data.langCode String Yes Language code. Same value as Inquiry

response

data.transactionName String Yes Transaction’s name. Same value as

Inquiry response

data.cutOffDate String Yes Bill’s cut off date. Same value as Inquiry

response

data.billingInfo String Yes Billinginfo. Same value as Inquiry

response

data.totalBill String Yes Customer’s total bill. Same value as

Inquiry response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.customerType String Yes Customer’s type. Same value as Inquiry

response

data.installmentNo String Yes Customer’s installment number. Same

value as Inquiry response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.policeNo String Yes Police number/vehicle plate. Same value

as Inquiry response

data.mainDebt String Yes Main debt. Same value as Inquiry

response

data.interest String Yes Interest. Same value as Inquiry response

data.installmentAmount String Yes Customer’s installment amount. Same

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.outstandingAmount String Yes Outstanding amount. Same value as

Inquiry response

data.totalInstallment String Yes Customer’s total installment. Same value

as Inquiry response

data.maxPayment String Yes Maximum payment. Same value as

Inquiry response

data.minPayment String Yes Minimum payment. Same value as Inquiry

response

data.billReffNum String Yes Bill’s reference number. Same value as

Inquiry response

data.amount String Yes Customer’s bill amount. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

58/457

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR451",   "data": {     "kode_mitra": "ARD",     "kode_cabang": "259",     "kode_loket": "100019",     "clientId": "IBOC",     "reffNum": "20170510132923050320",     "providerId": "ADIRA_FINANCE",     "billingId": "0754589745",     "adminFee": "0",     "collectionFee": "0",     "langCode": "0",     "transactionName": "FIF KRD MBL MTR",     "cutOffDate": "20121224",     "billingInfo": "1",     "totalBill": "2920000",     "customerName": "ROSTINAH",     "customerType": "01",     "installmentNo": "10",     "dueDate": "20121224‐20121224",     "policeNo": "",     "mainDebt": "0",     "interest": "0",     "installmentAmount": "2900000",     "finedAmount": "20000",     "outstandingAmount": "0",     "totalInstallment": "2920000",     "maxPayment": "2920000",     "minPayment": "2920000",     "billReffNum": "136677790105850011",     "amount": "2970000",     "accountNum": "116724773",     "pin_transaksi": "12345"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.provider * String Yes Multifinance’s provider

59/457

name

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

journal

data.amount * String Yes Customer’s bill amount.

Same value as Payment

request

data.billingId * String Yes Customer’s bill number.

Same value as Payment

request

data.accountNum String Yes Agent’s account number.

Same value as Payment

request

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.billerCode String Yes Multifinance’s biller code

data.customerName * String Yes Customer’s name. Same

value as Payment

request

data.errorNum String Yes Transaction’s error

number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customerName String Yes Customer’s name. Same

value as Payment

request

CustomerData.adminFee * String Yes Bank admin fee. Same

value as Payment

request

CustomerData.providerId String Yes Multifinance’s provider

ID. Same value as

Payment request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined

amount. Same value as

Payment request

CustomerData.dueDate * String Yes Bill’s due date. Same

value as Payment

request

60/457

CustomerData.installmentAmount * String Yes Customer’s installment

amount. Same value as

Payment request

CustomerData.totalInstallment * String Yes Customer’s total

installment. Same value

as Payment request

CustomerData.installmentNo * String Yes Customer’s installment

number. Same value as

Payment request

CustomerData.collectionFee String Yes Collection fee. Same

value as Payment

request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime * String Yes Transaction’s time

CustomerData.policeNo * String Yes Police number/vehicle

plate. Same value as

Payment request

CustomerData.minPayment * String Yes Minimum payment.

Same value as Payment

request

CustomerData.maxPayment * String Yes Maximum payment.

Same value as Payment

request

Success

response code

HTTP 200

Response

(Success) {   "trxType": "68",   "status": "success",   "data": {     "error": false,     "provider": "FIF KRD MBL MTR",     "journal": "941020094   ",     "financialJournal": "307401",     "amount": "2970000",     "billingId": "0754589745",     "accountNum": "116724773",     "reffNum": "20170510132923050320",     "billerCode": "1003",     "customerName": "0ROSTINAH",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI 

61/457

JAKARTA 15415"   },   "CustomerData": {     "customerName": "ROSTINAH",     "adminFee": "0",     "providerId": "ADIRA_FINANCE",     "nominal": "2970000",     "finedAmount": "20000",     "dueDate": "20121224‐20121224",     "installmentAmount": "2900000",     "totalInstallment": "2920000",     "installmentNo": "10",     "collectionFee": "0",     "time": "2017‐05‐10T13:42:30+07:00",     "trxtime": "10‐May‐2017 13:42:30",     "policeNo": "",     "minPayment": "2920000",     "maxPayment": "2920000"   } }

Error response

code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "86",

"ori_errorNum": "86"

},

"result": {

"kode_loket": "AYP259100049",

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

"kode_cabang": "259",

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI

Jakarta 10520"

},

"CustomerData": {

"customerName": "USEN",

"adminFee": "7500",

"providerId": "ADIRA_FINANCE",

"nominal": 402500,

"finedAmount": "0",

"dueDate": "27 OCT 11",

"installmentAmount": "395000",

62/457

"totalInstallment": "0",

"installmentNo": "33",

"collectionFee": "0",

"time": "2017-11-28T16:14:04+07:00",

"trxtime": "28-Nov-2017 16:14:04",

"policeNo": "B6406WBR",

"minPayment": "395000",

"maxPayment": "395000"

}

2.3.1.13. Multifinance - FIF – Inquiry Inquiry Multifinance FIF

Description feature for inquiry of Multifinance FIF bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

63/457

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “FIF”

data.billingId String Yes Customer’sbilling number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR452",    "data":{   

      "kode_mitra":"ARD",       "kode_cabang":"259",       "kode_loket":"100019",       "pin_transaksi":"12345",       "clientId":"IBOC",       "providerId":"FIF",       "billingId":"726000151612",       "reffNum":"20170512094013050302" 

64/457

   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

Provider * String Yes Multifinance’s provider name

billerCode String Yes Multifinance’s biller code

billingId * String Yes Customer’s bill number

totalBill String Yes Customer’s total bill

installmentNo * String Yes Customer’s installment number

dueDate * String Yes Bill’s due date

policeNo String Yes Police number/vehicle date

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

totalInstallment * String Yes Customer’s total installment

amount * String Yes Customer’s bill amount

adminFee * String Yes Bank admin fee

collectionFee String Yes General info

langCode String Yes Language code

transactionName String Yes Transaction’s name

cutOffDate String Yes Bill’s cut off date

billingInfo String Yes Billinginfo

customerName * String Yes Customer’s name

customerType String Yes Customer’s type

mainDebt String Yes Main debt

interest * String Yes FIF admin fee

outstandingAmount * String Yes FIF collection fee

maxPayment String Yes Maximum payment

minPayment String Yes Minimum payment

billReffNum String Yes Bill’s reference number

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "FIF",   "billerCode": "1004",   "billingId": "726000151612",   "totalBill": "2920000",   "installmentNo": "10",   "dueDate": "20121224‐20121224",   "policeNo": "",   "installmentAmount": "2900000", 

65/457

  "finedAmount": "20000",  "totalInstallment": "2920000",   "amount": "2920000",   "adminFee": "0",   "collectionFee": "0",   "langCode": "0",   "transactionName": "FIF KRD MBL MTR",   "cutOffDate": "20121224",   "billingInfo": "1",   "customerName": "ROSTINAH",   "customerType": "01",   "mainDebt": "0",   "interest": "0",   "outstandingAmount": "0",   "maxPayment": "2920000",   "minPayment": "2920000",   "billReffNum": "136677790105850011" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86"

2.3.1.14. Multifinance - FIF – Payment Payment Multifinance FIF

Description feature for Multifinance FIF bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

66/457

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

67/457

=20170607110019123450100021

data.providerId String Yes Default “FIF”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

data.adminFee String Yes Bank admin fee. Same value as Inquiry

response

data.collectionFee String Yes General info. Same value as Inquiry

response

data.langCode String Yes Language code. Same value as Inquiry

response

data.transactionName String Yes Transaction’s name. Same value as

Inquiry response

data.cutOffDate String Yes Bill’s cut off date. Same value as Inquiry

response

data.billingInfo String Yes Billinginfo. Same value as Inquiry

response

data.totalBill String Yes Customer’s total bill. Same value as

Inquiry response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.customerType String Yes Customer’s type. Same value as Inquiry

response

data.installmentNo String Yes Customer’s installment number. Same

value as Inquiry response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.policeNo String Yes Police number/vehicle plate. Same value

as Inquiry response

data.mainDebt String Yes Main debt. Same value as Inquiry

response

data.interest String Yes FIF admin fee. Same value as Inquiry

response

data.installmentAmount String Yes Customer’s installment amount. Same

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.outstandingAmount String Yes FIF collection fee. Same value as Inquiry

response

data.totalInstallment String Yes Customer’s total installment. Same value

as Inquiry response

data.maxPayment String Yes Maximum payment. Same value as

Inquiry response

data.minPayment String Yes Minimum payment. Same value as Inquiry

response

68/457

data.billReffNum String Yes Bill’s reference number. Same value as

Inquiry response

data.amount String Yes Customer’s bill amount. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR453",   "data": {     "kode_mitra": "ARD",     "kode_cabang": "259",     "kode_loket": "100019",     "clientId": "IBOC",     "reffNum": "20170512093757050351",     "providerId": "FIF",     "billingId": "726000151612",     "adminFee": "0",     "collectionFee": "0",     "langCode": "0",     "transactionName": "FIF KRD MBL MTR",     "cutOffDate": "20121224",     "billingInfo": "1",     "totalBill": "2920000",     "customerName": "ROSTINAH",     "customerType": "01",     "installmentNo": "10",     "dueDate": "20121224‐20121224",     "policeNo": "",     "mainDebt": "0",     "interest": "0",     "installmentAmount": "2900000",     "finedAmount": "20000",     "outstandingAmount": "0",     "totalInstallment": "2920000",     "maxPayment": "2920000",     "minPayment": "2920000",     "billReffNum": "136677790105850011",     "amount": "2930000",     "accountNum": "115258134",     "pin_transaksi": "12345"   } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

69/457

data.error String Yes Transaction status :

false : success

true : failed

data.provider * String Yes Multifinance’s provider

name

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

journal

data.amount * String Yes Customer’s bill amount

data.billingId * String Yes Customer’s bill

number. Same value

as Payment request

data.accountNum String Yes Agent’s account

number. Same value

as Payment request

data.reffNum String Yes Transaction’s

refference number.

Same value as

Payment request

data.billerCode String Yes Multifinance’s biller

code

data.customerName * String Yes Customer’s name.

Same value as

Payment request

data.errorNum String Yes Transaction’s error

number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customerName String Yes Customer’s name.

Same value as

Payment request

CustomerData.adminFee * String Yes Bank admin fee. Same

value as Payment

request

CustomerData.providerId String Yes Multifinance’s provider

ID. Same value as

Payment request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined

amount. Same value

70/457

as Payment request

CustomerData.dueDate * String Yes Bill’s due date. Same

value as Payment

request

CustomerData.installmentAmount * String Yes Customer’s installment

amount. Same value

as Payment request

CustomerData.totalInstallment * String Yes Customer’s total

installment. Same

value as Payment

request

CustomerData.installmentNo * String Yes Customer’s installment

number. Same value

as Payment request

CustomerData.collectionFee String Yes General info. Same

value as Payment

request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime * String Yes Transaction’s time

CustomerData.policeNo String Yes Police number/vehicle

date. Same value as

Payment request

CustomerData.minPayment String Yes Minimum payment.

Same value as

Payment request

CustomerData.maxPayment String Yes Maximum payment.

Same value as

Payment request

CustomerData.interest * String Yes FIF admin fee. Same

value as Payment

request

CustomerData.outstandingAmount * String Yes FIF collection fee.

Same value as

Payment request

Success

response code

HTTP 200

Response

(Success) {   "trxType": "68",   "status": "success",   "data": {     "error": false,     "provider": "FIF KRD MBL MTR",     "journal": "940060328   ",     "financialJournal": "308220",     "amount": "2930000",     "billingId": "726000151612", 

71/457

    "accountNum": "115258134",    "reffNum": "20170512093757050351",     "billerCode": "1004",     "customerName": "ROSTINAH",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "customerName": "ROSTINAH",     "adminFee": "0",     "providerId": "FIF",     "nominal": "2930000",     "finedAmount": "20000",     "dueDate": "20121224‐20121224",     "installmentAmount": "2900000",     "totalInstallment": "2920000",     "installmentNo": "10",     "collectionFee": "0",     "time": "2017‐05‐12T09:42:07+07:00",     "trxtime": "12‐May‐2017 09:42:07",     "policeNo": "",     "minPayment": "2920000",     "maxPayment": "2920000",                                          "interest": "0",                                          "outstandingAmount": "0"   } }

Error response

code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "86",

"ori_errorNum": "86"

},

"result": {

"kode_loket": "AYP259100049",

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

"kode_cabang": "259",

72/457

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI

Jakarta 10520"

},

"CustomerData": {

"customerName": "ROSTINAH",

"adminFee": "0",

"providerId": "FIF",

"nominal": 2920000,

"finedAmount": "20000",

"dueDate": "20121224-20121224",

"installmentAmount": "2900000",

"totalInstallment": "2920000",

"installmentNo": "10",

"collectionFee": "0",

"time": "2017-11-28T16:34:39+07:00",

"trxtime": "28-Nov-2017 16:34:39",

"policeNo": "",

"minPayment": "2920000",

"maxPayment": "2920000"

}

2.3.1.15. Multifinance - OTO Kredit – Inquiry Inquiry Multifinance OTO Kredit

Description feature for inquiry of Multifinance OTO Kredit bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

73/457

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “OTO_FINANCE”

data.billingId String Yes Customer’sbilling number

74/457

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR454",    "data":{   

      "kode_mitra":"ARD",       "kode_cabang":"259",       "kode_loket":"100019",       "pin_transaksi":"12345",       "clientId":"IBOC",       "providerId":"OTO_FINANCE",       "billingId":"01345212443",       "reffNum":"20170510140850050371" 

   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

Provider * String Yes Multifinance’s provider name

billerCode String Yes Multifinance’s biller code

billingId * String Yes Customer’s bill number

totalBill String Yes Customer’s total bill

installmentNo * String Yes Customer’s installment number

dueDate * String Yes Bill’s due date

policeNo * String Yes Police number/vehicle date

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

totalInstallment * String Yes Customer’s total installment

amount * String Yes Customer’s bill amount

adminFee * String Yes Bank admin fee

collectionFee * String Yes Collection fee

langCode String Yes Language code

transactionName String Yes Transaction’s name

cutOffDate String Yes Bill’s cut off date

billingInfo String Yes Billinginfo

customerName * String Yes Customer’s name

customerType String Yes Customer’s type

mainDebt String Yes Main debt

Interest String Yes Interest

outstandingAmount String Yes Outstanding amount

maxPayment String Yes Maximum payment

75/457

minPayment String Yes Minimum payment

billReffNum String Yes Bill’s reference number

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "OTO Kredit Mobil/Motor",   "billerCode": "1002",   "billingId": "01345212443",   "totalBill": "395000",   "installmentNo": "33",   "dueDate": "27 OCT 11",   "policeNo": "B6406WBR",   "installmentAmount": "395000",   "finedAmount": "0",   "totalInstallment": "0",   "amount": "395000",   "adminFee": "2000",   "collectionFee": "0",   "langCode": "1",   "transactionName": "ADIRA FINANCE",   "cutOffDate": "",   "billingInfo": "1",   "customerName": "USEN",   "customerType": "2",   "mainDebt": "0",   "interest": "0",   "outstandingAmount": "0",   "maxPayment": "395000",   "minPayment": "395000",   "billReffNum": "" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86"

}

2.3.1.16. Multifinance - OTO Kredit – Payment Payment Multifinance OTO Kredit

Description feature for Multifinance OTO Kredit bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

76/457

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

77/457

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “OTO_FINANCE”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

data.adminFee String Yes Bank admin fee. Same value as Inquiry

response

data.collectionFee String Yes Collection fee. Same value as Inquiry

response

data.langCode String Yes Language code. Same value as Inquiry

response

data.transactionName String Yes Transaction’s name. Same value as

Inquiry response

data.cutOffDate String Yes Bill’s cut off date. Same value as Inquiry

response

data.billingInfo String Yes Billinginfo. Same value as Inquiry

response

data.totalBill String Yes Customer’s total bill. Same value as

Inquiry response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.customerType String Yes Customer’s type. Same value as Inquiry

response

data.installmentNo String Yes Customer’s installment number. Same

value as Inquiry response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.policeNo String Yes Police number/vehicle plate. Same value

as Inquiry response

data.mainDebt String Yes Main debt. Same value as Inquiry

response

data.interest String Yes Interest. Same value as Inquiry response

78/457

data.installmentAmount String Yes Customer’s installment amount. Same

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.outstandingAmount String Yes Outstanding amount. Same value as

Inquiry response

data.totalInstallment String Yes Customer’s total installment. Same value

as Inquiry response

data.maxPayment String Yes Maximum payment. Same value as

Inquiry response

data.minPayment String Yes Minimum payment. Same value as Inquiry

response

data.billReffNum String Yes Bill’s reference number. Same value as

Inquiry response

data.amount String Yes Customer’s bill amount. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR455",    "data":{   "kode_mitra":"ARD",   "kode_cabang":"259",   "kode_loket":"100019",   "clientId":"IBOC",   "reffNum":"20170512100902050390", 

"providerId":"OTO_FINANCE", "billingId":"01345212443", "adminFee":"2000", "collectionFee":"0", "langCode":"1", "transactionName":"ADIRA FINANCE", "cutOffDate":"", "billingInfo":"1", "totalBill":"395000", "customerName":"USEN", "customerType":"2", "installmentNo":"33", "dueDate":"27 OCT 11", "policeNo":"B6406WBR", "mainDebt":"0", "interest":"0", "installmentAmount":"395000", "finedAmount":"0", "outstandingAmount":"0", "totalInstallment":"0", "maxPayment":"395000", 

79/457

"minPayment":"395000","billReffNum":"", "amount":"397000", "accountNum":"115258134", "pin_transaksi":"12345" 

  } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.provider * String Yes Multifinance’s provider

name

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

journal

data.amount * String Yes Customer’s bill

amount. Same value

as Payment request

data.billingId * String Yes Customer’s bill

number. Same value

as Payment request

data.accountNum String Yes Agent’s account

number. Same value

as Payment request

data.reffNum String Yes Transaction’s

refference number.

Same value as

Payment request

data.billerCode String Yes Multifinance’s biller

code

data.customerName * String Yes Customer’s name.

Same value as

Payment request

data.errorNum String Yes Transaction’s error

number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

80/457

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customerName String Yes Customer’s name.

Same value as

Payment request

CustomerData.adminFee * String Yes Bank admin fee. Same

value as Payment

request

CustomerData.providerId String Yes Multifinance’s provider

ID. Same value as

Payment request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined

amount. Same value

as Payment request

CustomerData.dueDate * String Yes Bill’s due date. Same

value as Payment

request

CustomerData.installmentAmount * String Yes Customer’s installment

amount. Same value

as Payment request

CustomerData.totalInstallment * String Yes Customer’s total

installment. Same

value as Payment

request

CustomerData.installmentNo * String Yes Customer’s installment

number. Same value

as Payment request

CustomerData.collectionFee String Yes Collection fee. Same

value as Payment

request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime * String Yes Transaction’s time

CustomerData.policeNo * String Yes Police number/vehicle

plate. Same value as

Payment request

CustomerData.minPayment String Yes Minimum payment

CustomerData.maxPayment String Yes Maximum payment

Success

response code

HTTP 200

Response

(Success) {   "trxType": "68",   "status": "success",   "data": { 

81/457

    "error": false,    "provider": "FIF KRD MBL MTR",     "journal": "940060328   ",     "financialJournal": "308220",     "amount": "2930000",     "billingId": "726000151612",     "accountNum": "115258134",     "reffNum": "20170512093757050351",     "billerCode": "1004",     "customerName": "ROSTINAH",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "customerName": "ROSTINAH",     "adminFee": "0",     "providerId": "FIF",     "nominal": "2930000",     "finedAmount": "20000",     "dueDate": "20121224‐20121224",     "installmentAmount": "2900000",     "totalInstallment": "2920000",     "installmentNo": "10",     "collectionFee": "0",     "time": "2017‐05‐12T09:42:07+07:00",     "trxtime": "12‐May‐2017 09:42:07",     "policeNo": "",     "minPayment": "2920000",     "maxPayment": "2920000"   } }

Error response

code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "86",

"ori_errorNum": "86"

},

"result": {

"kode_loket": "AYP259100049",

82/457

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

"kode_cabang": "259",

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI

Jakarta 10520"

},

"CustomerData": {

"customerName": "ROSTINAH",

"adminFee": "0",

"providerId": "OTO_FINANCE",

"nominal": 2920000,

"finedAmount": "20000",

"dueDate": "20121224-20121224",

"installmentAmount": "2900000",

"totalInstallment": "2920000",

"installmentNo": "10",

"collectionFee": "0",

"time": "2017-11-28T17:52:44+07:00",

"trxtime": "28-Nov-2017 17:52:44",

"policeNo": "",

"minPayment": "2920000",

"maxPayment": "2920000"

}

2.3.1.17. Multifinance - SMS Finance – Inquiry Inquiry Multifinance SMS Finance

Description feature for inquiry of Multifinance SMS Finance bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string Name Format Mandatory Description

83/457

parameters access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

84/457

data.providerId String Yes Default “SMS_FINANCE”

data.billingId String Yes Customer’sbilling number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR456",    "data":{   

      "kode_mitra":"ARD",       "kode_cabang":"259",       "kode_loket":"100019",       "pin_transaksi":"12345",       "clientId":"IBOC",       "providerId":"SMS_FINANCE",       "billingId":"18132135",       "reffNum":"20170510140850050372" 

   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

provider * String Yes Multifinance’s provider name

billerCode String Yes Multifinance’s biller code

billingId * String Yes Customer’s bill number

totalBill String Yes Customer’s total bill

installmentNo * String Yes Customer’s installment number

dueDate * String Yes Bill’s due date

policeNo * String Yes Police number/vehicle plate

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

totalInstallment * String Yes Customer’s total installment

amount * String Yes Customer’s bill amount

adminFee * String Yes Bank admin fee

collectionFee String Yes Collection fee

langCode String Yes Language code

transactionName String Yes Transaction’s name

cutOffDate String Yes Bill’s cut off date

billingInfo String Yes Billinginfo

customerName * String Yes Customer’s name

customerType String Yes Customer’s type

mainDebt String Yes Main debt

Interest String Yes Interest

85/457

outstandingAmount String Yes Outstanding amount

maxPayment * String Yes Maximum payment

minPayment * String Yes Minimum payment

billReffNum String Yes Bill’s reference number

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "SMS Finance",   "billerCode": "1006",   "billingId": "18132135",   "totalBill": "582500",   "installmentNo": "13",   "dueDate": "20120116‐20120116",   "policeNo": "A1934AA",   "installmentAmount": "577500",   "finedAmount": "0",   "totalInstallment": "577500",   "amount": "57750",   "adminFee": "5000",   "collectionFee": "0",   "langCode": "0",   "transactionName": "SMS FINANCE KRD MBL MTR",   "cutOffDate": "20120116",   "billingInfo": "1",   "customerName": "HAJIBI",   "customerType": "01",   "mainDebt": "577500",   "interest": "0",   "outstandingAmount": "0",   "maxPayment": "0",   "minPayment": "577500",   "billReffNum": "135286270631511011" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86"

2.3.1.18. Multifinance - SMS Finance – Payment Payment Multifinance SMS Finance

Description Feature for Multifinance SMS Finance bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

86/457

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

87/457

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “SMS_FINANCE”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

data.adminFee String Yes Bank admin fee. Same value as Inquiry

response

data.collectionFee String Yes Collection fee. Same value as Inquiry

response

data.langCode String Yes Language code. Same value as Inquiry

response

data.transactionName String Yes Transaction’s name. Same value as

Inquiry response

data.cutOffDate String Yes Bill’s cut off date. Same value as Inquiry

response

data.billingInfo String Yes Billinginfo. Same value as Inquiry

response

data.totalBill String Yes Customer’s total bill. Same value as

Inquiry response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.customerType String Yes Customer’s type. Same value as Inquiry

response

data.installmentNo String Yes Customer’s installment number. Same

value as Inquiry response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.policeNo String Yes Police number/vehicle plate. Same value

as Inquiry response

data.mainDebt String Yes Main debt. Same value as Inquiry

88/457

response

data.interest String Yes Interest. Same value as Inquiry response

data.installmentAmount String Yes Customer’s installment amount. Same

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.outstandingAmount String Yes Outstanding amount. Same value as

Inquiry response

data.totalInstallment String Yes Customer’s total installment. Same value

as Inquiry response

data.maxPayment String Yes Maximum payment. Same value as

Inquiry response

data.minPayment String Yes Minimum payment. Same value as Inquiry

response

data.billReffNum String Yes Bill’s reference number. Same value as

Inquiry response

data.amount String Yes Customer’s bill amount. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR457",    "data":{   "kode_mitra":"ARD",   "kode_cabang":"259",   "kode_loket":"100019",   "clientId":"IBOC",   "reffNum":"20170510154811050309", 

"providerId":"SMS_FINANCE", "billingId":"18132135", "adminFee":"5000", "collectionFee":"0", "langCode":"0", "transactionName":"SMS FINANCE KRD MBL MTR", "cutOffDate":"20120116", "billingInfo":"1", "totalBill":"582500", "customerName":"HAJIBI", "customerType":"01", "installmentNo":"13", "dueDate":"20120116‐20120116", "policeNo":"A1934AA", "mainDebt":"577500", "interest":"0", "installmentAmount":"577500", "finedAmount":"0", "outstandingAmount":"0", 

89/457

"totalInstallment":"577500","maxPayment":"0", "minPayment":"577500", "billReffNum":"135286270631511011", "amount":"57750", "accountNum":"116724773", "pin_transaksi":"12345" 

  } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.provider * String Yes Multifinance’s provider

name

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

journal

data.amount * String Yes Customer’s bill amount.

Same value as Payment

request

data.billingId * String Yes Customer’s bill number.

Same value as Payment

request

data.accountNum String Yes Agent’s account number.

Same value as Payment

request

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.billerCode String Yes Multifinance’s biller code

data.customerName * String Yes Customer’s name. Same

value as Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

90/457

CustomerData.customerName String Yes Customer’s name. Same

value as Payment request

CustomerData.adminFee * String Yes Bank admin fee. Same

value as Payment request

CustomerData.providerId String Yes Multifinance’s provider ID.

Same value as Payment

request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined amount.

Same value as Payment

request

CustomerData.dueDate * String Yes Bill’s due date. Same value

as Payment request

CustomerData.installmentAmount * String Yes Customer’s installment

amount. Same value as

Payment request

CustomerData.totalInstallment * String Yes Customer’s total

installment. Same value as

Payment request

CustomerData.installmentNo * String Yes Customer’s installment

number. Same value as

Payment request

CustomerData.collectionFee String Yes Collection fee. Same value

as Payment request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime * String Yes Transaction’s time

CustomerData.policeNo * String Yes Police number/vehicle

plate. Same value as

Payment request

CustomerData.minPayment * String Yes Minimum payment. Same

value as Payment request

CustomerData.maxPayment * String Yes Maximum payment. Same

value as Payment request

Success

response code

HTTP 200

Response

(Success) {   "trxType": "68",   "status": "success",   "data": {     "error": false,     "provider": "FIF KRD MBL MTR",     "journal": "940060328   ",     "financialJournal": "308220",     "amount": "2930000",     "billingId": "726000151612",     "accountNum": "115258134", 

91/457

    "reffNum": "20170512093757050351",    "billerCode": "1004",     "customerName": "ROSTINAH",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "customerName": "ROSTINAH",     "adminFee": "0",     "providerId": "FIF",     "nominal": "2930000",     "finedAmount": "20000",     "dueDate": "20121224‐20121224",     "installmentAmount": "2900000",     "totalInstallment": "2920000",     "installmentNo": "10",     "collectionFee": "0",     "time": "2017‐05‐12T09:42:07+07:00",     "trxtime": "12‐May‐2017 09:42:07",     "policeNo": "",     "minPayment": "2920000",     "maxPayment": "2920000"   } }

Error response

code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "86",

"ori_errorNum": "86"

},

"result": {

"kode_loket": "AYP259100049",

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

"kode_cabang": "259",

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI

92/457

Jakarta 10520"

},

"CustomerData": {

"customerName": "HAJIBI",

"adminFee": "5000",

"providerId": "SMS_FINANCE",

"nominal": 62750,

"finedAmount": "0",

"dueDate": "20120116-20120116",

"installmentAmount": "577500",

"totalInstallment": "577500",

"installmentNo": "13",

"collectionFee": "0",

"time": "2017-11-28T17:12:14+07:00",

"trxtime": "28-Nov-2017 17:12:14",

"policeNo": "A1934AA",

"minPayment": "577500",

"maxPayment": "0"

}

2.3.1.19. Multifinance - NSC Finance – Inquiry Inquiry Multifinance NSC Finance

Description feature for inquiry of Multifinance NSC Finance bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

93/457

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “NSC_FINANCE”

data.billingId String Yes Customer’sbilling number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

94/457

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR458",    "data":{   

      "kode_mitra":"ARD",       "kode_cabang":"259",       "kode_loket":"100019",       "pin_transaksi":"12345",       "clientId":"IBOC",       "providerId":"NSC_FINANCE",       "billingId":"100132",       "reffNum":"20170510140850050372" 

   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

provider * String Yes Multifinance’s provider name

billerCode String Yes Multifinance’s biller code

billingId * String Yes Customer’s bill number

totalBill String Yes Customer’s total bill

installmentNo * String Yes Customer’s installment number

dueDate * String Yes Bill’s due date

policeNo * String Yes Police number/vehicle plate

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

totalInstallment * String Yes Customer’s total installment

amount * String Yes Customer’s bill amount

adminFee * String Yes Bank admin fee

collectionFee String Yes Collection fee

langCode String Yes Language code

transactionName String Yes Transaction’s name

cutOffDate String Yes Bill’s cut off date

billingInfo String Yes Billinginfo

customerName * String Yes Customer’s name

customerType String Yes Customer’s type

mainDebt String Yes Main debt

interest String Yes Interest

outstandingAmount String Yes Outstanding amount

maxPayment String Yes Maximum payment

minPayment String Yes Minimum payment

billReffNum String Yes Bill’s reference number

95/457

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "NSC Finance",   "billerCode": "1007",   "billingId": "100132",   "totalBill": "350000",   "installmentNo": "25",   "dueDate": "25112013‐05122013",   "policeNo": "B1506WUT",   "installmentAmount": "350000",   "finedAmount": "1000",   "totalInstallment": "351000",   "amount": "351000",   "adminFee": "0",   "collectionFee": "0",   "langCode": "0",   "transactionName": "NSC FINANCE",   "cutOffDate": "22082004",   "billingInfo": "1",   "customerName": "JOHN DOE",   "customerType": "01",   "mainDebt": "351000",   "interest": "0",   "outstandingAmount": "0",   "maxPayment": "600000",   "minPayment": "527400",   "billReffNum": "133766757313319011" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86"

2.3.1.20. Multifinance - NSC Finance – Payment Payment Multifinance NSC Finance

Description feature for Multifinance NSC Finance bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

96/457

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

97/457

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “NSC_FINANCE”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

data.adminFee String Yes Bank admin fee. Same value as Inquiry

response

data.collectionFee String Yes Collection fee. Same value as Inquiry

response

data.langCode String Yes Language code. Same value as Inquiry

response

data.transactionName String Yes Transaction’s name. Same value as

Inquiry response

data.cutOffDate String Yes Bill’s cut off date. Same value as Inquiry

response

data.billingInfo String Yes Billinginfo. Same value as Inquiry

response

data.totalBill String Yes Customer’s total bill. Same value as

Inquiry response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.customerType String Yes Customer’s type. Same value as Inquiry

response

data.installmentNo String Yes Customer’s installment number. Same

value as Inquiry response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.policeNo String Yes Police number/vehicle plate. Same value

as Inquiry response

data.mainDebt String Yes Main debt. Same value as Inquiry

response

data.interest String Yes Interest. Same value as Inquiry response

data.installmentAmount String Yes Customer’s installment amount. Same

98/457

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.outstandingAmount String Yes Outstanding amount. Same value as

Inquiry response

data.totalInstallment String Yes Customer’s total installment. Same value

as Inquiry response

data.maxPayment String Yes Maximum payment. Same value as

Inquiry response

data.minPayment String Yes Minimum payment. Same value as Inquiry

response

data.billReffNum String Yes Bill’s reference number. Same value as

Inquiry response

data.amount String Yes Customer’s bill amount. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR459",    "data":{     "kode_mitra":"ARD",   "kode_cabang":"259",   "kode_loket":"100019",   "clientId":"IBOC",     "reffNum":"20170512103150050372", 

"providerId":"NSC_FINANCE", "billingId":"100132", "adminFee":"0", "collectionFee":"0", "langCode":"0", "transactionName":"NSC FINANCE", "cutOffDate":"22082004", "billingInfo":"1", "totalBill":"350000", "customerName":"JOHN DOE", "customerType":"01", "installmentNo":"25", "dueDate":"25112013‐05122013", "policeNo":"B1506WUT", "mainDebt":"351000", "interest":"0", "installmentAmount":"350000", "finedAmount":"1000", "outstandingAmount":"0", "totalInstallment":"351000", "maxPayment":"600000", "minPayment":"527400", "billReffNum":"133766757313319011", 

99/457

"amount":"351000","accountNum":"115258134", "pin_transaksi":"12345" 

  } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.provider * String Yes Multifinance’s provider

name

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

journal

data.amount * String Yes Customer’s bill amount.

Same value as Payment

request

data.billingId * String Yes Customer’s bill number.

Same value as Payment

request

data.accountNum String Yes Agent’s account number.

Same value as Payment

request

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.billerCode String Yes Multifinance’s biller code

data.customerName * String Yes Customer’s name. Same

value as Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customerName String Yes Customer’s name. Same

value as Payment request

CustomerData.adminFee * String Yes Bank admin fee. Same

100/457

value as Payment request

CustomerData.providerId String Yes Multifinance’s provider ID.

Same value as Payment

request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined amount.

Same value as Payment

request

CustomerData.dueDate * String Yes Bill’s due date. Same value

as Payment request

CustomerData.installmentAmount * String Yes Customer’s installment

amount. Same value as

Payment request

CustomerData.totalInstallment * String Yes Customer’s total

installment. Same value as

Payment request

CustomerData.installmentNo * String Yes Customer’s installment

number. Same value as

Payment request

CustomerData.collectionFee String Yes Collection fee. Same value

as Payment request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime * String Yes Transaction’s time

CustomerData.policeNo * String Yes Police number/vehicle

plate. Same value as

Payment request

CustomerData.minPayment String Yes Minimum payment. Same

value as Payment request

CustomerData.maxPayment String Yes Maximum payment. Same

value as Payment request

Success

response code

HTTP 200

Response

(Success)

{

"trxType": "68",

"status": "success",

"data": {

"error": false,

"provider": "NSC FINANCE",

"journal": "934050391 ",

"financialJournal": "308401",

"amount": "351000",

"billingId": "100132",

"accountNum": "115258134",

"reffNum": "20170512103150050372",

101/457

"billerCode": "1007",

"customerName": "JOHN DOE",

"errorNum": ""

},

"result": {

"kode_loket": "ARD259100019",

"kd_lkt": "100019",

"nama": "LALA",

"kode_cabang": "259",

"kode_mitra": "ARD",

"alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA

15415"

},

"CustomerData": {

"customerName": "JOHN DOE",

"adminFee": "0",

"providerId": "NSC_FINANCE",

"nominal": "351000",

"finedAmount": "1000",

"dueDate": "25112013-05122013",

"installmentAmount": "350000",

"totalInstallment": "351000",

"installmentNo": "25",

"collectionFee": "0",

"time": "2017-05-12T10:36:12+07:00",

"trxtime": "12-May-2017 10:36:12",

"policeNo": "B1506WUT",

"minPayment": "527400",

"maxPayment": "600000"

}

}

Error

response code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "86",

"ori_errorNum": "86"

},

"result": {

"kode_loket": "AYP259100049",

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

102/457

"kode_cabang": "259",

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI Jakarta

10520"

},

"CustomerData": {

"customerName": "AKU ADALAH KATHREEN YANG MANIS",

"adminFee": "5000",

"providerId": "NSC_FINANCE",

"nominal": 356000,

"finedAmount": "1000",

"dueDate": "25112013-05122013",

"installmentAmount": "350000",

"totalInstallment": "351000",

"installmentNo": "25",

"collectionFee": "0",

"time": "2017-11-28T17:44:37+07:00",

"trxtime": "28-Nov-2017 17:44:37",

"policeNo": "B1506WUT",

"minPayment": "527400",

"maxPayment": "600000"

}

}

2.3.1.21. Multifinance – KreditPlus– Inquiry Inquiry Multifinance Kredit Plus

Description feature for inquiry of Multifinance Kredit Plus bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

103/457

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “KREDITPLUS”

104/457

data.billingId String Yes Customer’sbilling number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR460",   "data": {     "kode_mitra": "ARD",     "kode_cabang": "259",     "kode_loket": "100019",     "pin_transaksi": "12345",     "clientId": "IBOC",     "providerId": "KREDITPLUS",     "billingId": "90043012007177",     "reffNum": "20170510155829050312"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

Provider * String Yes Multifinance’s provider name

billerCode String Yes Multifinance’s biller code

billingId * String Yes Customer’s bill number

totalBill String Yes Customer’s total bill

installmentNo * String Yes Customer’s installment number

dueDate * String Yes Bill’s due date

policeNo * String Yes Police number/vehicle plate

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

totalInstallment String Yes Customer’s total installment

amount * String Yes Customer’s bill amount

adminFee * String Yes Bank admin fee

collectionFee * String Yes Collection fee

langCode String Yes Language code

transactionName String Yes Transaction’s name

cutOffDate String Yes Bill’s cut off date

billingInfo String Yes Billinginfo

customerName * String Yes Customer’s name

customerType String Yes Customer’s type

mainDebt String Yes Main debt

interest String Yes Interest

outstandingAmount String Yes Outstanding amount

105/457

maxPayment String Yes Maximum payment

minPayment String Yes Minimum payment

billReffNum String Yes Bill’s reference number

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "Finansia/Kreditplus",   "billerCode": "1005",   "billingId": "90043012007177",   "totalBill": "390000",   "installmentNo": "00006",   "dueDate": "20121028‐20121028",   "policeNo": "D1293HB",   "installmentAmount": "390000",   "finedAmount": "0",   "totalInstallment": "390000",   "amount": "390000",   "adminFee": "0",   "collectionFee": "0",   "langCode": "0",   "transactionName": "FMF KRD MBL MTR",   "cutOffDate": "20121028",   "billingInfo": "1",   "customerName": "MARENDRA GLADIYAKTI",   "customerType": "01",   "mainDebt": "390000",   "interest": "0",   "outstandingAmount": "0",   "maxPayment": "0",   "minPayment": "0",   "billReffNum": "135234950292480011" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86"

2.3.1.22. Multifinance – KreditPlus – Payment Payment Multifinance Kredit Plus

Description feature for Multifinance Kredit Plus bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

106/457

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Agent’s mitra code

data.kode_cabang String Yes Agent’s branch code

data.kode_loket String Yes Agent’s counter code

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “KREDITPLUS”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

107/457

data.adminFee String Yes Bank admin fee. Same value as Inquiry

response

data.collectionFee String Yes Collection fee. Same value as Inquiry

response

data.langCode String Yes Language code. Same value as Inquiry

response

data.transactionName String Yes Transaction’s name. Same value as

Inquiry response

data.cutOffDate String Yes Bill’s cut off date. Same value as Inquiry

response

data.billingInfo String Yes Billinginfo. Same value as Inquiry

response

data.totalBill String Yes Customer’s total bill. Same value as

Inquiry response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.customerType String Yes Customer’s type. Same value as Inquiry

response

data.installmentNo String Yes Customer’s installment number. Same

value as Inquiry response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.policeNo String Yes Police number/vehicle plate. Same value

as Inquiry response

data.mainDebt String Yes Main debt. Same value as Inquiry

response

data.interest String Yes Interest. Same value as Inquiry response

data.installmentAmount String Yes Customer’s installment amount. Same

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.outstandingAmount String Yes Outstanding amount. Same value as

Inquiry response

data.totalInstallment String Yes Customer’s total installment. Same value

as Inquiry response

data.maxPayment String Yes Maximum payment. Same value as

Inquiry response

data.minPayment String Yes Minimum payment. Same value as Inquiry

response

data.billReffNum String Yes Bill’s reference number. Same value as

Inquiry response

data.amount String Yes Customer’s bill amount. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

108/457

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {      "typereq":"trans",    "dealerId":"2214860948771287",    "fiturId":"FTR461",    "data":{     "kode_mitra":"ARD",   "kode_cabang":"259",   "kode_loket":"100019",   "clientId":"IBOC",     "reffNum":"20170512104054050380", 

"providerId":"KREDITPLUS", "billingId":"90043012007177", "adminFee":"0", "collectionFee":"0", "langCode":"0", "transactionName":"FMF KRD MBL MTR", "cutOffDate":"20121028", "billingInfo":"1", "totalBill":"390000", "customerName":"MARENDRA GLADIYAKTI", "customerType":"01", "installmentNo":"00006", "dueDate":"20121028‐20121028", "policeNo":"D1293HB", "mainDebt":"390000", "interest":"0", "installmentAmount":"390000", "finedAmount":"0", "outstandingAmount":"0", "totalInstallment":"390000", "maxPayment":"0", "minPayment":"0", "billReffNum":"135234950292480011", "amount":"390000", "accountNum":"115258134", "pin_transaksi":"12345" 

  } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.provider * String Yes Multifinance’s provider

109/457

name

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

journal

data.amount * String Yes Customer’s bill amount.

Same value as Payment

request

data.billingId * String Yes Customer’s bill number.

Same value as Payment

request

data.accountNum String Yes Agent’s account number.

Same value as Payment

request

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.billerCode String Yes Multifinance’s biller code

data.customerName * String Yes Customer’s name. Same

value as Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customerName String Yes Customer’s name. Same

value as Payment request

CustomerData.adminFee * String Yes Bank admin fee. Same

value as Payment request

CustomerData.providerId String Yes Multifinance’s provider ID.

Same value as Payment

request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined amount.

Same value as Payment

request

CustomerData.dueDate * String Yes Bill’s due date. Same value

as Payment request

CustomerData.installmentAmount String Yes Customer’s installment

amount. Same value as

Payment request

CustomerData.totalInstallment * String Yes Customer’s total

installment. Same value as

110/457

Payment request

CustomerData.installmentNo * String Yes Customer’s installment

number. Same value as

Payment request

CustomerData.collectionFee * String Yes Collection fee. Same value

as Payment request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime * String Yes Transaction’s time

CustomerData.policeNo * String Yes Police number/vehicle

plate. Same value as

Payment request

CustomerData.minPayment String Yes Minimum payment. Same

value as Payment request

CustomerData.maxPayment String Yes Maximum payment. Same

value as Payment request

Success

response code

HTTP 200

Response

(Success) {   "trxType": "68",   "status": "success",   "data": {     "error": false,     "provider": "FMF KRD MBL MTR",     "journal": "945490405   ",     "financialJournal": "308454",     "amount": "390000",     "billingId": "90043012007177",     "accountNum": "115258134",     "reffNum": "20170512104054050380",     "billerCode": "1005",     "customerName": "MARENDRA GLADIYAKTI",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "customerName": "MARENDRA GLADIYAKTI",     "adminFee": "0",     "providerId": "KREDITPLUS",     "nominal": "390000",     "finedAmount": "0",     "dueDate": "20121028‐20121028",     "installmentAmount": "390000", 

111/457

    "totalInstallment": "390000",    "installmentNo": "00006",     "collectionFee": "0",     "time": "2017‐05‐12T10:47:43+07:00",     "trxtime": "12‐May‐2017 10:47:43",     "policeNo": "D1293HB",     "minPayment": "0",     "maxPayment": "0"   } }

Error response

code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "86",

"ori_errorNum": "86"

},

"result": {

"kode_loket": "AYP259100049",

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

"kode_cabang": "259",

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI

Jakarta 10520"

},

"CustomerData": {

"customerName": "MARENDRA GLADIYAKTI",

"adminFee": "0",

"providerId": "KREDITPLUS",

"nominal": 390000,

"finedAmount": "0",

"dueDate": "20121028-20121028",

"installmentAmount": "390000",

"totalInstallment": "390000",

"installmentNo": "00006",

"collectionFee": "0",

"time": "2017-11-28T17:35:17+07:00",

"trxtime": "28-Nov-2017 17:35:17",

"policeNo": "D1293HB",

"minPayment": "0",

"maxPayment": "0"

}

112/457

2.3.1.23. Multifinance - ACC Finance - Inquiry Inquiry Multifinance ACC Finance

Description feature for inquiry of Multifinance ACC Finance bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

113/457

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “ACC_FINANCE”

data.billingId String Yes Customer’sbilling number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR462",   "data": {     "kode_mitra": "ARD",     "kode_cabang": "259",     "kode_loket": "100019",     "pin_transaksi": "12345",     "clientId": "IBOC",     "providerId": "ACC_FINANCE",     "billingId": "01307771239734",     "reffNum": "20170512102800050310"   } 

}

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

provider * String Yes Multifinance’s provider name

114/457

billingId * String Yes Customer’s bill number

adminFee1 String Yes Admin fee 1

adminFee2 String Yes Admin fee 2

adminFee * String Yes Admin fee

reffNum String Yes Transaction’s refference number

amount String Yes Customer’s bill amount

customerName * String Yes Customer’s name

dueDate * String Yes Bill’s due date

installmentAmount * String Yes Customer’s installment amount

finedAmount * String Yes Customer’s fined amount

telkomFlag String Yes Telkom flag

regionCode String Yes Region code

lateCharge * String Yes Customer’s late charge

biaya_adm_bank * String Yes Bank’s admin fee

total_amount * String Yes Payment’s total amount

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "provider": "Astra Credit Company",   "billingId": "01307771239734",   "adminFee1": "0",   "adminFee2": "",   "adminFee": "0",   "reffNum": "20171122135442001006",   "amount": "10300",   "customerName": "0LELYANA SEBASTIAN BUBBLE",   "dueDate": " 2008123",   "installmentAmount": "000000001000",   "finedAmount": "000000000500",   "telkomFlag": "02",   "regionCode": "0100",   "lateCharge": "000000000010",   "biaya_adm_bank": "5000",   "total_amount": 15300 }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "14",

"message": "Nomor pelanggan/billing/handphone/tagihan/kode bayar tidak ditemukan,

pastikan nomor yang Anda masukkan sudah benar. (RC 14)",

"biaya_adm_bank": "5000",

"total_amount": null

115/457

2.3.1.24. Multifinance - ACC Finance – Payment Payment Multifinance ACC Finance

Description feature for Multifinance ACC Finance bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

116/457

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “ACC_FINANCE”

data.billingId String Yes Customer’sbilling number. Same value as

Inquiry response

data.adminFee String Yes Bank admin fee . Same value as Inquiry

response

data.adminFee1 String Yes Admin fee 1. Same value as Inquiry

response

data,adminFee2 String Yes Admin fee 2. Same value as Inquiry

response

data.customerName String Yes Customer’s name. Same value as Inquiry

response

data.dueDate String Yes Bill’s due date. Same value as Inquiry

response

data.installmentAmount String Yes Customer’s installment amount. Same

value as Inquiry response

data.finedAmount String Yes Customer’s fined amount. Same value as

Inquiry response

data.telkomFlag String Yes Telkom flag. Same value as Inquiry

response

data.regionCode String Yes Region code. Same value as Inquiry

117/457

response

data.lateCharge String Yes Customer’s late charge. Same value as

Inquiry response

data.amount String Yes Payment’s total amount. Same value as

Inquiry response

data.biaya_adm_bank String Yes Bank’s admin fee. Same value as Inquiry

response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR463",   "data": {     "kode_mitra": "ARD",     "kode_cabang": "259",     "kode_loket": "100019",     "clientId": "IBOC",     "reffNum": "20171122111630011013",     "providerId": "ACC_FINANCE",     "billingId": "01307771239734",     "adminFee": "0",     "adminFee1": "0",     "adminFee2": "",     "customerName": "AISUKE GODAI                 2",     "dueDate": "01512300",     "installmentAmount": "000000010000",     "finedAmount": "000000002000",     "telkomFlag": "02",     "regionCode": "0700",     "lateCharge": "000000001000",     "amount": "12800",     "biaya_adm_bank": "5000",     "accountNum": "115258134",     "pin_transaksi": "12345"   } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“68” is for Multifinance 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.journal String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial

118/457

journal

data.amount String Yes Customer’s bill amount.

Same value as Payment

request

data.billingId * String Yes Customer’s bill number.

Same value as Payment

request

data.accountNum String Yes Agent’s account number.

Same value as Payment

request

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.finedAmount String Yes Customer’s fined amount.

Same value as Payment

request

data.customerName * String Yes Customer’s name. Same

value as Payment request

data.errorNum String Yes Transaction’s error number

data.total_amount * String Yes Payment’s total amount

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customerName String Yes Customer’s name. Same

value as Payment request

CustomerData.providerId String Yes Multifinance’s provider ID.

Same value as Payment

request

CustomerData.nominal String Yes Bill’s nominal

CustomerData.finedAmount * String Yes Customer’s fined amount.

Same value as Payment

request

CustomerData.dueDate * String Yes Bill’s due date. Same value

as Payment request

CustomerData.installmentAmount * String Yes Customer’s installment

amount. Same value as

Payment request

CustomerData.telkomFlag String Yes Telkom flag. Same value

as Payment request

CustomerData.time String Yes Transaction’s time

CustomerData.trxtime String Yes Transaction’s time

119/457

CustomerData.regionCode String Yes Region code. Same value

as Payment request

CustomerData.lateCharge * String Yes Customer’s late charge.

Same value as Payment

request

CustomerData.adminFee * String Yes Bank admin fee. Same

value as Payment request

CustomerData.adminFee 1 String Yes Admin fee 1. Same value

as Payment request

CustomerData.adminFee 2 String Yes Admin fee 2. Same value

as Payment request

CustomerData.bankadmin * String Yes Bank’s admin fee. Same

value as “biaya_adm_bank” 

on Payment request

Success

response code

HTTP 200

Response

(Success) {   "trxType": "68",   "status": "success",   "data": {     "error": false,     "journal": "910191573   ",     "financialJournal": "572659",     "amount": "12800",     "billingId": "01307771239734",     "accountNum": "115258134",     "reffNum": "20171122111630011013",     "finedAmount": "000000000020",     "customerName": "0LELYANA SEBASTIAN BUBBLE",     "errorNum": "",     "total_amount": 17800   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "customerName": "AISUKE GODAI                 2",     "providerId": "ACC_FINANCE",     "nominal": "12801",     "finedAmount": "000000002000",     "dueDate": "01512300",     "installmentAmount": "000000010000",     "telkomFlag": "02",     "time": "2017‐11‐22T14:11:30+07:00", 

120/457

    "trxtime": "22‐Nov‐2017 14:11:30",    "regionCode": "0700",     "lateCharge": "000000001000",     "adminFee": "0",     "adminFee1": "0",     "adminFee2": "",     "bankadmin": "5000"   } }

Error

response code

Response

(error)

{

"trxType": "68",

"status": "success",

"data": {

"error": true,

"errorNum": "30",

"message": "Transaksi tidak dapat dilakukan. (RC 30)",

"ori_errorNum": "30",

"ori_message": "Message format error",

"total_amount": 15300

},

"result": {

"kode_loket": "AYP259100049",

"kd_lkt": "100049",

"nama": "Tommy Yuwono",

"kode_cabang": "259",

"kode_mitra": "AYP",

"alamat": "03/02 Cempaka Putih Barat Cempaka Putih Kota Jakarta Pusat DKI Jakarta

10520"

},

"CustomerData": {

"customerName": "0LELYANA SEBASTIAN BUBBLE",

"providerId": "ACC_FINANCE",

"nominal": 10300,

"finedAmount": "000000000500",

"dueDate": " 2008123",

"installmentAmount": "000000001000",

"telkomFlag": "02",

"time": "2017-11-28T17:02:40+07:00",

"trxtime": "28-Nov-2017 17:02:40",

"regionCode": "0100",

"lateCharge": "000000000010",

"adminFee": "0",

"adminFee1": "0",

"adminFee2": "",

121/457

"bankadmin": "5000"

}

2.3.1.25. Insurance – BNI Life – Inquiry Inquiry Insurance – BNI Life

Description feature for inquiry of Insurance – BNI Life Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

122/457

reffNum =20170607110019123450100021

data.providerId String Yes Mapping value of providerId for each payment

type :

Initial premium : BNILIFE_PREMI_PERTAMA

Continuation Premium :

BNILIFE_PREMI_LANJUTAN

Policy loan : BNILIFE_PINJAMAN_POLIS

Premium Top-up : BNILIFE_TOPUP_PREMI

Reprint Policy :

BNILIFE_CETAK_ULANG_POLIS

Re-instatement fee :

BNILIFE_BIAYA_CETAK_ULANG_POLIS

data.spajNumber String Yes Customer spaj number

data.amount String Yes Payment amount.

For Continuation Premium and Reprint Policy,

amount = “” (close payment)

Others, value of amount base on input on

screen (open payment)

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR437",   "data": {     "clientId": "IBOC",     "reffNum": "20180118160827051299",     "providerId": "BNILIFE_PREMI_PERTAMA",     "spajNumber": "1114568975",     "amount": "50000"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket * String Yes Transaction description

reffNum String Yes Transaction reference

number.Same value as Inquiry

request

amount * String Yes Payment amount/bill amount

spajNumber * String Yes Customer spaj number.Same

123/457

value as Inquiry request

name * String Yes Customer name

telkomFlag String Yes Telkomflag

billStatCode String Yes Bill stat code

productIndicator String Yes Product indicator

product1 String Yes Detail product 1

premiAmount1 String Yes Premi amount product 1

product2 String Yes Detail product 2

premiAmount2 String Yes Premi amount product 2

product3 String Yes Detail product 3

premiAmount3 String Yes Premi amount product 3

installment String Yes Installment amount

dueDate String Yes Due date

Success

response code

HTTP 200

Response

(Success)

{

"error": false,

"ket": "BNI Life PREMIUM TOP UP Inquiry @rillulsyah i8rahim",

"reffNum": "20180118160827051299",

"amount": "50000",

"spajNumber": "1114568975",

"name": "@rillulsyah i8rahim",

"telkomFlag": "02",

"billStatCode": "1",

"productIndicator": "1901",

"product1": "",

"premiAmount1": "",

"product2": "",

"premiAmount2": "",

"product3": "",

"premiAmount3": "",

"installment": "",

"dueDate": ""

}

Error

response code

Response

(error)

{

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

124/457

2.3.1.26. Insurance – BNI Life – Payment Payment Insurance – BNI Life

Description feature for payment of Insurance – BNI Life Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

125/457

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Mapping value of providerId for each

payment type :

Initial premium :

BNILIFE_PREMI_PERTAMA

Continuation Premium :

BNILIFE_PREMI_LANJUTAN

Policy loan : BNILIFE_PINJAMAN_POLIS

Premium Top-up :

BNILIFE_TOPUP_PREMI

Reprint Policy :

BNILIFE_CETAK_ULANG_POLIS

Re-instatement fee :

BNILIFE_BIAYA_CETAK_ULANG_POLIS

data.amount String Yes Payment amount/bill amount. Same value

as Inquiry response

data.spajNumber String Yes Customer spaj number. Same value as

Inquiry response

data.installment String Yes Installment amount. Same value as

Inquiry response

data.dueDate String Yes Due date. Same value as Inquiry response

data.name String Yes Customer name. Same value as Inquiry

response

126/457

data.telkomFlag String Yes Telkomflag. Same value as Inquiry

response

data.billStatCode String Yes Bill stat code. Same value as Inquiry

response

data.productIndicator String Yes Product indicator. Same value as Inquiry

response

data.product1 String Yes Detail product 1. Same value as Inquiry

response

data.premiAmount1 String Yes Premi amount product 1. Same value as

Inquiry response

data.product2 String Yes Detail product 2. Same value as Inquiry

response

data.premiAmount2 String Yes Premi amount product 2. Same value as

Inquiry response

data.product3 String Yes Detail product 3. Same value as Inquiry

response

data.premiAmount3 String Yes Premi amount product 3. Same value as

Inquiry response

data.accountNum String Yes BNI Agent account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {

"typereq": "trans",

"dealerId": "2214860948771287",

"fiturId": "FTR463",

"data": {

"kode_mitra": "BNI",

"kode_loket": "50299",

"kode_cabang": "259",

"clientId": "IBOC",

"reffNum": "20180118161838150299",

"providerId": "BNILIFE_PREMI_PERTAMA",

"amount": "50000",

"spajNumber": "1114568975",

"installment": "",

"dueDate": "",

"name": "@rillulsyah i8rahim",

"telkomFlag": "02",

"billStatCode": "1",

"productIndicator": "1901",

"product1": "",

"premiAmount1": "",

"product2": "",

"premiAmount2": "",

127/457

"product3": "",

"premiAmount3": "",

"accountNum": 115208477,

"pin_transaksi": "12345"

}

}

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“52” is for Insurance‐BNILife 

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal * String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial journal

data.reffNum String Yes Transaction’s refference number.

Same value as Payment request

data.amount * String Yes Payment amount/bill amount.

Same value as Payment request

data.spajNumber String Yes Customer spaj number. Same

value as Payment request

data.name * String Yes Customer name. Same value as

Payment request

data.telkomFlag String Yes Telkomflag. Same value as

Payment request

data.billStatCode String Yes Bill stat code. Same value as

Payment request

data.productIndicator String Yes Product indicator. Same value as

Payment request

data.product1 String Yes Detail product 1. Same value as

Payment request

data.premiAmount1 String Yes Premi amount product 1. Same

value as Payment request

data.product2 String Yes Detail product 2. Same value as

Payment request

data.premiAmount2 String Yes Premi amount product 2. Same

value as Payment request

data.product3 String Yes Detail product 3. Same value as

Payment request

data.premiAmount3 String Yes Premi amount product 3. Same

128/457

value as Payment request

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Transaction admin fee

CustomerData.nominal String Yes Bill’s nominal

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success)

{

"trxType": "52",

"status": "success",

"data": {

"error": false,

"ket": "BNILIFE_PREMI_PERTAMA",

"journal": "946470191 ",

"financialJournal": "624412",

"reffNum": "20180118161838150299",

"amount": "50000",

"spajNumber": "1114568975",

"name": "@RILLULSYAH I8RAHIM",

"telkomFlag": "02",

"billStatCode": "1",

"productIndicator": "1901",

"product1": "",

"premiAmount1": "",

"product2": "",

"premiAmount2": "",

"product3": "",

"premiAmount3": ""

},

"result": {

"kode_loket": "BNI25950299",

"kd_lkt": "50299",

"nama": "Firda A'gen",

"kode_cabang": "259",

"kode_mitra": "BNI",

"alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"

},

"CustomerData": {

"biaya_adm": 0,

129/457

"nominal": "50000",

"time": "2018-01-18T16:47:47+07:00"

}

}

Error

response code

Response

(error)

{

"trxType": "52",

"status": "success",

"data": {

"error": true,

"errorNum": "-2",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "BNI25950299",

"kd_lkt": "50299",

"nama": "Firda A'gen",

"kode_cabang": "259",

"kode_mitra": "BNI",

"alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"

},

"CustomerData": {

"biaya_adm": 0,

"nominal": "501000",

"time": "2018-01-18T16:49:27+07:00"

}

2.3.1.27. PLN Postpaid – Inquiry Inquiry PLN Postpaid

Description feature for inquiry of PLN Postpaid Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

130/457

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.systemId String Yes Default “POSTPAID”

data.channelId String Yes Default “NEWIBANK”

data.clientId String Yes Default “NEWIBANK”

data.feeId String Yes Default “00545300”

data.customerId String Yes Customer Id

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

131/457

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR493",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "systemId": "POSTPAID",     "channelId": "NEWIBANK",     "clientId": "NEWIBANK",     "feeId": "00545300",     "customerId": "53111",     "reffNum": "201705171507500100019",     "pin_transaksi": "12345"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

clientId String Yes Default “NEWIBANK”

customerId * String Yes CustomerID

decimalAmount String Yes Decimal amount

currency String Yes Bill’s currency

customerName * String Yes Customer’s name

flag String Yes Flag

billStatus * String Yes Number of monthly bills

regionCode String Yes Region code

billAmount * String Yes Bill’s amount

billStatOut * String Yes Number of bill sheet

serviceUnit String Yes Service unit

customGroup1 String Yes Custom Group 1

customGroup2 String Yes Custom Group 2

categoryUsed String Yes Electric power

132/457

adminFee String Yes Administrartion fee

PLNReffNum String Yes PLN refference number

serviceUnitPhone String Yes Service unit phone

billPeriod1 * String Yes Bill period 1

dueDate1 String Yes Bill due date 1

meterDate1 String Yes Meter date 1

billAmount1 String Yes Bill amount 1

indicator1 String Yes Indicator 1

billIndicator1 String Yes Bill indicator 1

billTax1 String Yes Bill tax 1

billlPinalty1 String Yes Bill pinalty 1

SLALWBP1 String Yes Stand meter 1 (start)

SAHLWBP1 String Yes Stand meter 1 (end)

SLAWBP1 String Yes SLAWBP1

SAHWBP1 String Yes SAHWBP1

SLAKVARH1 String Yes SLAKVARH1

SAHKVARH1 String Yes SAHKVARH1

billPeriod2 * String Yes Bill period 2

dueDate2 String Yes Bill due date 2

meterDate2 String Yes Meter date 2

billAmount2 String Yes Bill amount 2

indicator2 String Yes Indicator 2

billIndicator2 String Yes Bill indicator 2

billTax2 String Yes Bill tax 2

billlPinalty2 String Yes Bill pinalty 2

SLALWBP2 String Yes Stand meter 2 (start)

SAHLWBP2 String Yes Stand meter 2 (end)

SLAWBP2 String Yes SLAWBP2

SAHWBP2 String Yes SAHWBP2

SLAKVARH2 String Yes SLAKVARH2

SAHKVARH2 String Yes SAHKVARH2

billPeriod3 * String Yes Bill period 3

dueDate3 String Yes Bill due date 3

meterDate3 String Yes Meter date 3

billAmount3 String Yes Bill amount 3

indicator3 String Yes Indicator 3

billIndicator3 String Yes Bill indicator 3

billTax3 String Yes Bill tax 3

billlPinalty3 String Yes Bill pinalty 3

SLALWBP3 String Yes Stand meter 3 (start)

SAHLWBP3 String Yes Stand meter 3 (end)

SLAWBP3 String Yes SLAWBP3

SAHWBP3 String Yes SAHWBP3

133/457

SLAKVARH3 String Yes SLAKVARH3

SAHKVARH3 String Yes SAHKVARH3

billPeriod4 * String Yes Bill period 4

dueDate4 String Yes Bill due date 4

meterDate4 String Yes Meter date 4

billAmount4 String Yes Bill amount 4

indicator4 String Yes Indicator 4

billIndicator4 String Yes Bill indicator 4

billTax4 String Yes Bill tax 4

billlPinalty4 String Yes Bill pinalty 4

SLALWBP4 String Yes Stand meter 4 (start)

SAHLWBP4 String Yes Stand meter 4 (end)

SLAWBP4 String Yes SLAWBP4

SAHWBP4 String Yes SAHWBP4

SLAKVARH4 String Yes SLAKVARH4

SAHKVARH4 String Yes SAHKVARH4

billPeriod5 * String Yes Bill period 5

dueDate5 String Yes Bill due date 5

meterDate5 String Yes Meter date 5

billAmount5 String Yes Bill amount 5

indicator5 String Yes Indicator 5

billIndicator5 String Yes Bill indicator 5

billTax5 String Yes Bill tax 5

billlPinalty5 String Yes Bill pinalty 5

SAHLWBP5 String Yes Stand meter 5 (end)

adminFeeParam * String Yes Administration fee parameter

response String Yes SOAP response

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "PLN",   "clientId": "NEWIBANK",   "customerId": "5311112",   "decimalAmount": "0",   "currency": "360",   "customerName": "PEL POSTPAID 174193",   "flag": "02",   "billStatus": "1",   "regionCode": "5300",   "billAmount": "1200000",   "billStatOut": "1",   "serviceUnit": "53555",   "customGroup1": "R1",   "customGroup2": "",   "categoryUsed": "1300", 

134/457

  "adminFee": "3000",  "PLNRefNum": "XVW1V0XYWZY4Z456789AX3VWW23W1WY3",   "serviceUnitPhone": "0212337890",   "billPeriode1": "201605",   "dueDate1": "25052016",   "meterDate1": "4052016",   "billAmount1": "1200000",   "indicator1": "C",   "billIndicator1": "0",   "billTax1": "0",   "billPinalty1": "0",   "SLALWBP1": "00000100",   "SAHLWBP1": "00000100",   "SLAWBP1": "00000200",   "SAHWBP1": "00000200",   "SLAKVARH1": "00000300",   "SAHKVARH1": "00000300",   "billPeriode2": "0",   "dueDate2": "0",   "meterDate2": "0",   "billAmount2": "0",   "indicator2": "",   "billIndicator2": "0",   "billTax2": "0",   "billPinalty2": "0",   "SLALWBP2": "",   "SAHLWBP2": "",   "SLAWBP2": "",   "SAHWBP2": "",   "SLAKVARH2": "",   "SAHKVARH2": "",   "billPeriode3": "0",   "dueDate3": "0",   "billAmount3": "0",   "indicator3": "",   "billIndicator3": "0",   "billTax3": "0",   "billPinalty3": "0",   "SLALWBP3": "",   "SAHLWBP3": "",   "SLAWBP3": "",   "SAHWBP3": "",   "SLAKVARH3": "",   "SAHKVARH3": "",   "billPeriode4": "0",   "dueDate4": "0",   "meterDate4": "0",   "billAmount4": "0",   "indicator4": "",   "billIndicator4": "0",   "billTax4": "0",   "billPinalty4": "0",   "SLALWBP4": "", 

135/457

  "SAHLWBP4": "",  "SLAWBP4": "",   "SAHWBP4": "",   "SLAKVARH4": "",   "SAHKVARH4": "",   "billPeriode5": "0",   "dueDate5": "0",   "meterDate5": "0",   "billAmount5": "0",   "indicator5": "",   "billIndicator5": "0",   "billTax5": "0",   "billPinalty5": "0",   "SAHLWBP5": "",   "adminFeeParam": "3000",   "response": "<customerId>5311112</customerId><decimalAmount>0</decimalAmount><currency>360</currency><customerName>PEL POSTPAID 174193</customerName><flag>02</flag><billStatus>1</billStatus><regionCode>5300</regionCode><billAmount>1200000</billAmount><billStatOut>1</billStatOut><serviceUnit>53555</serviceUnit><customGroup1>R1</customGroup1><customGroup2/><categoryUsed>1300</categoryUsed><adminFee>3000</adminFee><PLNRefNum>XVW1V0XYWZY4Z456789AX3VWW23W1WY3</PLNRefNum><serviceUnitPhone>0212337890</serviceUnitPhone><billPeriode1>201605</billPeriode1><dueDate1>25052016</dueDate1><meterDate1>4052016</meterDate1><billAmount1>1200000</billAmount1><indicator1>C</indicator1><billIndicator1>0</billIndicator1><billTax1>0</billTax1><billPinalty1>0</billPinalty1><SLALWBP1>00000100</SLALWBP1><SAHLWBP1>00000100</SAHLWBP1><SLAWBP1>00000200</SLAWBP1><SAHWBP1>00000200</SAHWBP1><SLAKVARH1>00000300</SLAKVARH1><SAHKVARH1>00000300</SAHKVARH1><billPeriode2>0</billPeriode2><dueDate2>0</dueDate2><meterDate2>0</meterDate2><billAmount2>0</billAmount2><indicator2/><billIndicator2>0</billIndicator2><billTax2>0</billTax2><billPinalty2>0</billPinalty2><SLALWBP2/><SAHLWBP2/><SLAWBP2/><SAHWBP2/><SLAKVARH2/><SAHKVARH2/><billPeriode3>0</billPeriode3><dueDate3>0</dueDate3><meterDate3>0</meterDate3><billAmount3>0</billAmount3><indicator3/><billIndicator3>0</billIndicator3><billTax3>0</billTax3><billPinalty3>0</billPinalty3><SLALWBP3/><SAHLWBP3/><SLAWBP3/><SAHWBP3/><SLAKVARH3/><SAHKVARH3/><billPeriode4>0</billPeriode4><dueDate4>0</dueDate4><meterDate4>0</meterDate4><billAmount4>0</billAmount4><indicator4/><billIndicator4>0</billIndicator4><billTax4>0</billTax4><billPinalty4>0</billPinalty4><SLALWBP4/><SAHLWBP4/><SLAWBP4/><SAHWBP4/><SLAKVARH4/><SAHKVARH4/><billPeriode5>0</billPeriode5><dueDate5>0</dueDate5><meterDate5>0</meterDate5><billAmount5>0</billAmount5><indicator5/><billIndicator5>0</billIndicator5><billTax5>0</billTax5><billPinalty5>0</billPinalty5><SLALWBP5/><SAHLWBP5/><SLAWBP5/><SAHWBP5/><SLAKVARH5/><SAHKVARH5/><billReffNum/><cardExpiry>6010040517154647</cardExpiry><adminFeeParam>3000</adminFeeParam><switcherRefName>02</switcherRefName>" }

Error response

code

Response

(error) { 

  "error": true, 

  "errorNum": "05", 

  "message": "Error undefined" 

136/457

2.3.1.28. PLN Postpaid – Payment Payment PLN Postpaid

Description feature for PLN Postpaid bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

137/457

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.systemId String Yes Default “POSTPAID”

data.channelId String Yes Default “NEWIBANK”

data.feeId String Yes Default “00545300”

data.clientId String Yes Default “NEWIBANK”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.amount String Yes Bill’s amount

data.adminFeeParam String Yes Administration fee parameter

data.response String Yes SOAP response. Save value as Inquiry

response.

data.customerId String Yes Customer ID

data.bl_th String Yes Bill periode (*format below)

data.daya String Yes Electric power (*format below)

data.stand_meter String Yes Stand meter (*format below)

Notes : 1. Format for “bl_th”

FindbillStatus value from inquiry response. This value shows the number of monthly bills. For

monthly bills value, fill it withbillPeriodefrom inquiry response.

Example: If billStatus=2, find the value from fieldbillPeriode1andbillPeriode2

billPeriode1 = 201705, billPeriode2 = 201706

“bl_th” : ”MEI17, JUN17”

The name of monthsconsists of 3 characters, these are: 'JAN', 'PEB', 'MAR', 'APR', 'MEI', 'JUN',

138/457

'JUL', 'AGU', 'SEP', 'OKT', 'NOV', 'DES'

2. Format for “daya”

‘daya’ : ‘customGroup1’+’customGroup2’+’/’+’categoryUsed’+’VA’

Example: customGroup1 = “R1”, customGroup2 = “” , categoryUsed = “1300”

“daya” : “R1/1300VA”

Note: IfcategoryUsedhas no value, then replace it with “-” character. 3. Format for “stand_meter”

TakebillStatusvalue as a suffix forSAHLWBP.

‘stand_meter’ = 'SLALWBP1'+'-'+'SAHLWBP'

Example: billStatus=1, SLALWBP1 = "00000100", SAHLWBP1: "00000100"

Note: ChooseSAHLWBP with suffix“1” (SAHLWBP1).

“stand_meter” : 00000100-00000100

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR494",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "systemId": "POSTPAID",     "channelId": "NEWIBANK",     "feeId": "00545300",     "clientId": "NEWIBANK",     "reffNum": "201705171541080100035",     "amount": "125000",     "adminFeeParam": "3000",     "response": "<customerId>5311111</customerId><decimalAmount>0</decimalAmount><currency>360</currency><customerName>PEL POSTPAID 174193</customerName><flag>02</flag><billStatus>1</billStatus><regionCode>5300</regionCode><billAmount>1200000</billAmount><billStatOut>1</billStatOut><serviceUnit>53555</serviceUnit><customGroup1>R1</customGroup1><customGroup2/><categoryUsed>1300</categoryUsed><adminFee>3000</adminFee><PLNRefNum>XVW1V0XYWZY4Z456789AX3VWW23W1WY3</PLNRefNum><serviceUnitPhone>0212337890</serviceUnitPhone><billPeriode1>201605</billPeriode1><dueDate1>25052016</dueDate1><meterDate1>4052016</meterDate1><billAmount1>1200000</billAmount1><indicator1>C</indicator1><billIndicator1>0</billIndicator1><billTax1>0</billTax1><billPinalty1>0</billPinalty1><SLALWBP1>00000100</SLALWBP1><SAHLWBP1>00000100</SAHLWBP1><SLAWBP1>00000200</SLAWBP1><SAHWBP1>00000200</SAHWBP1><SLAKVARH1>00000300</SLAKVARH1><SAHKVARH1>00000300</SAHKVARH1><billPeriode2>0</billPeriode2><dueDate2>0</dueDate2><meterDate2>0</meterDate2><billAmount2>0</billAmount2><indicator2/><billIndicator2>0</billIndicator2><billTax2>0</billTax2><billPinalty2>0</billPinalty2><SLALWBP2/><SAHLWBP2/><SLAWBP2/><SAHWBP2/><SLAKVARH2/><SAHKVARH2/><billPeriode3>0</billPeriode3><dueDate3>0</dueDate3><meterDate3>0</meterDate3><billAmount3>0</billAmount3><indicator3/><billIndicator3>0</billIndicator3><billTax3>0</billTax3><billPinalty3>0</billPinalty3><SLALWBP3/><SAHLWBP3/><SLAWBP3/><SAHWBP3/><SLAKVARH3/><SAHKVARH3/><billPeriode4>0</billPeriode4><dueDate4>0</dueDate4><meterDate4>

139/457

0</meterDate4><billAmount4>0</billAmount4><indicator4/><billIndicator4>0</billIndicator4><billTax4>0</billTax4><billPinalty4>0</billPinalty4><SLALWBP4/><SAHLWBP4/><SLAWBP4/><SAHWBP4/><SLAKVARH4/><SAHKVARH4/><billPeriode5>0</billPeriode5><dueDate5>0</dueDate5><meterDate5>0</meterDate5><billAmount5>0</billAmount5><indicator5/><billIndicator5>0</billIndicator5><billTax5>0</billTax5><billPinalty5>0</billPinalty5><SLALWBP5/><SAHLWBP5/><SLAWBP5/><SAHWBP5/><SLAKVARH5/><SAHKVARH5/><billReffNum/><cardExpiry>6010040517153934</cardExpiry><adminFeeParam>3000</adminFeeParam><switcherRefName>02</switcherRefName>",     "customerId": "5311111",     "bl_th": "MEI16",     "daya": "R1/1300VA",     "stand_meter": "00000100‐00000100",     "accountNum": "115258134",     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“90” is for PLN Postpaid

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.clientId String Yes Default “NEWIBANK”

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.amount * String Yes Customer’s bill amount

data.journal String Yes Transaction’s journal

data.financialJournal String Yes Transaction’s financial

journal

data.customerId * String Yes Customer ID

data.customerName * String Yes Customer’s name

data.billStatus * String Yes Agent’s account number.

Same value as Payment

request

data.billStatOut String Yes Transaction’s refference

number. Same value as

Payment request

data.PLNReffNum String Yes Customer’s fined amount.

Same value as Payment

request

data.adminFee String Yes Customer’s name. Same

value as Payment request

140/457

data.switcherRefNum * String Yes Switcher refference

number

data.switcherRefName String Yes Switcher refference name

data.PLNNote * String Yes PLN Note

data.unpaidBillNote * String Yes Unpaid bill note

data.adminFeeParam * String Yes Administration fee

parameter

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Administration fee

CustomerData.nominal String Yes Bill’s nominal

CustomerData.stand_meter * String Yes Stand meter

CustomerData.bl_th * String Yes Bill periode

CustomerData.daya * String Yes Electric power

CustomerData.time String Yes Transaction’s time

CustomerData.accountNum String Yes Agent’s account number

Success

response code

HTTP 200

Response

(Success) {   "trxType": "90",   "status": "success",   "data": {     "error": false,     "ket": "PLN",     "clientId": "NEWIBANK",     "reffNum": "201705171541080100035",     "amount": "125000",     "journal": "951290451   ",     "financialJournal": "311791",     "customerId": "5311111",     "customerName": "PEL POSTPAID 174193",     "billStatus": "1",     "billStatOut": "1",     "PLNRefNum": "XVW1V0XYWZY4Z456789AX3VWW23W1WY3",     "adminFee": "3000",     "switcherRefNum": "000911V00094459200456GN723503056",     "switcherRefName": "02",     "PLNNote": "Informasi Hubungi Call Center 789 etau Hub. PLN Terdekat:999",     "unpaidBillNote": "Terima kasih",     "adminFeeParam": "3000"   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019", 

141/457

    "nama": "LALA",    "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "biaya_adm": null,     "nominal": "125000",     "stand_meter": "00000100‐00000100",     "bl_th": "MEI16",     "daya": "R1/1300VA",     "time": "2017‐05‐17T15:52:52+07:00",     "accountNum": "115258134"   } } 

Error response

code

Response

(error)

{

"trxType": "90",

"status": "success",

"data": {

"error": true,

"errorNum": "PLNJABAR30",

"message": "TRANSAKSI GAGAL"

},

"result": {

"kode_loket": "ALC999100059",

"kd_lkt": "100059",

"nama": "Dian Noviani",

"kode_cabang": "999",

"kode_mitra": "ALC",

"alamat": "04/01 Balongdowo Candi Kab|Sidoarjo Jawa Timur 61271"

},

"CustomerData": {

"biaya_adm": null,

"nominal": "0",

"stand_meter": "00000100-00000100",

"bl_th": "MEI16",

"daya": "R1/1300VA",

"time": "2017-11-30T10:19:21+07:00",

"accountNum": "4447"

}

142/457

2.3.1.29. PLN Nontaglis – Inquiry Inquiry PLN Nontaglis

Description feature for inquiry of PLN Nontaglis Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

143/457

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.systemId String Yes Default “POSTPAID”

data.channelId String Yes Default “NEWIBANK”

data.clientId String Yes Default “NEWIBANK”

data.providerId String Yes Default “PLN_NONTAGLIS”

data.feeId String Yes Default “01070000”

data.registrationNum String Yes Customer’s registration number

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR495",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "systemId": "POSTPAID",     "channelId": "NEWIBANK",     "feeId": "01070000",     "clientId": "NEWIBANK",     "reffNum": "201705171511240100030",     "providerId": "PLN_NONTAGLIS",     "registrationNum": "531113",     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data Mandatory Description

144/457

Type

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

amount String Yes Bill’s amount

registrationNum * String Yes Customer’s registration number

areaCode String Yes Area code

transactionCode String Yes Transaction code

bankAdmin String Yes Bank’s administration fee

languageCode String Yes Language code

transactionName * String Yes Transaction’s name

registrationDate String Yes Registration date

expiryDate String Yes Expiry date

customerNumber String Yes Customer’s number

customerName * String Yes Customer’s name

PLNreffNum String Yes PLN refference number

switcherReffNum String Yes Switcher refference number

serviceUnit String Yes Service unit

serviceUnitAddress String Yes Service unit address

servicePhone String Yes Service phone

transactionAmountMinor String Yes Transaction amount minor

transactionAmount * String Yes Transaction amount

billMinorUnit String Yes Bill minor unit

billValue String Yes Bill value

adminChargeMinor String Yes Admin charge minor

adminCharge String Yes Admin charge

mutationNum String Yes Mutation number

segmentation String Yes Segmentation

usedCategory String Yes Used category

switcherCode String Yes Switcher code

receiptNote1 String Yes Receipt note 1

receiptNote2 String Yes Receipt note 2

receiptNote3 String Yes Receipt note 3

fee * String Yes Administration fee

response String Yes SOAP response

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "PLN Non Taglis",   "amount": "500000",   "registrationNum": "531113",   "areaCode": "", 

145/457

  "transactionCode": "",  "bankAdmin": " 00003000",   "languageCode": "0",   "transactionName": "PERUBAHAN DAYA1234567890A",   "registrationDate": "20111208",   "expiryDate": "31122011",   "customerNumber": "537123456789",   "customerName": "JACKY CHAN123456789012345",   "PLNreffNum": "REFRENCE CODE4567890123456789012",   "switcherReffNum": "NOMOR RECEIPT4567890123456789012",   "serviceUnit": "12345",   "serviceUnitAddress": "JALAN MULYA PURI  BLOK BEKASI TIMUR",   "servicePhone": "081287589625412",   "transactionAmountMinor": "2",   "transactionAmount": "502000",   "billMinorUnit": "2",   "billValue": "500000",   "adminChargeMinor": "0",   "adminCharge": "0",   "mutationNum": "MUTASI NOMOR45678901234567890120",   "segmentation": "SEGM",   "usedCategory": "123456789",   "switcherCode": "02",   "receiptNote1": "",   "receiptNote2": "",   "receiptNote3": "",   "fee": "3000",   "response": "<amount>500000</amount><registrationNum>531113</registrationNum><areaCode/><transactionCode/><bankAdmin> 00003000</bankAdmin><languageCode>0</languageCode><transactionName>PERUBAHAN DAYA1234567890A</transactionName><registrationDate>20111208</registrationDate><expiryDate>31122011</expiryDate><customerNumber>537123456789</customerNumber><customerName>JACKY CHAN123456789012345</customerName><PLNreffNum>REFRENCE CODE4567890123456789012</PLNreffNum><switcherReffNum>NOMOR RECEIPT4567890123456789012</switcherReffNum><serviceUnit>12345</serviceUnit><serviceUnitAddress>JALAN MULYA PURI  BLOK BEKASI TIMUR</serviceUnitAddress><servicePhone>081287589625412</servicePhone><transactionAmountMinor>2</transactionAmountMinor><transactionAmount>502000</transactionAmount><billMinorUnit>2</billMinorUnit><billValue>500000</billValue><adminChargeMinor>0</adminChargeMinor><adminCharge>0</adminCharge><mutationNum>MUTASI NOMOR45678901234567890120</mutationNum><segmentation>SEGM</segmentation><usedCategory>123456789</usedCategory><switcherCode>02</switcherCode><receiptNote1/><receiptNote2/><receiptNote3/><fee>3000</fee>" } 

Error response

code

Response

(error)

{

"error": true,

"errorNum": "86",

"message": "Error undefined"

146/457

2.3.1.30. PLN Nontaglis - Payment Payment PLN Nontaglis

Description feature for PLN Nontaglis bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

147/457

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.systemId String Yes Default “POSTPAID”

data.channelId String Yes Default “NEWIBANK”

data.feeId String Yes Default “01070000”

data.clientId String Yes Default “NEWIBANK”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.response String Yes SOAP response. Save value as Inquiry

response

data.amount String Yes Bill’s amount

data.registrationNum String Yes Customer’s registration number

data.transactionName String Yes Transaction’s name

data.tgl_reg String Yes Registration date (*format below)

Notes : 1. Format for “tgl_reg”

FindregistrationDate value from inquiry response, and change the format value to DDMMMYY.

Example: registrationDate=20111208

“tgl_reg” : “08DES11”

The name of monthsconsists of 3 characters, these are: 'JAN', 'PEB', 'MAR', 'APR', 'MEI', 'JUN', 'JUL',

'AGU', 'SEP', 'OKT', 'NOV', 'DES'

148/457

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR496",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "systemId": "POSTPAID",     "channelId": "NEWIBANK",     "feeId": "01070000",     "clientId": "NEWIBANK",     "reffNum": "201705171511310100040",     "response": "<amount>500000</amount><registrationNum>531112</registrationNum><areaCode/><transactionCode/><bankAdmin> 00003000</bankAdmin><languageCode>0</languageCode><transactionName>PERUBAHAN DAYA1234567890A</transactionName><registrationDate>20111208</registrationDate><expiryDate>31122011</expiryDate><customerNumber>537123456789</customerNumber><customerName>JACKY CHAN123456789012345</customerName><PLNreffNum>REFRENCE CODE4567890123456789012</PLNreffNum><switcherReffNum>NOMOR RECEIPT4567890123456789012</switcherReffNum><serviceUnit>12345</serviceUnit><serviceUnitAddress>JALAN MULYA PURI  BLOK BEKASI TIMUR</serviceUnitAddress><servicePhone>081287589625412</servicePhone><transactionAmountMinor>2</transactionAmountMinor><transactionAmount>502000</transactionAmount><billMinorUnit>2</billMinorUnit><billValue>500000</billValue><adminChargeMinor>0</adminChargeMinor><adminCharge>0</adminCharge><mutationNum>MUTASI NOMOR45678901234567890120</mutationNum><segmentation>SEGM</segmentation><usedCategory>123456789</usedCategory><switcherCode>02</switcherCode><receiptNote1/><receiptNote2/><receiptNote3/><fee>3000</fee>",     "amount": "50000",     "registrationNum": "531112",     "transactionName": "PERUBAHAN DAYA1234567890A",     "tgl_reg": "08DES11",     "pin_transaksi": "12345",     "accountNum": 115258134   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“91” is for PLN Nontaglis

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

149/457

data.ket String Yes Transaction description

data.clientId String Yes Default “NEWIBANK”

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.journal String Yes Transaction’s journal

data.financialJournal String Yes Transaction’s financial

journal

data.amount * String Yes Bill’s amount

data.registrationNum * String Yes Customer’s registration

number

data.customerNumber * String Yes Customer’s number

data.customerName * String Yes Customer’s name

data.PLNreffNum String Yes PLN refference number

data.switcherReffNum * String Yes Switcher refference

number

data.accountNum String Yes Agent’s account number

data.switcherCode String Yes Switcher code

data.fee * String Yes Administration fee

data.receiptNote1 String Yes Receipt note 1

data.receiptNote2 String Yes Receipt note 2

data.receiptNote3 String Yes Receipt note 3

data.receiptNote String Yes Receipt note

data.errorNum String Yes Error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Administration fee

CustomerData.nominal String Yes Bill’s nominal

CustomerData.time * String Yes Transaction’s time

CustomerData.transactionName * String Yes Transaction’s name

CustomerData.tgl_reg * String Yes Registration date

Success

response code

HTTP 200

Response

(Success) {   "trxType": "91",   "status": "success",   "data": {     "error": false, 

150/457

    "ket": "PLN Non Taglis",    "clientId": "NEWIBANK",     "reffNum": "201705171511310100040",     "journal": "917170442   ",     "financialJournal": "311274",     "amount": "500000",     "registrationNum": "531112",     "customerNumber": "537123456789",     "customerName": "JACKY CHAN123456789012345",     "PLNreffNum": "REFRENCE CODE4567890123456789012",     "switcherReffNum": "NOMOR RECEIPT4567890123456789012",     "accountNum": "115258134",     "switcherCode": "02",     "fee": "3000",     "receiptNote1": "SILAHKAN HUBUNGI CALL CENTER 111",     "receiptNote2": "ATAU",     "receiptNote3": "HUB. PLN TERDEKAT :115",     "receiptNote": "SILAHKAN HUBUNGI CALL CENTER 111ATAUHUB. PLN TERDEKAT :115",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "biaya_adm": null,     "nominal": "50000",     "time": "2017‐05‐17T15:18:40+07:00",     "transactionName": "PERUBAHAN DAYA1234567890A",     "tgl_reg": "08DES11"   } }

Error

response code

Response

(error)

{

"trxType": "91",

"status": "success",

"data": {

"error": true,

"errorNum": "30",

"message": "NOMINAL TIDAK BOLEH 0.",

"ori_errorNum": "30",

"ori_message": "Message format error"

},

151/457

"result": {

"kode_loket": "ALC999100059",

"kd_lkt": "100059",

"nama": "Dian Noviani",

"kode_cabang": "999",

"kode_mitra": "ALC",

"alamat": "04\/01 Balongdowo Candi Kab|Sidoarjo Jawa Timur 61271"

},

"CustomerData": {

"biaya_adm": null,

"nominal": "0",

"time": "2017-11-30T13:10:51+07:00",

"transactionName": "PERUBAHAN DAYA1234567890A",

"tgl_reg": "08DES11"

}

2.3.1.31. Insurance – Prudential - Initial Premium Payment Prudential Initial Premium

Description feature for payment Prudential Initial Premium Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

152/457

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.amount String Yes Customer bill amount

data.billingId String Yes Customer billing id

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

153/457

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR415",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20171123111111121135",     "amount": "150000",     "billingId": "12100100",     "accountNum": "115233516"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“61” is for Prudential

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount * String Yes Customer bill amount. Same value

asrequest

data.billingId * String Yes Customer billing id. Same value as

request

data.accountNum String Yes Agent’s account number. Same value as

request

data.reffNum String Yes Transaction reference number.Same

value as request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee

CustomerData.nominal String Yes Customer’s bill amount

154/457

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "61",   "status": "success",   "data": {     "error": false,     "ket": "PRUDENTIAL_PREMI_PERTAMA",     "journal": "913453792   ",     "financialJournal": "575628",     "amount": "150000",     "billingId": "12100100",     "accountNum": "115233516",     "reffNum": "20171123111111121135",     "errorNum": ""   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   },   "CustomerData": {     "biaya_adm": 0,     "nominal": "150000",     "time": "2017‐11‐23T14:14:52+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "61",

"status": "success",

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

155/457

"CustomerData": {

"biaya_adm": 0,

"nominal": "150000",

"time": "2017-11-23T14:14:52+07:00"

}

}

2.3.1.32. Insurance – Prudential – Continuation Premium - Inquiry Inquiry Prudential Continuation Premium

Description feature for inquiry Prudential Continuation Premium Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

156/457

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.billingId String Yes Customer billing id

data.paramsId String Yes Default “2”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR416",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "clientId": "IBOC",     "reffNum": "20171123152413051309",     "providerId": "PRUDENTIAL",     "billingId": "12100100", 

157/457

    "paramsId": "2"  } } 

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

amount String Yes Payment amount/bill amount

billingId * String Yes Customer billing id. Same value as

Inquiry request

customeName * String Yes Customer’s name

flag String Yes Flag

productIndicator String Yes Product indicator

maxAmount String Yes Maximal amount

billStatOut * String Yes Polis status

Note :

01 = active, else = not active 

customerGroup String Yes Customer group

adm * String Yes Frequency

reffNum1 String Yes Transaction refference number

amount1 * String Yes Payment amount/bill amount

billIndicator1 * String Yes Bill indicator

minAmount String Yes Minimal amount

standMeter * String Yes Premium period

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Prudential ‐ Premi Lanjutan ‐ Inquiry",   "amount": "145000",   "billingId": "12100100",   "customeName": "The Lich King",   "flag": "02",   "productIndicator": "7251",   "maxAmount": "",   "billStatOut": "01",   "customeGroup": "IDR",   "adm": "BULANAN",   "reffNum1": "NOREFF12345678901234",   "amount1": "000000145000",   "billIndicator1": "123456654321",   "minAmount": "000000050000",   "standMeter": "10/06/12 s/d 10/07/12" }

Error

158/457

response code

Response

(error)

{

"error":true,

"errorNum":"0108",

"message":"NO SUCH ACCOUNT"

}

2.3.1.33. Insurance – Prudential – Continuation Premium – Payment Payment Prudential Continuation Premium

Description feature for payment Prudential Continuation Premium Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

159/457

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “2”

data.amount String Yes Payment amount/bill amount. Same

value as Inquiry response

data.billingId String Yes Customer billing id. Same value as

Inquiry response

data.customName String Yes Customer’s name. Same value as

Inquiry response field customerName

data.flag String Yes Flag. Same value as Inquiry response

data.billStatCode String Yes Default “1”

data.productIndicator String Yes Product Indicator. Same value as

Inquiry response

data.maxAmount String Yes Maximal amount. Same value as Inquiry

response

data.billStatOut String Yes Polis status. Same value as Inquiry

response

160/457

data.customGroup String Yes Customer group. Same value as Inquiry

response field customerGroup

data.adm String Yes Frequency. Same value as Inquiry

response

data.reffNum1 String Yes Transaction refference number. Same

value as Inquiry response

data.amount1 String Yes Payment amount/bill amount. Same

value as Inquiry response

data.billIndicator1 String Yes Bill indicator. Same value as Inquiry

response

data.minAmount String Yes Minimal amount. Same value as Inquiry

response

data.standMeter1 String Yes Premium period. Same value as Inquiry

response field standMeter

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114701225459638",   "fiturId": "FTR417",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "clientId": "IBOC",     "reffNum": "20171123152433051309",     "providerId": "PRUDENTIAL",     "paramsId": "2",     "amount": "10000",     "billingId": "12100100",     "customName": "The Lich King",     "flag": "02",     "billStatCode": "1",     "productIndicator": "7251",     "maxAmount": "",     "billStatOut": "01",     "customGroup": "IDR",     "adm": "BULANAN",     "reffNum1": "NOREFF12345678901234",     "amount1": "000000145000",     "billIndikator1": "123456654321",     "minAmount": "000000050000",     "standMeter1": "10/06/12 s/d 10/07/12",     "accountNum": 115208477,     "pin_transaksi": "12345"   } } 

161/457

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“61” is for Prudential

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount * String Yes Payment amount/bill amount. Same

value as Payment request

data.billingId * String Yes Customer billing id. Same value as

Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

data.reffNum String Yes Transaction reference number

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customName * String Yes Customer’s name. Same value as

Payment request

CustomerData.biaya_adm String Yes Admin fee

CustomerData.paramsId String Yes Default “2” . Same value as

Payment request

CustomerData.nominal String Yes Payment amount/bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "61",   "status": "success",   "data": {     "error": false,     "ket": "PRUDENTIAL",     "journal": "927583852   ",     "financialJournal": "575851",     "amount": "10000",     "billingId": "12100100", 

162/457

    "accountNum": "115208477",    "reffNum": "NOREFF12345678901234TNDBKT12345678907251",     "errorNum": ""   },   "result": {     "kode_loket": "BNI22550309",     "kd_lkt": "50309",     "nama": "BNI BANSOS",     "kode_cabang": "225",     "kode_mitra": "BNI",     "alamat": "3/4 Jatikalang Sawahan Kab Sidoarjo JAWA TIMUR 60252"   },   "CustomerData": {     "customName": "The Lich King",     "biaya_adm": null,     "paramsId": "2",     "nominal": "10000",     "time": "2017‐11‐23T15:29:07+07:00"   } } 

Error response

code

Response

(error)

{

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

},

"result": {

"kode_loket": "BNI22550309",

"kd_lkt": "50309",

"nama": "BNI BANSOS",

"kode_cabang": "225",

"kode_mitra": "BNI",

"alamat": "3/4 Jatikalang Sawahan Kab Sidoarjo JAWA TIMUR 60252"

},

"CustomerData": {

"customName": "The Lich King",

"biaya_adm": null,

"paramsId": "2",

"nominal": "10000",

"time": "2017-11-23T15:29:07+07:00"

}

}

2.3.1.34. Insurance – Prudential–Premium TopUp – Inquiry Inquiry Prudential Top Up Premi

163/457

Description feature for Prudential Top Up Premi bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

164/457

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.billingId String Yes Billing id of Prudential next premi

data.paramsId String Yes Default “3”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR418",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "clientId": "IBOC",     "reffNum": "20171123163317050309",     "providerId": "PRUDENTIAL",     "billingId": "12100100",     "paramsId": "3"   } } 

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

amount String Yes Payment amount/bill amount

BillingId * String Yes Customer billing id

165/457

customeName * String Yes Customer’s name

flag String Yes Flag

productIndicator String Yes Product indicator

maxAmount String Yes Maximal amount

billStatOut String Yes Polis status

Note :

01 = active, else = not active

customeGroup String Yes Customer group

adm String Yes Frequency

reffNum1 String Yes Transaction refference number

amount1 String Yes Payment amount/bill amount 1

billIndicator1 String Yes Bill indicator

minAmount String Yes Minimal amount

standMeter String Yes Premium period

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "amount": "0",   "billingId": "12100100",   "customeName": "7252‐Bane Elemental",   "flag": "02",   "productIndicator": "7252",   "billStatOut": "01",   "customeGroup": "",   "adm": "",   "maxAmount": "000000150000",   "reffNum1": "NOREFF12345678901234",   "amount1": "",   "billIndicator1": "",   "minAmount": "000000045000",   "standMeter": "" }

Error

response code

Response

(error)

{   "error":true,   "errorNum":"0108",   "message":"NO SUCH ACCOUNT" }  

2.3.1.35. Insurance – Prudential – Premium TopUp – Payment Payment Prudential Premium Top Up

Description feature for payment Prudential Premium Top Up Hostname https://apidev.bni.co.id

Port 8066

166/457

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

167/457

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “3”

data.amount String Yes Customer’s bill amount, input on

screen by Customer

data.billingId String Yes Customer billing id. Same value as

Inquiry response

data.customName String Yes Customer’s name. Same value as

Inquiry response field

customeName

data.flag String Yes Flag. Same value as Inquiry response

data.billStatCode String Yes Default “1”

data.billStatOut String Yes Polis status. Same value as Inquiry

response

data.reffNum1 String Yes Transaction refference number.

Same value as Inquiry response

data.productIndicator String Yes Product Indicator. Same value as

Inquiry response

data.accountNum String Yes Agent’s account number

data.adm String Yes Frequency. Same value as Inquiry

response

data.billIndicator1 String Yes Bill indicator. Same value as Inquiry

response

data.amount1 String Yes Payment amount/bill amount 1.

Same value as Inquiry response

data.minAmount String Yes Minimal amount. Same value as

Inquiry response

data.maxAmount String Yes Maximal amount. Same value as

168/457

Inquiry response

data.standMeter1 String Yes Premium period. Same value as

Inquiry response field standMeter

data.customGroup String Yes Customer group. Same value as

Inquiry response field

customeGroup

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114701225459638",   "fiturId": "FTR419",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20171123202427166245",     "providerId": "PRUDENTIAL",     "paramsId": "3",     "amount": "45000",     "billingId": "12100100",     "customName": "7252‐Bane Elemental",     "flag": "2",     "billStatCode": "1",     "billStatOut": "01",     "reffNum1": "NOREFF12345678901234",     "productIndicator": "7252",     "accountNum": "115208477",     "adm": "",     "billIndikator1": "",     "amount1": "",     "minAmount": "000000045000",     "maxAmount": "000000150000",     "standMeter1": "",     "customGroup": ""   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“61” is for Prudential

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Default “PRUDENTIAL”

169/457

data.paramsId String Yes Default “3” . Same value as

Payment request

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount * String Yes Payment amount/bill amount.

Same value as Payment request

data.billingId * String Yes Customer billing id. Same value as

Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

data.reffNum String Yes Transaction reference number

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customName * String Yes Customer’s name. Same value as

Payment request

CustomerData.biaya_adm String Yes Admin fee

CustomerData.paramsId String Yes Default “3” . Same value as

Payment request

CustomerData.nominal String Yes Payment amount/bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "61",   "status": "success",   "data": {     "error": false,     "ket": "PRUDENTIAL",     "paramsId": "3",     "journal": "923150209   ",     "financialJournal": "768170",     "amount": "20000",     "billingId": "12100100",     "accountNum": "315629103",     "reffNum": "NOREFF12345678901234TNDBKT12345678907252",     "errorNum": ""   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259", 

170/457

    "kode_mitra": "BSK",    "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7252‐Bane Elemental",     "biaya_adm": null,     "paramsId": "3",     "nominal": "20000",     "time": "2016‐08‐08T20:25:40+07:00"   } } 

Error response

code

Response

(error) {   "data": {     "error": true,     "message": "TRANSAKSI GAGAL : Pin transaksi salah",     "errorNum": "‐2"   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7252‐Bane Elemental",     "biaya_adm": null,     "paramsId": "3",     "nominal": "20000",     "time": "2016‐08‐08T20:25:40+07:00"   } } 

2.3.1.36. Insurance – Prudential – Policy Re-print – Inquiry Inquiry Prudential Policy Re-print

Description feature for inquiry Prudential Policy Re-print Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

171/457

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

172/457

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.billingId String Yes Customer billing id

data.paramsId String Yes Default “4”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR420",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50309",     "kode_cabang": "225",     "clientId": "IBOC",     "reffNum": "20151130111111111177",     "providerId": "PRUDENTIAL",     "paramsId": "4",     "billingId": "14"   } } 

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

amount String Yes Payment amount/bill amount

BillingId * String Yes Customer billing id

customeName * String Yes Customer’s name

flag String Yes Flag

productIndicator String Yes Product indicator

maxAmount String Yes Maximal amount

billStatOut String Yes Polis status

Note :

01 = active, else = not active

customeGroup String Yes Customer group

adm String Yes Frequency

reffNum1 String Yes Polis Reference number

amount1 String Yes Payment amount/bill amount

billIndicator1 String Yes Bill indicator

173/457

minAmount String Yes Minimal amount

standMeter String Yes Premium period

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "amount": "0",   "billingId": "12100100",   "customeName": "7253‐Jahrakal",   "flag": "02",   "productIndicator": "7253",   "maxAmount": "",   "billStatOut": "01",   "customeGroup": "",   "adm": "",   "reffNum1": "NOREFF12345678901234",   "amount1": "",   "billIndicator1": "",   "minAmount": "000000045000",   "standMeter": "" }

Error

response code

Response

(error)

{   "error":true,   "errorNum":"0108",   "message":"NO SUCH ACCOUNT" }  

2.3.1.37. Insurance – Prudential – Policy Re-print – Payment Payment Prudential Policy Re-print

Description feature for payment Prudential Policy Re-print Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

174/457

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

Data.reffNum1 String Yes Transaction refference number. Same

value as Inquiry response

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

175/457

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “4”

data.amount String Yes Customer’s bill amount, input on screen

by Customer

data.billingId String Yes Customer billing id. Same value as

Inquiry response

data.customName String Yes Customer’s name. Same value as

Inquiry response field customeName

data.flag String Yes Flag. Same value as Inquiry response

data.billStatCode String Yes Default “1”

data.billStatOut String Yes Polis status. Same value as Inquiry

response

data.productIndicator String Yes Product Indicator. Same value as

Inquiry response

data.maxAmount String Yes Maximal amount. Same value as Inquiry

response

data.accountNum String Yes Agent’s account number

data.adm String Yes Frequency. Same value as Inquiry

response

data.billIndicator1 String Yes Bill indicator. Same value as Inquiry

response

data.amount1 String Yes Payment amount/bill amount 1. Same

value as Inquiry response

data.minAmount String Yes Minimal amount. Same value as Inquiry

response

data.standMeter1 String Yes Premium period. Same value as Inquiry

response field standMeter

data.customGroup String Yes Customer group. Same value as Inquiry

response field customeGroup

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114701225459638",   "fiturId": "FTR421",   "data": {     "kode_mitra": "BSK",     "kode_loket": "50279",     "kode_cabang": "259", 

176/457

    "pin_transaksi": "12345",    "clientId": "IBOC",     "reffNum1": "NOREFF12345678901234",     "reffNum": "20160808204610066251",     "providerId": "PRUDENTIAL",     "paramsId": "4",     "amount": "20000",     "billingId": "12100100",     "customName": "7253‐Jahrakal",     "flag": "02",     "billStatCode": "1",     "billStatOut": "01",     "productIndicator": "7253",     "maxAmount": "",     "accountNum": "315629103 ",     "adm": "",     "billIndikator1": "",     "amount1": "",     "minAmount": "000000045000",     "standMeter1": "",     "customGroup": ""   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“61” is for Prudential

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Default “PRUDENTIAL”

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount * String Yes Customer’s bill amount. Same value

as payment request

data.billingId * String Yes Transaction’s journal

data.accountNum String Yes Agent’s account number. Same value

as Payment request

data.reffNum String Yes Transaction reference number

data.errorNum String Yes Transaction’s error number

data.message String Yes Transaction’s error message

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

177/457

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customName * String Yes Customer’s name. Same value as

Payment request

CustomerData.biaya_adm String Yes Admin fee

CustomerData.paramsId String Yes Default “4” . Same value as Payment

request

CustomerData.nominal String Yes Payment amount/bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "61",   "status": "success",   "data": {     "error": false,     "ket": "PRUDENTIAL",     "journal": "944580214   ",     "financialJournal": "768171",     "amount": "20000",     "billingId": "12100100",     "accountNum": "315629103",     "reffNum": "NOREFF12345678901234TNDBKT12345678907253",     "errorNum": ""   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7253‐Jahrakal",     "biaya_adm": null,     "paramsId": "4",     "nominal": "20000",     "time": "2016‐08‐08T20:47:23+07:00"   } } 

Error

response code

Response

(error) {   "data": {     "error": true,     "message": "TRANSAKSI GAGAL : Pin transaksi salah",     "errorNum": "‐2"   },   "result": { 

178/457

    "kode_loket": "BSK25950279",    "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7252‐Bane Elemental",     "biaya_adm": null,     "paramsId": "4",     "nominal": "20000",     "time": "2016‐08‐08T20:25:40+07:00"   } } 

2.3.1.38. Insurance – Prudential – Policy Adjustment – Inquiry Inquiry Prudential Policy Adjustment

Description feature for inquiry Prudential Policy Adjustment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

179/457

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “5”

data.billingId String Yes Customer billing id

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR422",   "data": {     "kode_mitra": "BSK",     "kode_loket": "50279",     "kode_cabang": "259",     "clientId": "IBOC", 

180/457

    "reffNum": "20151130111111111181",    "providerId": "PRUDENTIAL",     "paramsId": "5",     "billingId": "11"   } } 

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

amount String Yes Payment amount/bill amount

billingId * String Yes Customer billing id

customeName * String Yes Customer’s name

flag String Yes Flag

productIndicator String Yes Product indicator

maxAmount String Yes Maximal amount

billStatOut String Yes Polis status

Note :

01 = active, else = not active

customeGroup String Yes Customer group

adm String Yes Frequency

reffNum1 String Yes Transaction refference number

amount1 String Yes Payment amount/bill amount 1

billIndicator1 String Yes Bill indicator

minAmount String Yes Minimal amount

standMeter String Yes Premium period

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "amount": "0",   "billingId": "12100100",   "customeName": "7254‐Pandaren The Brewmaster",   "flag": "02",   "productIndicator": "7254",   "maxAmount": "",   "billStatOut": "01",   "customeGroup": "",   "adm": "",   "reffNum1": "NOREFF12345678901234",   "amount1": "",   "billIndicator1": "",   "minAmount": "000000045000",   "standMeter": "" }

Error

response code

181/457

Response

(error)

{   "error":true,   "errorNum":"0108",   "message":"NO SUCH ACCOUNT" }  

2.3.1.39. Insurance – Prudential – Policy Adjustment – Payment Payment Prudential Policy Adjustment

Description feature for payment Prudential Policy Adjustment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

182/457

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.reffNum1 String Yes Transaction refference number. Same

value as Inquiry response

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “5”

data.amount String Yes Customer’s bill amount, input on screen

by Customer

data.billingId String Yes Customer billing id. Same value as

Inquiry response

data.customName String Yes Customer’s name. Same value as

Inquiry response field customeName

data.flag String Yes Flag. Same value as Inquiry response

data.billStatCode String Yes Default “1”

data.billStatOut String Yes Polis status. Same value as Inquiry

response

data.productIndicator String Yes Product Indicator. Same value as

Inquiry response

183/457

data.maxAmount String Yes Maximal amount. Same value as Inquiry

response

data.accountNum String Yes Agent’s account number

data.adm String Yes Frequency. Same value as Inquiry

response

data.billIndicator1 String Yes Bill indicator. Same value as Inquiry

response

data.amount1 String Yes Payment amount/bill amount 1. Same

value as Inquiry response

data.minAmount String Yes Minimal amount. Same value as Inquiry

response

data.standMeter1 String Yes Premium period. Same value as Inquiry

response field standMeter

data.customGroup String Yes Customer group. Same value as Inquiry

response field customeGroup

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114701225459638",   "fiturId": "FTR423",   "data": {     "kode_mitra": "BSK",     "kode_loket": "50279",     "kode_cabang": "259",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20160808210426066254",     "reffNum1": "NOREFF12345678901234",     "providerId": "PRUDENTIAL",     "paramsId": "5",     "amount": "20000",     "billingId": "12100100",     "customName": "7254‐Pandaren The Brewmaster",     "flag": "02",     "billStatCode": "1",     "billStatOut": "01",     "productIndicator": "7254",     "maxAmount": "",     "accountNum": "315629103 ",     "adm": "",     "billIndikator1": "",     "amount1": "000000000000",     "minAmount": "000000045000",     "standMeter1": "",     "customGroup": ""   } } 

Response

Definition

184/457

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“61” is for Prudential

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Default “PRUDENTIAL”

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount * String Yes Payment amount/bill amount. Same

value as Payment request

data.billingId * String Yes Customer billing id. Same value as

Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

data.reffNum String Yes Transaction reference number

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customName * String Yes Customer’s name. Same value as

Payment request

CustomerData.biaya_adm String Yes Admin fee

CustomerData.paramsId String Yes Default “5” . Same value as

Payment request

CustomerData.nominal String Yes Payment amount/bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "61",   "status": "success",   "data": {     "error": false,     "ket": "PRUDENTIAL",     "journal": "903140217   ",     "financialJournal": "768174",     "amount": "20000",     "billingId": "12100100",     "accountNum": "315629103", 

185/457

    "reffNum": "NOREFF12345678901234TNDBKT12345678907254",     "errorNum": ""   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7254‐Pandaren The Brewmaster",     "biaya_adm": null,     "paramsId": "5",     "nominal": "20000",     "time": "2016‐08‐08T21:05:39+07:00"   } } 

Error

response code

Response

(error) {   "data": {     "error": true,     "message": "TRANSAKSI GAGAL : Pin transaksi salah",     "errorNum": "‐2"   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7254‐Pandaren The Brewmaster",     "biaya_adm": null,     "paramsId": "5",     "nominal": "20000",     "time": "2016‐08‐08T21:05:39+07:00"   } } 

2.3.1.40. Insurance – Prudential – Card Printing – Inquiry Inquiry Prudential Card Printing

Description feature for inquiry Prudential Card Printing Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

186/457

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is

187/457

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “6”

data.billingId String Yes Customer billing id

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR424",   "data": {     "kode_mitra": "BSK",     "kode_loket": "50279",     "kode_cabang": "259",     "clientId": "IBOC",     "reffNum": "20151130111111111183",     "providerId": "PRUDENTIAL",     "paramsId": "6",     "billingId": "11"   } } 

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

amount String Yes Payment amount/bill amount

billingId * String Yes Customer billing id

customeName * String Yes Customer’s name

flag String Yes Flag

productIndicator String Yes Product indicator

188/457

maxAmount String Yes Maximal amount

billStatOut String Yes Polis status

Note :

01 = active, else = not active

customeGroup String Yes Customer group

adm String Yes Frequency

reffNum1 String Yes Transaction refference number

amount1 String Yes Payment amount/bill amount 1

billIndicator1 String Yes Bill indicator

minAmount String Yes Minimal amount

standMeter String Yes Premium period

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "amount": "0",   "billingId": "12100100",   "customeName": "7255‐Lina Inverse",   "flag": "02",   "productIndicator": "7255",   "maxAmount": "",   "billStatOut": "01",   "customeGroup": "",   "adm": "",   "reffNum1": "NOREFF12345678901234",   "amount1": "",   "billIndicator1": "",   "minAmount": "000000045000",   "standMeter": "" }

Error

response code

Response

(error)

{   "error":true,   "errorNum":"0108",   "message":"NO SUCH ACCOUNT" }  

2.3.1.41. Insurance – Prudential – Card Printing – Payment Payment Prudential Card Printing

Description feature for payment Prudential Card Printing Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

189/457

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum1 String Yes Transaction refference number. Same

value as Inquiry response

190/457

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “6”

data.amount String Yes Customer’s bill amount, input on

screen by Customer

data.billingId String Yes Customer billing id. Same value as

Inquiry response

data.customName String Yes Customer’s name. Same value as

Inquiry response field customeName

data.flag String Yes Flag. Same value as Inquiry response

data.billStatCode String Yes Default “1”

data.billStatOut String Yes Polis status. Same value as Inquiry

response

data.productIndicator String Yes Product Indicator. Same value as

Inquiry response

data.maxAmount String Yes Maximal amount. Same value as

Inquiry response

data.accountNum String Yes Agent’s account number

data.adm String Yes Frequency. Same value as Inquiry

response

data.billIndicator1 String Yes Bill indicator. Same value as Inquiry

response

data.amount1 String Yes Payment amount/bill amount 1. Same

value as Inquiry response

data.minAmount String Yes Minimal amount. Same value as

Inquiry response

data.standMeter1 String Yes Premium period. Same value as

Inquiry response field standMeter

191/457

data.customGroup String Yes Customer group. Same value as

Inquiry response field customeGroup

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114701225459638",   "fiturId": "FTR425",   "data": {     "kode_mitra": "BSK",     "kode_loket": "50279",     "kode_cabang": "259",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum1": "NOREFF12345678901234",     "reffNum": "20160808213608066270",     "providerId": "PRUDENTIAL",     "paramsId": "6",     "amount": "20000",     "billingId": "12100100",     "customName": "7255‐Lina Inverse",     "flag": "2",     "billStatOut": "01",     "billStatCode": "1",     "productIndicator": "7255",     "maxAmount": "",     "accountNum": "315629103 ",     "adm": "",     "billIndikator1": "",     "amount1": "",     "minAmount": "000000045000",     "standMeter1": "",     "customGroup": ""   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“61” is for Prudential

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Default “PRUDENTIAL”

data.paramsId String Yes Default “6” . Same value as

Payment request

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

192/457

data.amount * String Yes Payment amount/bill amount. Same

value as Payment request

data.billingId * String Yes Customer billing id. Same value as

Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

data.reffNum String Yes Transaction reference number

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customName * String Yes Customer’s name. Same value as

Payment request

CustomerData.biaya_adm String Yes Admin fee

CustomerData.paramsId String Yes Default “6” . Same value as

Payment request

CustomerData.nominal String Yes Payment amount/bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "61",   "status": "success",   "data": {     "error": false,     "ket": "PRUDENTIAL",     "journal": "934550230   ",     "financialJournal": "768183",     "amount": "20000",     "billingId": "12100100",     "accountNum": "315629103",     "reffNum": "NOREFF12345678901234TNDBKT12345678907255",     "errorNum": ""   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7255‐Lina Inverse",     "biaya_adm": null, 

193/457

    "paramsId": "6",    "nominal": "20000",     "time": "2016‐08‐08T21:37:21+07:00"   } } 

Error

response code

Response

(error) {   "data": {     "error": true,     "message": "TRANSAKSI GAGAL : Pin transaksi salah",     "errorNum": "‐2"   },   "result": {     "kode_loket": "BSK25950279",     "kd_lkt": 50279,     "nama": "Kis'Bu xxx",     "kode_cabang": "259",     "kode_mitra": "BSK",     "alamat": "RT 2 Jatikalang Krian sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "customName": "7255‐Lina Inverse",     "biaya_adm": null,     "paramsId": "6",     "nominal": "20000",     "time": "2016‐08‐08T21:37:21+07:00"   } } 

2.3.1.42. Credit Card – BNI – Inquiry Inquiry BNI Credit Card

Description feature for inquiry BNI Credit Card Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string Name Format Mandatory Description

194/457

parameters access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen’s counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

data.cardNum String Yes Customer BNI credit card number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR430",   "data": {     "clientId": "IBOC",     "reffNum": "20151201091320000125",     "cardNum": "4665730000000117"   } }

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

195/457

ket * String Yes Transaction description

cardNum * String Yes Customer BNI credit card number

statementDate * String Yes Bill statement date

dueDate * String Yes Bill due date

cardHolder * String Yes Card holder

cardlinkFlag String Yes Cardlink flag

lastBillAmountSign String Yes Bill amount sign

lastBillAmount * String Yes Bill amount

minPayment * String Yes Minimum payment

minPayment1 String Yes Minimum payment 1

minPayment2 String Yes Minimum payment 2

status String Yes Bill status

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Credit Card BNI Inquiry",   "cardNum": "4665730000000117",   "statementDate": "11102012",   "dueDate": "12102012",   "cardHolder": "GA SIGN 2",   "cardlinkFlag": "02",   "lastBillAmountSign": "+",   "lastBillAmount": "261553126",   "minPayment": "261553126",   "minPayment1": "00000261",   "minPayment2": "553126",   "status": "2" }

Error

response code

Response

(error)

{

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

}

2.3.1.43. Credit Card – BNI – Payment Payment BNI Credit Card

Description feature for payment BNI Credit Card Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

196/457

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

197/457

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.cardNum String Yes Customer BNI credit card number

data.accountNum String Yes Agent’s account number

data.amount String Yes Payment amount/bill amount, input on

screen by Customer

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR431",   "data": {                   "kode_mitra": "BNI",   "kode_loket": "50300",   "kode_cabang": "259",   "clientId": "IBOC",   "reffNum": "20170512111856050300",   "cardNum": "5489888800039106",   "accountNum": 115258134,   "amount": "6030",   "pin_transaksi": "12345"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“41” is for CC BNI Payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.cardNum* String Yes Customer BNI credit card number.

198/457

Same value as Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

data.amount String Yes Payment amount/bill amount. Same

value as Payment request

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm * String Yes Admin fee

CustomerData.nominal * String Yes Payment amount/bill amount

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "41",   "status": "success",   "data": {     "error": false,     "ket": "Credit Card BNI",     "financialJournal": "308543",     "journal": "923310476   ",     "cardNum": "5489888800039106",     "accountNum": "115258134",     "amount": "6030"   },   "result": {     "kode_loket": "BNI25950300",     "kd_lkt": "50300",     "nama": "Firda",     "kode_cabang": "259",     "kode_mitra": "BNI",     "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"   },   "CustomerData": {     "biaya_adm": 0,     "nominal": "6030",     "time": "2017‐05‐12T13:25:22+07:00"   } }

Error response

code

Response

(error)

{

"trxType": "41",

"status": "success",

"data": {

199/457

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

},

"result": {

"kode_loket": "BNI25950300",

"kd_lkt": "50300",

"nama": "Firda",

"kode_cabang": "259",

"kode_mitra": "BNI",

"alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"

},

"CustomerData": {

"biaya_adm": 0,

"nominal": "6030",

"time": "2018-01-22T18:27:22+07:00"

} }

2.3.1.44. Credit Card – Non BNI – Payment Payment Non BNI Credit Card

Description feature for payment Non BNI Credit Card Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

200/457

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.bankCode String Yes Bank code of customer creadit card.

Note :

Possibility value are :

201/457

CITIBANK BRI BUKOPIN MEGA DANAMON NIAGA AMEX HSBC SCB GE ANZ PANIN

data.cardNum String Yes Customer credit card number

data.amount String Yes Payment amount/bill amount, input on

screen by Customer

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR432",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20170811153652020990",     "bankCode": "BRI",     "cardNum": "4365020922600613",     "amount": "250000",     "accountNum": "113020167"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“42” is for CC Non BNI Payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.reffNum String Yes Reference number. Same value as

Payment request

202/457

data.amount String Yes Payment amount/bill amount. Same

value as Payment request

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.cardNum * String Yes Customer credit card number.

Same value as Payment request

CustomerData.bankCode * String Yes Bank code of customer creadit card.

Same value as Payment request

CustomerData.biaya_adm * String Yes Admin fee.

Note :

BRI = Rp 7.500, else Rp 0

CustomerData.nominal * String Yes Payment amount/bill amount

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "42",   "status": "success",   "data": {     "error": false,     "ket": "BRI",     "financialJournal": "455151",     "journal": "915260645   ",     "reffNum": "20170811153652020990"   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   },   "CustomerData": {     "cardNum": "4365020922600613",     "bankCode": "BRI",     "biaya_adm": "7500",     "nominal": "250010",     "time": "2017‐08‐11T09:17:07+07:00"   } }

Error response

code

203/457

Response

(error)

{

"trxType": "42",

"status": "success",

"data": {

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"cardNum": "4365020922600613",

"bankCode": "BRI",

"biaya_adm": "7500",

"nominal": "250000",

"time": "2018-01-22T19:06:22+07:00"

} }

2.3.1.45. Personal Loan Payment Personal Loan

Description feature for payment Personal Loan Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

204/457

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

205/457

=20170607110019123450100021

data.bankCode String Yes Bank code of customer personal loan.

Note :

Possibility value are :

ANZ_PL CITIBANK_PL SCB_PL HSBC_PL

data.cardNum String Yes Customer personal loan number

data.amount String Yes Payment amount/bill amount, input on

screen by Customer

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR433",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20171205153652000991",     "bankCode": "ANZ_PL",     "cardNum": "3611824048",     "amount": "50000",     "accountNum": "115208670"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“43” is for Personal Loan Payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.reffNum String Yes Reference number. Same value as

Payment request

result.kode_loket String Yes Agent’s code

206/457

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.bankCode * String Yes Bank code of customer personal

loan. Same value as Payment

request

CustomerData.biaya_adm * String Yes Admin fee

CustomerData.cardNum * String Yes Customer personal loan number.

Same value as Payment request

CustomerData.nominal * String Yes Payment amount/bill amount. Same

value as Payment request

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "43",   "status": "success",   "data": {     "error": false,     "ket": "ANZ_PL",     "financialJournal": "593206",     "journal": "925150628   ",     "reffNum": "20171205153652000991"   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   },   "CustomerData": {     "bankCode": "ANZ_PL",     "biaya_adm": 0,     "cardNum": "3611824048",     "nominal": "50000",     "time": "2017‐12‐05T16:26:51+07:00"   } }

Error response

code

Response

(error)

{

"trxType": "43",

"status": "success",

"data": {

207/457

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"bankCode": "ANZ_PL",

"biaya_adm": 0,

"cardNum": "3611824048",

"nominal": "50000",

"time": "2018-01-22T19:22:04+07:00"

} }

2.3.1.46. Charity Payment Charity

Description feature for payment Charity Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

208/457

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Provider Id.

Note :

Possibility value are :

209/457

ZAKAT_DOMPET_DHUAFA ZAKAT_BAZNAS ZAKAT_PKPU ZAKAT_DPU_DAARUT_TAUHID ZAKAT_PPSDMS ZAKAT_BAMUIS ZAKAT_RUMAH_ZAKAT INFAQ_DOMPET_DHUAFA INFAQ_BAZNAS INFAQ_PKPU INFAQ_DPU_DAARUT_TAUHID INFAQ_PPSDMS INFAQ_BAMUIS INFAQ_RUMAH_ZAKAT QURBAN_DOMPET_DHUAFA QURBAN_BAZNAS QURBAN_PKPU QURBAN_DPU_DAARUT_TAUHID QURBAN_RUMAH_ZAKAT WAKAF_DOMPET_DHUAFA

data.amount String Yes Payment amount/bill amount, input on screen

by Customer

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR426",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20151130111111111208",     "providerId": "ZAKAT_DOMPET_DHUAFA",     "amount": "1500000",     "accountNum": "115245726"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“30” is for Charity Payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

210/457

data.ket String Yes Transaction description

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.reffNum String Yes Reference number. Same value as

Payment request

data.amount String Yes Payment amount/bill amount. Same

value as Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee.

Note :

BRI = Rp 7.500, else Rp 0

CustomerData.nominal * String Yes Payment amount/bill amount

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "30",   "status": "success",   "data": {     "error": false,     "ket": "INFAQ_DOMPET_DHUAFA",     "journal": "908180152   ",     "financialJournal": "142015",     "reffNum": "20151230070757050001",     "amount": "5000",     "accountNum": "0224089576"   },   "result": {     "kode_loket": "BNI02250001",     "kd_lkt": 50001,     "nama": "Ryan Ditya Permadi",     "kode_cabang": "022",     "kode_mitra": "BNI",     "alamat": "1\/1 Jatikarya Jati Sampurna Kota Bekasi Jawa Barat 17435"   },   "CustomerData": {     "biaya_adm": null,     "nominal": "5000",     "time": "2015‐12‐30T00:08:42.931Z"   } 

211/457

} Error response

code

Response

(error)

{

"trxType": "30",

"status": "success",

"data": {

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"biaya_adm": 0,

"nominal": "1500000",

"time": "2018-01-22T19:20:58+07:00"

} }

2.3.1.47. Mobile Postpaid – Inquiry Inquiry Mobile Postpaid

Description feature for inquiry Mobile Postpaid Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string Name Format Mandatory Description

212/457

parameters access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data Type Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.providerId String Yes Note providerId :

PROVIDER FIELD VALUE

Providerld

HALO HALO

INDOSAT MATRIX INDOSAT_POSTPAID

SMARTFREN FREN_POSTPAID

TRI THREE_POSTPAID

XL XPLOR/AXIS XPLOR

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.phoneNum String Yes Customer’s Mobile Phone Number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR411",   "data": {     "clientId": "IBOC",     "providerId": "HALO",     "reffNum": "20151201010101901037",     "phoneNum": "0811252222"   } } 

Response

Definition

213/457

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

clientId String Yes Default “IBOC”. Same value as

Inquiry request

reffNum String Yes Reference Number. Same value as

Inquiry request

amount * String Yes Customer’s bill amount

phoneNum * String Yes Customer’s Mobile Phone Number.

Same value as Inquiry request

customerNum String Yes Customer’s number

NPWP String Yes Customer’s NPWP

customerName * String Yes Customer name

flag String Yes Flag

billStatCode String Yes Bill Status Code

kandatelNum String Yes Kandatel Number

billingReff3 String Yes Billing Reference 3

billingAmount3 String Yes Billing Amount 3

billingReff2 String Yes Billing Reference 2

billingAmount2 String Yes Billing Amount 2

billingReff1 String Yes Billing Reference 1

billingAmount1 String Yes Billing Amount 1

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Halo Inquiry : 0811252222",   "clientId": "IBOC",   "reffNum": "20151201010101901037",   "amount": "230000",   "phoneNum": "0811252222",   "customerNum": "",   "NPWP": "",   "customerName": "WARREN CUCURULLO_694",   "flag": "00",   "billStatCode": "0",   "kandatelNum": "0100",   "billingReff3": "00000062001",   "billingAmount3": "587579",   "billingReff2": "         02",   "billingAmount2": "0",   "billingReff1": "",   "billingAmount1": "0" } 

Error

214/457

response code

Response

(error)

{

"error": true,

"errorNum": "12",

"message": "Invalid transaction"

}

2.3.1.48. Mobile Postpaid– Payment Payment Postpaid

Description feature for Postpaid bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered in

BNI H2H system. This code is part of the agent

215/457

code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Note providerId :

PROVIDER FIELD VALUE

Providerld

HALO HALO

INDOSAT MATRIX INDOSAT_POSTPAID

SMARTFREN FREN_POSTPAID

TRI THREE_POSTPAID

XL XPLOR/AXIS XPLOR

data.amount String Yes Customer’s bill amount. Same value as Inquiry

response

data.phoneNum String Yes Customer’s Mobile Phone number. Same value

as Inquiry response

customerNum String Yes Customer’s number. Same value as Inquiry

response

NPWP String Yes Customer’s NPWP. Same value as Inquiry

response

data.customerName String Yes Customer’s name. Same value as Inquiry

216/457

response

data.flag String Yes Flag. Same value as Inquiry response

data.billStatCode String Yes bill status code. Same value as Inquiry response

data.kandatelNum String Yes Kandatel Number. Same value as Inquiry

response

data.billingReff3 String Yes Billing Reference 3. Same value as Inquiry

response

data.billingAmount3 String Yes Billing Amount 3. Same value as Inquiry

response

data.billingReff2 String Yes Billing Reference 2. Same value as Inquiry

response

data.billingAmount2 String Yes Billing Amount 2. Same value as Inquiry

response

data.billingReff1 String Yes Billing Reference 1. Same value as Inquiry

response

data.billingAmount1 String Yes Billing Amount 1. Same value as Inquiry

response

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR412",   "data": {     "kode_mitra": "BNI",     "kode_loket": "100021",     "kode_cabang": "259",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "201704261323120100021",     "providerId": "HALO",     "amount": "525000",     "phoneNum": "081392007040",     "customerNum": "",     "NPWP": "",     "customerName": "DWI YUDDYONO‐DEPOK MAHARAJA",     "flag": "00",     "billStatCode": "0",     "kandatelNum": "02",     "billingReff3": "10443430008",     "billingAmount3": "500000",     "billingReff2": "",     "billingAmount2": "25000",     "billingReff1": "",     "billingAmount1": "0",     "accountNum": 115258134   } } 

217/457

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“22” is for Postpaid

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.financialJurnal * String Yes Transaction’s financial journal

data.journal * String Yes Transaction’s journal

data.amount * String Yes Customer’s bill amount. Same value as

payment request

data.reffNum String Yes Reference Number. Same value as

payment request

data.accountNum String Yes Agent’s account number. Same value

as Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.customName String Yes Customer’s name. Same value as

Payment request field customerName

CustomerData.biaya_adm String Yes Admin fee

CustomerData.no_telp String Yes Customer’s Mobile Phone number

CustomerData.nominal String Yes Customer’s bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "22",   "status": "success",   "data": {     "error": false,     "ket": "HALO",     "financialJournal": "278157",     "journal": "934120070   ",     "amount": "515100",     "reffNum": "201704261323120110021",     "accountNum": "115258134"   },   "result": {     "kode_loket": "BNI259100021", 

218/457

    "kd_lkt": "100021",    "nama": "v agen",     "kode_cabang": "259",     "kode_mitra": "BNI",     "alamat": "001 Menteng Menteng Kota Jakarta Pusat DKI Jakarta 10310"   },   "CustomerData": {     "customerName": "DWI YUDDYONO‐DEPOK MAHARAJA",     "biaya_adm": null,     "no_tel": "081392007040",     "nominal": "515100",     "time": "2017‐04‐26T13:35:23+07:00"   } } 

Error

response code

Response

(error)

{

"trxType": "22",

"status": "success",

"data": {

"error": true,

"errorNum": "9990",

"message": "Duplicate Refference Number"

},

"result": {

"kode_loket": "BNI259100021",

"kd_lkt": "100021",

"nama": "v agen",

"kode_cabang": "259",

"kode_mitra": "BNI",

"alamat": "001 Menteng Menteng Kota Jakarta Pusat DKI Jakarta 10310"

},

"CustomerData": {

"customerName": "DWI YUDDYONO-DEPOK MAHARAJA",

"biaya_adm": null,

"no_tel": "081392007040",

"nominal": "525000",

"time": "2018-01-24T18:20:06+07:00"

}

}

2.3.1.49. BPJS TK BPU & TKI – Inquiry Inquiry BPJS TK BPU & TKI

Description feature for inquiry BPJS TK BPU & TKI bill payment Hostname https://apidev.bni.co.id

Port 8066

219/457

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.payment_type String Yes Payment Type :

220/457

BPJS TK BPU : BPJS_TKBPU

BPJS TK TKI : BPJS_TKTKI

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen’s counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.billingId1 String Yes Customer’s billing Id

data.numberOfMonthOfBills String Yes Number of months of bills, with options

1,3,6 and 12

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR444",   "data": {     "kode_mitra": "KSN",     "kode_loket": "50312",     "kode_cabang": "259",     "payment_type": "BPJS_TKBPU",     "reffNum": "20171005160237050369",     "billingId1": "3314104809910008",     "numberOfMonthsOfBills": "1"   } } 

Response

Definition

Field Data Type Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket * String Yes Transaction description

h_billingNum * String Yes BPJS participant number

h_requestId String Yes Request Id

h_expiredDate * String Yes Expired Date

221/457

h_effectiveDate * String Yes Effective Date

h_activeDate String Yes Active Date

h_countBillCode String Yes Count bill code

h_contributionCode String Yes Contribution Code

h_amountJKM String Yes Amount JKM

h_amountJHT String Yes Amount JHT

h_amountJKK String Yes Amount JKK

h_totalBPJSTK * String Yes Total contributions amount

h_regFeeBPJSTK String Yes Regular Fee BPJS TK

h_trxFeeBPJSTK String Yes Trx Fee BPJS TK

h_program * String Yes BPJS TK Program

h_companyName * String Yes Company Name

c_fee * String Yes Transaction fee

h_companyId String Yes Company Id

h_billingPeriod * String Yes Billing Period

biaya_loket * String Yes Counter Fee

c_totalPay String Yes Total Payment, including

h_totalBPJSTK and c_fee

total_amount String Yes Total Payment, including

h_totalBPJSTK, c_fee, and Counter fee

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Pembayaran BPJS TK Individu (BPU)",   "h_billingNum": "3314104809910008",   "h_requestId": "API125848000001034",   "h_expiredDate": "07‐10‐2016",   "h_effectiveDate": "13‐10‐2015",   "h_activeDate": "13‐06‐2015",   "h_countBillCode": "",   "h_contributionCode": "900000054765",   "h_amountJKM": "745200",   "h_amountJHT": "0",   "h_amountJKK": "2484000",   "h_totalBPJSTK": "3229200",   "h_regFeeBPJSTK": ".00",   "h_trxFeeBPJSTK": ".00",   "h_program": "JKK,JKM",   "h_companyName": "TEGUH PRASETYO UTOMO",   "c_fee": "0",   "h_companyId": "J00",   "h_billingPeriod": "12",   "biaya_loket": "2500",   "c_totalPay": 3229200,   "total_amount": 3231700 } 

Error

222/457

response code

Response

(error)

{

"error": true,

"errorNum": "9805",

"message": "(SOA) FAILED TO PARSE SOAP MESSAGE"

}

2.3.1.50. BPJS TK BPU & TKI – Payment Payment BPJS TK BPU & TKI

Description feature for BPJS TK BPU & TKI bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

223/457

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.payment_type String Yes Payment Type :

BPJS TK BPU : BPJS_TKBPU

BPJS TK TKI : BPJS_TKTKI

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.h_billingNum String Yes BPJS participant number. Same value as

Inquiry response

data.h_requestId String Yes Request Id. Same value as Inquiry response

data.h_expiredDate String Yes Expired Date. Same value as Inquiry

response

data.h_effectiveDate String Yes Effective Date. Same value as Inquiry

response

data.h_activeDate String Yes Active Date. Same value as Inquiry response

data.h_countBillCode String Yes Count bill code. Same value as Inquiry

response

data.h_contributionCode String Yes Contribution Code. Same value as Inquiry

response

data.h_amountJKM String Yes Amount JKM. Same value as Inquiry

response

data.h_amountJHT String Yes Amount JHT. Same value as Inquiry response

224/457

data.h_amountJKK String Yes Amount JKK. Same value as Inquiry response

data.h_totalBPJSTK String Yes Total contributions amount. Same value as

Inquiry response

data.h_regFeeBPJSTK String Yes Regular Fee BPJS TK. Same value as Inquiry

response

data.h_trxFeeBPJSTK String Yes Trx Fee BPJS TK. Same value as Inquiry

response

data.h_program String Yes BPJS Program. Same value as Inquiry

response

data.h_companyName String Yes Company Name. Same value as Inquiry

response

data.c_fee String Yes Transaction fee. Same value as Inquiry

response

data.h_companyId String Yes Company Id. Same value as Inquiry response

data.h_billingPeriod String Yes Billing Period. Same value as Inquiry

response

data.accountNum String Yes Agent’s account number

data.biaya_loket String Yes Counter Fee. Same value as Inquiry response

data.c_totalPay String Yes Total Payment, including h_totalBPJSTK and

c_fee. Same value as Inquiry response

data.total_Amount String Yes Total Payment, including h_totalBPJSTK,

c_fee, and Counter fee. Same value as

Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR445",   "data": {     "kode_mitra": "KSN",     "kode_loket": "50312",     "kode_cabang": "259",     "payment_type": "BPJS_TKBPU",     "pin_transaksi": "12345",     "reffNum": "20171005160237050439",     "h_billingNum": "3314104809910008",     "h_requestId": "API120320000144676",     "h_expiredDate": "07‐10‐2016",     "h_effectiveDate": "13‐10‐2015",     "h_activeDate": "13‐06‐2015",     "h_countBillCode": "",     "h_contributionCode": "900000054765",     "h_amountJKM": "745200",     "h_amountJHT": "0",     "h_amountJKK": "2484000",     "h_totalBPJSTK": "3229200",     "h_regFeeBPJSTK": ".00", 

225/457

  "h_trxFeeBPJSTK": ".00",    "h_program": "JKK,JKM",     "h_companyName": "TEGUH PRASETYO UTOMO",     "c_fee": "0",     "h_companyId": "J00",     "h_billingPeriod": "12",     "accountNum": "116908716",     "biaya_loket": "2500",     "c_totalPay": 3229200,     "total_amount": 3231700   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“114” is for BPJS TK BPU

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket * String Yes Transaction description

data.h_billingNum * String Yes BPJS participant number. Same

value as Payment request

data.h_requestId String Yes Request Id. Same value as

Payment request

data.h_expiredDate * String Yes Expired Date. Same value as

Payment request

data.h_effectiveDate * String Yes Effective Date. Same value as

Payment request

data.h_countBillCode String Yes Count bill code. Same value as

Payment request

data.h_contributionCode * String Yes Contribution Code. Same value as

Payment request

data.h_amountJKM String Yes Amount JKM. Same value as

Payment request

data.h_amountJHT String Yes Amount JHT. Same value as

Payment request

data.h_amountJKK String Yes Amount JKK. Same value as

Payment request

data.h_totalBPJSTK * String Yes Total contributions amount. Same

value as Payment request

data.h_regFeeBPJSTK String Yes Regular Fee BPJS TK. Same value

as Payment request

data.h_trxFeeBPJSTK String Yes Trx Fee BPJS TK. Same value as

Payment request

data.h_program * String Yes BPJS Program. Same value as

226/457

Payment request

data.h_companyName * String Yes Company Name. Same value as

Payment request

data.c_payMethod String Yes Default “2”

data.c_dbNomorRek String Yes Agent’s account number. Same

value as Payment request field

“data.accountNum”

data.c_description String Yes Description. Same value as

Payment request

data.c_fee * String Yes Transaction fee. Same value as

Payment request

data.journal * String Yes Transaction’s journal

data.h_institutionId String Yes Default "BPJS KETENAGAKERJAAN 

INDIVIDU (BPU)"

data.h_billingPeriod * String Yes Billing Period. Same value as

Payment request

data.transactionDateTime String Yes Transaction’s time

data.accountNumber String Yes Agent’s account number. Same

value as Payment request

data.reffNum * String Yes Reference number. Same value as

Payment request

data.biaya_loket String Yes Counter Fee. Same value as

Payment request

data.c_totalPay String Yes Total Payment, including

h_totalBPJSTK and c_fee. Same

value as Payment request

data.total_Amount * String Yes Total Payment, including

h_totalBPJSTK, c_fee and counter

fee. Same value as Payment

request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee

CustomerData.noRek String Yes Agent’s account number

CustomerData.nominal String Yes Total Payment, including

h_totalBPJSTK and c_fee

CustomerData.time String Yes Transaction’s time

Success HTTP 200

227/457

response code

Response

(Success) {   "trxType": "114",   "status": "success",   "data": {     "error": false,     "ket": "Pembayaran BPJS TK Individu (BPU)",     "h_billingNum": "3314104809910008",     "h_requestId": "API120320000144676",     "h_expiredDate": "07‐10‐2016",     "h_effectiveDate": "13‐10‐2015",     "h_countBillCode": "",     "h_contributionCode": "900000013621",     "h_amountJKM": "745200",     "h_amountJHT": "0",     "h_amountJKK": "2484000",     "h_totalBPJSTK": "3229200",     "h_regFeeBPJSTK": ".00",     "h_trxFeeBPJSTK": ".00",     "h_program": "JKK,JKM",     "h_companyName": "TEGUH PRASETYO UTOMO",     "c_payMethod": "2",     "c_dbNomorRek": "116908716",     "c_description": "",     "c_fee": "0",     "journal": "521339",     "h_institutionId": "BPJS KETENAGAKERJAAN INDIVIDU (BPU)",     "h_billingPeriod": "12",     "transactionDateTime": "05‐10‐2017 13:03:54",     "accountNumber": "116908716",     "reffNum": "20171005160237050439",     "biaya_loket": "2500",     "c_totalPay": 3229200,     "total_amount": 3231700,     "errorNum": ""   },   "result": {     "kode_loket": "KSN25950312",     "kd_lkt": "50312",     "nama": "KIOSON",     "kode_cabang": "259",     "kode_mitra": "KSN",     "alamat": "RT 4 Tangsel Setiabudi Jakarta Selatan DKI JAKARTA 12910"   },   "CustomerData": {     "biaya_adm": "0",     "noRek": "116908716",     "nominal": 3229200,     "time": "2017‐10‐05T13:02:41+07:00"   } } 

Error

response code

228/457

Response

(error)

{

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

},

"result": {

"kode_loket": "KSN25950312",

"kd_lkt": "50312",

"nama": "KIOSON",

"kode_cabang": "259",

"kode_mitra": "KSN",

"alamat": "RT 4 Tangsel Setiabudi Jakarta Selatan DKI JAKARTA 12910"

},

"CustomerData": {

"biaya_adm": "0",

"noRek": "116908716",

"nominal": 3229200,

"time": "2017-10-05T13:02:41+07:00"

}

}

2.3.1.51. Airline Ticketing– Inquiry Inquiry Airline Ticketing

Description feature for inquiry Airline Ticketing bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

229/457

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes List of providerId :

1. AIRASIA

2. CITILINK

3. GARUDA

4. LIONAIR

5. SRIWIJAYA

data.billingId String Yes Billing id

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR434",   "data": {     "clientId": "IBOC",     "reffNum": "20151201171818000732",     "providerId": "AIRASIA",     "billingId": "2222"   } } 

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

230/457

ket * String Yes Transaction description

reffNum String Yes Reference number which is

combination of [transaction date]

. [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s

counter code

Example :

reffNum

=20170607110019123450100021

billingId * String Yes Billing id. Same value as inquiry

request

pnrCode String Yes Pnr Code

passangerName * String Yes Passanger Name

telkomFlag String Yes Telkom flag

flightAmount String Yes Number of flight on a billing id

billerCode String Yes Biller code

flightInfo1 String Yes Flight info 1

flightInfoExtended1 String Yes Flight info extended 1

flightInfo2 String Yes Flight info 1

flightInfoExtended2 String Yes Flight info extended 1

flightInfo3 String Yes Flight info 1

flightInfoExtended3 String Yes Flight info extended 1

amount * String Yes Bill Amount

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Ticket Airlane Inquiry",   "reffNum": "20151201171818000732",   "billingId": "2222",   "pnrCode": "111112222233333",   "passangerName": "CONAN AIR ASIA 2008 MELAYANG F",   "telkomFlag": "02",   "flightAmount": "2",   "billerCode": "",   "flightInfo1": "77AA1008CKG",   "flightInfoExtended1": "DPS912061115", 

231/457

  "flightInfo2": "  011508DPS",  "flightInfoExtended2": "NYK212061615",   "flightInfo3": "",   "flightInfoExtended3": "",   "amount": "200000" }

Error

response code

Response

(error)

{

"error": true,

"errorNum": "12",

"message": "Invalid transaction"

}

2.3.1.52. Airline Ticketing– Payment Payment Airline Ticketing

Description feature for Airline Ticketing bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

232/457

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Provider id. Same value as inquiry request

data.billingId String Yes Billing id. Same value as inquiry response

data.pnrCode String Yes Pnr Code. Same value as inquiry response

data.passangerName String Yes Passanger Name. Same value as inquiry

response

data.telkomFlag String Yes Telkom flag. Same value as inquiry response

data.flightAmount String Yes Number of flight on a billing id. Same value

as inquiry response

billerCode String Yes Biller code. Same value as inquiry response

data.flightInfo1 String Yes Flight info 1. Same value as inquiry response

data.flightInfoExtended1 String Yes Flight info extended 1. Same value as inquiry

response

233/457

data.flightInfo2 String Yes Flight info 1. Same value as inquiry response

data.flightInfoExtended2 String Yes Flight info extended 1. Same value as inquiry

response

data.flightInfo3 String Yes Flight info 1. Same value as inquiry response

data.flightInfoExtended3 String Yes Flight info extended 1

data.amount String Yes Bill Amount. Same value as inquiry response

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR435",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IBOC",     "reffNum": "20151201171218000733",     "providerId": "AIRASIA",     "billingId": "2222",     "pnrCode": "111112222233333",     "passangerName": "CONAN AIR ASIA 2008 MELAYANG F",     "telkomFlag": "02",     "flightAmount": "2",     "billerCode": "",     "flightInfo1": "77AA1008CKG",     "flightInfoExtended1": "DPS912061115",     "flightInfo2": "011508DPS",     "flightInfoExtended2": "011508DPS",     "flightInfo3": "",     "flightInfoExtended3": "",     "amount": "200000",     "accountNum": "115258134"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“50” is for Airline Ticketing

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.journal * String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

234/457

data.billingId * String Yes Billing id. Same value as Payment

request

data.passangerName * String Yes Passanger Name. Same value as

Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee

CustomerData.nominal String Yes Bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "50",   "status": "success",   "data": {     "error": false,     "ket": "Ticket Airlane 2222",     "journal": "936070796   ",     "financialJournal": "192319",     "billingId": "2222",     "passangerName": "CONAN AIR ASIA 2008 MELAYANG F"   },   "result": {     "kode_loket": "BNI02250001",     "kd_lkt": 50001,     "nama": "Ryan Ditya Permadi",     "kode_cabang": "022",     "kode_mitra": "BNI",     "alamat": "1\/1 Jatikarya Jati Sampurna Kota Bekasi Jawa Barat 17435"   },   "CustomerData": {     "biaya_adm": null,     "nominal": "200000",     "time": "2015‐12‐30T00:08:42.931Z"   } } 

Error response

code

Response

(error)

{

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

235/457

},

"result": {

"kode_loket": "BNI02250001",

"kd_lkt": 50001,

"nama": "Ryan Ditya Permadi",

"kode_cabang": "022",

"kode_mitra": "BNI",

"alamat": "1\/1 Jatikarya Jati Sampurna Kota Bekasi Jawa Barat 17435"

},

"CustomerData": {

"biaya_adm": null,

"nominal": "5000",

"time": "2015-12-30T00:08:42.931Z"

}

}

2.3.1.53. Train Ticketing– Inquiry Inquiry Train Ticketing

Description feature for inquiry Train Ticketingbill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

236/457

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered in

BNI H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.clientId String Yes Default “IBOC”

data.providerId String Yes Default “KAI”

data.billingId String Yes Billing id

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR473",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019", 

237/457

    "kode_cabang": "259",    "reffNum": "201705171021230100021",     "clientId": "IBOC",     "providerId": "KAI",     "billingId": "0812457451",     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

reffNum String Yes Reference number. Same value as

inquiry request

amount String Yes Passanger’s Bill Amount

billingId * String Yes Billing id. Same value as inquiry

request

formatVersion String Yes Format Version

productIndicator String Yes Product Indicator

bookingCode * String Yes Booking Code

trainName * String Yes Train Name

passangerName * String Yes Passanger Name

telkomFlag String Yes Telkom Flag

kandNum String Yes Kandatel Number

stationFrom * String Yes Station Form

stationTo * String Yes Station To

langCode String Yes Lang Code

billValue String Yes Bill Value

totalPassanger * String Yes Total Passanger

depatureDate * String Yes Depature Date

totalBilling * String Yes Total nominal billing

depatureTime * String Yes Depature Time

adminFee * String Yes Admin Fee

class * String Yes Train’s Class

seatNo * String Yes Train’s Seat Number

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "reffNum": "201705171021230100021",   "amount": "0",   "billingId": "0812457451",   "formatVersion": "0",   "productIndicator": "8150", 

238/457

  "bookingCode": "3XUQA7",  "trainName": "ARGO BIMA 12345",   "passengerName": "ARI BHAKTI 1234567891234567891",   "telkomFlag": "02",   "kandNum": "0",   "stationFrom": "BDNG",   "stationTo": "GMBR",   "langCode": "0",   "billValue": "1",   "totalPassenger": "4",   "depatureDate": "29‐JUL‐11",   "totalBilling": "1000000",   "depatureTime": "19.05",   "adminFee": "7500",   "class": "EKSA‐1",   "seatNo": "13A_13B_13C_13D" }

Error

response code

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Transaksi tidak dapat dilakukan. Tidak ada balasan dari database provider/biller.

(RC 91)"

}

2.3.1.54. Train Ticketing– Payment Payment Train Ticketing

Description feature for Train Ticketingbill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

239/457

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.amount String Yes Total Billing. Same value as inquiry response

240/457

data.providerId String Yes Default “KAI”

data.billingId String Yes Billing id. Same value as inquiry response

data.formatVersion String Yes Format Version. Same value as inquiry

response

data.productIndicator String Yes Product Indicator. Same value as inquiry

response

data.bookingCode String Yes Booking Code. Same value as inquiry

response

data.trainName String Yes Train Name. Same value as inquiry response

data.passangerName String Yes Passanger Name. Same value as inquiry

response

data.telkomFlag String Yes Telkom Flag. Same value as inquiry response

data.kandNum String Yes Kandatel Number. Same value as inquiry

response

data.stationFrom String Yes Station Form. Same value as inquiry

response

data.stationTo String Yes Station To. Same value as inquiry response

data.langCode String Yes Lang Code. Same value as inquiry response

data.billValue String Yes Bill Value. Same value as inquiry response

data.totalPassanger String Yes Total Passanger. Same value as inquiry

response

data.depatureDate String Yes Depature Date. Same value as inquiry

response

data.totalBilling String Yes Total nominal billing. Same value as inquiry

response

data.depatureTime String Yes Depature Time. Same value as inquiry

response

data.adminFee String Yes Admin Fee. Same value as inquiry response

data.class String Yes Train’s Class. Same value as inquiry

response

data.seatNo String Yes Train’s Seat Number. Same value as inquiry

response

data.pin_transaksi String Yes Agent’s transaction pin

data.accountNum String Yes Agent’s account number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR474",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "clientId": "IBOC", 

241/457

  "reffNum": "201705171054230100020",    "amount": "100000",     "providerId": "KAI",     "billingId": "0812457451",     "formatVersion": "0",     "productIndicator": "8150",     "bookingCode": "3XUQA7",     "trainName": "ARGO BIMA 12345",     "passengerName": "ARI BHAKTI 1234567891234567891",     "telkomFlag": "02",     "kandNum": "0",     "stationFrom": "BDNG",     "stationTo": "GMBR",     "langCode": "0",     "billValue": "1",     "totalPassenger": "4",     "depatureDate": "29‐JUL‐11",     "totalBilling": "1000000",     "depatureTime": "19.05",     "adminFee": "7500",     "classInfo": "EKSA‐1",     "seatNo": "13A_13B_13C_13D",     "pin_transaksi": "12345",     "accountNum": "115258134"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“110” is for Train Ticketing

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.financialJurnal * String Yes Transaction’s financial journal

data.journal String Yes Transaction’s journal

data.amount String Yes Total Billing. Same value as

Payment request

data.billingId * String Yes Billing id. Same value as Payment

request

data.bookingCode * String Yes Booking Code. Same value as

Payment request

data.trainName * String Yes Train Name. Same value as

Payment request

data.passangerName * String Yes Passanger Name. Same value as

Payment request

data.stationFrom * String Yes Station Form. Same value as

Payment request

242/457

data.stationTo * String Yes Station To. Same value as

Payment request

data.totalPassanger * String Yes Total Passanger. Same value as

Payment request

data.depatureDate * String Yes Depature Date. Same value as

Payment request

data.totalBilling * String Yes Total nominal billing. Same value

as Payment request

data.depatureTime * String Yes Depature Time. Same value as

Payment request

data.adminFee * String Yes Admin Fee. Same value as

Payment request

data.class * String Yes Train’s Class. Same value as

Payment request

data.seatNo * String Yes Train’s Seat Number. Same value

as Payment request

data.accountNum String Yes Agent’s account number. Same

value as Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee

CustomerData.nominal String Yes Total nominal billing

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "110",   "status": "success",   "data": {     "error": false,     "journal": "959280339   ",     "financialJournal": "310846",     "amount": "100000",     "billingId": "0812457451",     "bookingCode": "3XUQA7",     "trainName": "ARGO BIMA 12345",     "passengerName": "ARI BHAKTI 1234567891234567891",     "stationFrom": "BDNG",     "stationTo": "GMBR",     "totalPassenger": "4",     "depatureDate": "29‐JUL‐11",     "totalBilling": "1000000", 

243/457

    "depatureTime": "19.05",    "adminFee": "7500",     "class": "EKSA‐1",     "seatNo": "13A_13B_13C_13D",     "accountNum": "115258134",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "biaya_adm": null,     "nominal": "100000",     "time": "2017‐05‐17T11:00:52+07:00"   } } 

Error

response code

Response

(error)

{

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

},

"result": {

"kode_loket": "ARD259100019",

"kd_lkt": "100019",

"nama": "LALA",

"kode_cabang": "259",

"kode_mitra": "ARD",

"alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA

15415"

},

"CustomerData": {

"biaya_adm": null,

"nominal": "100000",

"time": "2017-05-17T11:00:52+07:00"

}

}

244/457

2.3.1.55. Insurance – Bumiputera – Inquiry Inquiry Bumiputera

Description feature for inquiry Bumiputera Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered in BNI

H2H system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

245/457

kode_cabang is “999”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes List of ProviderId :

Type of Payment FIELD Value

ProviderId

Initial Premium BUMIPUTERA_PERTAMA

Continuation

Premium

BUMIPUTERA_LANJUTAN

Top Up Premium BUMIPUTERA_TOPUP

data.billingId String Yes Billing id

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR481",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "reffNum": "201705171021230100020",     "providerId": "BUMIPUTERA_PERTAMA",     "billingId": "457894",     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

reffNum String Yes Reference number. Same value as

246/457

inquiry request

amount String Yes Customer’s Bill Amount

billingId * String Yes Billing id. Same value as inquiry

request

currCode String Yes Currency Code

frequency String Yes Frequency

customerName * String Yes Customer Name

billInfo String Yes Bill Info

prodCode String Yes Product Code

dueDateMonth * String Yes Due Date month

billAmount * String Yes Bill Amount

billPremi String Yes Bill Premium

billPremiPolis * String Yes Bill Premium Polis

dueDateYear * String Yes Due Date Year

minValue String Yes Minimal Value

polisStatus * String Yes Polis Status

payProff String Yes Payment Proff

errorNum String Yes Error Number

fee * String Yes Admin Fee

total_amount * String Yes Total Amount, including

billAmount and fee

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "reffNum": "201705171021230100020",   "amount": "0",   "billingId": "1234567890123456789",   "currCode": "360",   "frequency": "BULANAN",   "customerName": "ALESSANDRO FLORENZI",   "billInfo": "0",   "prodCode": "0001",   "dueDateMonth": "12 JANUARI",   "billAmount": "123400",   "billPremi": "123400",   "billPremiPolis": "100000",   "dueDateYear": "2016",   "minValue": "12340",   "polisStatus": "BELUM LUNAS",   "payProof": "ABCDEFGHIJKLMNOPQRST",   "errorNum": "",   "fee": "0",   "total_amount": 123400 }

Error

response code

247/457

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Transaksi tidak dapat dilakukan. Tidak ada balasan dari database provider/biller.

(RC 91)"

}

2.3.1.56. Insurance – Bumiputera– Payment Payment Bumiputera

Description feature for Bumiputera bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

248/457

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.amount String Yes Total Billing. Same value as inquiry response

data.providerId String Yes Provider id. Same value as inquiry request

data.billingId String Yes Billing id of. Same value as inquiry response

data.currCode String Yes Currency Code. Same value as inquiry

response

data.frequency String Yes Frequency. Same value as inquiry response

data.customerName * String Yes Customer Name. Same value as inquiry

response

data.billInfo String Yes Bill Info. Same value as inquiry response

data.prodCode String Yes Product Code. Same value as inquiry

response

data.dueDateMonth * String Yes Due Date month. Same value as inquiry

response

data.billAmount * String Yes Bill Amount. Same value as inquiry response

data.billPremi String Yes Bill Premium. Same value as inquiry

response

data.billPremiPolis * String Yes Bill Premium Polis. Same value as inquiry

response

data.dueDateYear * String Yes Due Date Year. Same value as inquiry

response

249/457

data.minValue String Yes Minimal Value. Same value as inquiry

response

data.polisStatus * String Yes Polis Status. Same value as inquiry response

data.payProff String Yes Payment Proff. Same value as inquiry

response

data.accountNum String Yes Agent’s account number

data.fee String Yes Admin Fee. Same value as inquiry response

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR482",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "reffNum": "201705171021330100026",     "amount": "121400",     "providerId": "BUMIPUTERA_PERTAMA",     "billingId": "1234567890123456789",     "currCode": "360",     "frequency": "BULANAN",     "customerName": "ALESSANDRO FLORENZI",     "billInfo": "0",     "prodCode": "0001",     "dueDateMonth": "12 JANUARI",     "billAmount": "123400",     "billPremi": "123400",     "billPremiPolis": "100000",     "dueDateYear": "2016",     "minValue": "12340",     "polisStatus": "BELUM LUNAS",     "payProof": "ABCDEFGHIJKLMNOPQRST",     "accountNum": "151219780",     "fee": "0",     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“70” is for Bumiputera

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.reffNum String Yes Reference number. Same value as

250/457

Payment request

data.journal String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount String Yes Customer’s bill amount. Same

value as Payment request

data.billingId * String Yes Billing id. Same value as Payment

request

data.currCode String Yes Currency Code. Same value as

Payment request

data.frequency * String Yes Frequency. Same value as

Payment request

data.customerName * String Yes Customer Name. Same value as

inquiry response

data.billInfo String Yes Bill Info. Same value as Payment

request

data.prodCode String Yes Product Code. Same value as

Payment request

data.dueDateMonth * String Yes Due Date month. Same value as

Payment request

data.billAmount * String Yes Bill Amount. Same value as

Payment request

data.billPremi String Yes Bill Premium. Same value as

Payment request

data.billPremiPolis * String Yes Bill Premium Polis. Same value as

Payment request

data.dueDateYear * String Yes Due Date Year. Same value as

Payment request

data.minValue String Yes Minimal Value. Same value as

Payment request

data.polisStatus * String Yes Polis Status. Same value as

Payment request

data.payProff String Yes Payment Proff. Same value as

Payment request

data.accountNum String Yes Agent’s account number

data.providerId * String Yes Provider id. Same value as

Payment request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee

251/457

CustomerData.total_amount String Yes Total Amount, including

billAmount and fee

CustomerData.noRek String Yes Agent’s account number

CustomerData.nominal String Yes Customer’s bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "70",   "status": "success",   "data": {     "error": false,     "reffNum": "201705171021330100026",     "journal": "933110325   ",     "financialJournal": "310702",     "amount": "121400",     "billingId": "1234567890123456789",     "currCode": "360",     "frequency": "BULANAN",     "customerName": "ALESSANDRO FLORENZI",     "billInfo": "0",     "prodCode": "0001",     "dueDateMonth": "12 JANUARI",     "billAmount": "123400",     "billPremi": "123400",     "billPremiPolis": "100000",     "dueDateYear": "2016",     "minValue": "12340",     "polisStatus": "BELUM LUNAS",     "payProof": "ABCDEFGHIJKLMNOPQRST",     "accountNum": "151219780",     "providerId": "BUMIPUTERA_PERTAMA",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "biaya_adm": "0",     "total_amount": 123400,     "noRek": "151219780",     "nominal": "121400",     "time": "2017‐05‐17T10:34:35+07:00"   } } 

252/457

Error response

code

Response

(error)

{

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

},

"result": {

"kode_loket": "ARD259100019",

"kd_lkt": "100019",

"nama": "LALA",

"kode_cabang": "259",

"kode_mitra": "ARD",

"alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA

15415"

},

"CustomerData": {

"biaya_adm": "0",

"total_amount": 123400,

"noRek": "151219780",

"nominal": "121400",

"time": "2017-05-17T10:34:35+07:00"

}

}

2.3.1.57. Internet Telkom– Inquiry Inquiry Internet Telkom

Description feature for inquiry Internet Telkom bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

253/457

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.providerId String Yes Default “SPEEDY”

data.billNo String Yes Billing number

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR413",   "data": {     "clientId": "IBOC",     "providerId": "SPEEDY",     "billNo": "02145456312",     "reffNum": "20171121145415054300"   } } 

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

254/457

amount * String Yes Customer’s Bill Amount

billNo * String Yes Billing number. Same value as

inquiry request

divreCode String Yes Divre Code

npwp String Yes Customer npwp

customerName * String Yes Customer name

paymentFlag String Yes Payment flag

datelCode String Yes Datel code

amountBill String Yes Number of billing

billAmount1 String Yes Billing Amount 1

billAmount2 String Yes Billing Amount 2

billAmount3 String Yes Billing Amount 3

billRef1 String Yes Billing Reference 1

billRef2 String Yes Billing Reference 2

billRef3 String Yes Billing Reference 3

biaya_adm * String Yes Admin fee

total_amount * String Yes Total Amount, including amount

and biaya_adm

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "amount": "65000",   "billNo": "02145456312",   "divreCode": "020201",   "npwp": "123456789012345",   "customerName": "JACO VAN NISTELROOY",   "paymentFlag": "02",   "datelCode": "0201",   "amountBill": "2",   "billAmount1": "",   "billAmount2": "30000",   "billAmount3": "35000",   "billRef1": "",   "billRef2": "209A238010",   "billRef3": "208A837050",   "biaya_adm": "2500",   "total_amount": 67500 }

Error

response code

Response

(error)

{

"error": true,

"errorNum": "05",

"message": "General error"

}

255/457

2.3.1.58. Internet Telkom– Payment Payment Internet Telkom

Description feature for Internet Telkom bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

256/457

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “SPEEDY”

data.amount String Yes Customer’s Bill Amount. Same value as

inquiry response

data.billNo String Yes Billing number. Same value as inquiry

response

data.divreCode String Yes divreCode. Same value as inquiry response

data.NPWP String Yes Customer npwp. Same value as inquiry

response

data.customerName String Yes Customer name. Same value as inquiry

response

data.paymentFlag String Yes Payment flag. Same value as inquiry

response

data.datelCode String Yes Datel code. Same value as inquiry response

data.amountBill String Yes Number of billing. Same value as inquiry

response

data.billAmount1 String Yes Billing Amount 1. Same value as inquiry

response

data.billAmount2 String Yes Billing Amount 2. Same value as inquiry

response

data.billAmount3 String Yes Billing Amount 3. Same value as inquiry

response

data.billRef1 String Yes Billing Reference 1. Same value as inquiry

response

data.billRef2 String Yes Billing Reference 2. Same value as inquiry

response

data.billRef3 String Yes Billing Reference 3. Same value as inquiry

257/457

response

data.biaya_adm String Yes Admin fee. Same value as inquiry response

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114763399455692",   "fiturId": "FTR414",   "data": {     "kode_mitra": "BNI",     "kode_loket": 50300,     "kode_cabang": "259",     "clientId": "IBOC",     "reffNum": "20171121145428056300",     "providerId": "SPEEDY",     "amount": "65000",     "billNo": "02145456312",     "divreCode": "020201",     "NPWP": "123456789012345",     "customerName": "JACO VAN NISTELROOY",     "paymentFlag": "02",     "amountBill": "2",     "datelCode": "0201",     "billAmount1": "",     "billAmount2": "30000",     "billAmount3": "35000",     "billRef1": "",     "billRef2": "209A238010",     "billRef3": "208A837050",     "biaya_adm": "2500",     "accountNum": 116724773,     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“21” is for Internet Telkom

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.amount * String Yes Customer’s Bill Amount. Same value as

Payment request

data.billNo * String Yes Billing number. Same value as

Payment request

258/457

data.financialJurnal * String Yes Transaction’s financial journal

data.journal * String Yes Transaction’s journal

data.reffNum String Yes Reference number. Same value as

Payment request

data.divreCode String Yes Divre Code. Same value as Payment

request

data.customerName * String Yes Customer name. Same value as

Payment request

data.billAmount1 String Yes Billing Amount 1. Same value as

Payment request

data.billAmount2 String Yes Billing Amount 2. Same value as

Payment request

data.billAmount3 String Yes Billing Amount 3. Same value as

Payment request

data.total_amount * String Yes Total Amount, including amount and

biaya_adm

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm * String Yes Admin fee

CustomerData.nominal String Yes Default null (not used)

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "21",   "status": "success",   "data": {     "error": false,     "amount": "65000",     "billNo": "02145456312",     "financialJournal": "571738",     "journal": "956081350   ",     "reffNum": "20171121145428056300",     "divreCode": "020201",     "customerName": "JACO VAN NISTELROOY",     "billAmount1": "",     "billAmount2": "30000",     "billAmount3": "35000",     "total_amount": 67500   },   "result": {     "kode_loket": "BNI25950300", 

259/457

    "kd_lkt": "50300",    "nama": "Firda",     "kode_cabang": "259",     "kode_mitra": "BNI",     "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"   },   "CustomerData": {     "biaya_adm": "2500",     "nominal": null,     "time": "2017‐11‐21T14:57:25+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "21",

"status": "success",

"data": {

"error": true,

"errorNum": "-2",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "BNI25950300",

"kd_lkt": "50300",

"nama": "Firda",

"kode_cabang": "259",

"kode_mitra": "BNI",

"alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"

},

"CustomerData": {

"biaya_adm": "2500",

"nominal": null,

"time": "2018-01-29T09:43:47+07:00"

}

}

2.3.1.59. Railink – Inquiry Inquiry Railink

Description feature for inquiry Railink bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

260/457

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.billingId String Yes Billing id

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR513",   "data": {     "reffNum": "20180423145801901166",     "billingId": "1234567890123"   } } 

Response

Definition

Field Data Mandatory Description

261/457

Type

error String Yes Transaction status :

false : success

true : failed

ket * String Yes Default “Tiket Railink”

amount String Yes Amount

billingId * String Yes Billing Id

regionCode String Yes Region Code

customerName * String Yes Customer name

ticketType * String Yes Ticket Type

billAmount * String Yes Bill Amount

fee * String Yes Admin Fee

totalAmount * String Yes Total Amount

RouteTerminalCode * String Yes Route Terminal Code

quota * String Yes Quota

lengthData String Yes Length Data

data String Yes Data

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Tiket Railink",   "amount": "14500",   "billingId": "79686269425512",   "regionCode": "0001",   "customerName": "ZASKIA",   "ticketType": "REGULAR R",   "billAmount": "1000000",   "fee": "450000",   "totalAmount": "1450000",   "RouteTerminalCode": "SDB ‐ BST",   "quota": "0",   "lengthData": "126",   "data": "PI0545019CN2479686269425512          NM06ZASKIATR09REGULAR RBA12000001000000AF12000000450000TA12000001450000RO09SDB ‐ BSTTQ010" }

Error

response code

Response

(error)

{

"error": true,

"errorNum": "12",

"message": "Invalid transaction"

}

2.3.1.60. Railink– Payment Payment Railink

262/457

Description feature for Railink bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

263/457

kode_cabang is “999”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.billingId String Yes BIllingId. Same value as inquiry response

data.regionCode String Yes Region Code. Same value as inquiry

response

data.customerName String Yes Customer name. Same value as inquiry

response

data.ticketType String Yes Ticket Type. Same value as inquiry response

data.billAmount String Yes Bill Amount. Same value as inquiry response

data.fee String Yes Admin Fee. Same value as inquiry response

data.totalAmount String Yes Total Amount. Same value as inquiry

response

data.RouteTerminalCode String Yes Route Terminal Code. Same value as inquiry

response

data.quota String Yes Quota. Same value as inquiry response

data.lengthData String Yes Length Data. Same value as inquiry response

data.data String Yes Data. Same value as inquiry response

data.amount String Yes Amount. Same value as inquiry response

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114763399455692",   "fiturId": "FTR514",   "data": {     "kode_mitra": "IPY",     "kode_cabang": "014",     "kode_loket": "00005",     "reffNum": "20180423150001901166",     "billingId": "79686269425512",     "regionCode": "0001",     "customerName": "ZASKIA", 

264/457

    "ticketType": "REGULAR R",    "billAmount": "1000000",     "fee": "450000",     "totalAmount": "1450000",     "RouteTerminalCode": "SDB ‐ BST",     "quota": "0",     "lengthData": "126",     "data": "PI0545019CN2479686269425512          NM06ZASKIATR09REGULAR RBA12000001000000AF12000000450000TA12000001450000RO09SDB ‐ BSTTQ010",     "amount": "14500",     "accountNum": 4447,     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“73” is for Internet Telkom

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket * String Yes Default “Tiket Railink”

data.journal * String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.amount String Yes Amount. Same value as

paymentrequest

data.billingId * String Yes BIllingId. Same value as

paymentrequest

data.regionCode String Yes Region Code. Same value as

paymentrequest

data.customerName * String Yes Customer name. Same value as

paymentrequest

data.ticketType * String Yes Ticket Type. Same value as

paymentrequest

data.billAmount * String Yes Bill Amount. Same value as

paymentrequest

data.fee * String Yes Admin Fee. Same value as

paymentrequest

data.totalAmount * String Yes Total Amount. Same value as

paymentrequest

data.RouteTerminalCode * String Yes Route Terminal Code. Same value as

paymentrequest

data.quota * String Yes Quota. Same value as paymentrequest

data.lengthData String Yes Length Data. Same value as

265/457

paymentrequest

data.data String Yes Data. Same value as paymentrequest

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.noRek String Yes Agent’s account number

CustomerData.biaya_adm String Yes Admin fee

CustomerData.nominal String Yes Customer’s bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "73",   "status": "success",   "data": {     "error": false,     "ket": "Tiket Railink",     "journal": "959270196   ",     "financialJournal": "288932",     "amount": "14500",     "billingId": "79686269425512",     "regionCode": "0001",     "customerName": "ZASKIA",     "ticketType": "REGULAR R",     "billAmount": "1000000",     "fee": "450000",     "totalAmount": "1450000",     "RouteTerminalCode": "SDB ‐ BST",     "quota": "0",     "lengthData": "126",     "data": "PI0545019CN2479686269425512          NM06ZASKIATR09REGULAR RBA12000001000000AF12000000450000TA12000001450000RO09SDB ‐ BSTTQ010",     "errorNum": ""   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   },   "CustomerData": {     "noRek": 4447,     "biaya_adm": "450000",     "nominal": "1000000", 

266/457

    "time": "2018‐04‐23T14:59:30+07:00"  } } 

Error response

code

Response

(error)

{

"trxType": "73",

"status": "success",

"data": {

"error": true,

"errorNum": "12",

"message": "Transaksi tidak dapat dilakukan. (RC 12)",

"ori_errorNum": "12",

"ori_message": "Invalid transaction"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"noRek": 4447,

"biaya_adm": "450000",

"nominal": "1000000",

"time": "2018-04-27T10:02:38+07:00"

} }

2.3.1.61. Insurance – Jiwasraya – Inquiry Inquiry Jiwasraya

Description feature for inquiry of Jiwasraya Insurance Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

267/457

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.billingId String Yes Customer number/policy number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR515",   "data": {     "billingId1": "00000044444"   } } 

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket * String Yes Payment type, default “Asuransi

Jiwasraya”

h_billingId * String Yes Customer number/policy number

h_billingName * String Yes Customer name

h_altBillingId String Yes Customer alt billing ID

h_billCode1 String Yes Bill code 1

h_billName1 * String Yes Bill name 1

h_billShortName1 String Yes Bill short name 1

h_billAmount1 * String Yes Bill amount 1

h_billCode2 String Yes Bill code 2

h_billName2 * String Yes Bill name 2

h_billShortName2 String Yes Bill short name 2

h_billAmount2 * String Yes Bill amount 2

h_responseCode String Yes Response code

268/457

h_message String Yes Message

c_fee * String Yes Admin fee

h_origTransDateTime String Yes Transaction time

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Asuransi Jiwasraya",   "h_billingId": "00000044444",   "h_billingName": "NOMAN ALI KHAN",   "h_altBillingId": "AC000044444",   "h_billCode1": "01",   "h_billName1": "APR‐2015",   "h_billShortName1": "PRM.062015",   "h_billAmount1": "1001",   "h_billCode2": "",   "h_billName2": "",   "h_billShortName2": "",   "h_billAmount2": "",   "h_responseCode": "00",   "h_message": "Sukses",   "c_fee": "0",   "h_origTransDateTime": "2018‐07‐05 15:50:37" } 

Error

response code

Response

(error) {     "error": true,     "errorNum": "9805",     "message": "(SOA) FAILED TO PARSE SOAP MESSAGE",     "ori_errorNum": "9805",     "ori_message": "(SOA) FAILED TO PARSE SOAP MESSAGE" }

2.3.1.62. Insurance – Jiwasraya – Payment Payment Jiwasraya

Description feature for payment of Jiwasraya Insurance Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

269/457

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.h_billingId String Yes Customer number/policy number. Same

value as inquiry response

data.h_altBillingId String Yes Customer alt billing ID. Same value as

inquiry response

data.h_billingOption String Yes Billing option. Same value as inquiry

response field “h_billCode1” for Single

Payment or “h_billCode2” for Total Payment

data.h_billingName String Yes Customer name. Same value as inquiry

response

270/457

data.h_billName String Yes Bill name. Same value as inquiry response

field “h_billName1” for Single Payment or

“h_billName2” for Total Payment

data.h_billShortName String Yes Bill short name. Same value as inquiry

response field “h_billShortName1” for Single

Payment or “h_billShortName2” for Total

Payment

data.h_billAmount String Yes Bill amount. Same value as inquiry response

field “h_billAmount1” for Single Payment or

“h_billAmount2” for Total Payment

data.c_fee String Yes Admin fee. Same value as inquiry response

data.h_totalAmount String Yes Total amount. Same value as inquiry

response field “h_billAmount1” for Single

Payment or “h_billAmount2” for Total

Payment

data.h_origTransDateTi

me

String Yes Transaction time. Same value as inquiry

response

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR516",   "data": {     "kode_mitra": "BNI",     "kode_cabang": "259",     "kode_loket": "50299",     "h_billingId": "00000044444",     "h_altBillingId": "AC000044444",     "h_billingOption": "01",     "h_billingName": "NOMAN ALI KHAN",     "h_billName": "APR‐2015",     "h_billShortName": "PRM.062015",     "h_billAmount": "1001",     "c_fee": "0",     "h_totalAmount": 1001,     "h_origTransDateTime": "2018‐03‐12 13:28:37",     "accountNum": 115208477,     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“72” is for Jiwasraya Insurance

271/457

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket * String Yes Payment type, default “Asuransi

Jiwasraya”

data.billingId * String Yes Customer number/policy number.

Same value as payment request

data.altBillingId * String Yes Customer alt billing ID. Same value as

payment request

data.billingName * String Yes Customer name. Same value as

payment request

data.billingOption * Billing option. Same value as payment

request

data.billName * String Yes Bill name. Same value as payment

request

data.billShortName * String Yes Bill short name. Same value as

payment request

data.h_billAmount * String Yes Bill amount. Same value as payment

request

data.c_fee * String Yes Admin fee

data.h_totalAmount * String Yes Total amount. Same value as

payment request

data.origTransDateTime String Yes Transaction time. Same value as

payment request

data.journal * String Yes Transaction financial journal

data.reffNum * String Yes Refference number

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Admin fee

CustomerData.noRek String Yes Agent’s account number

CustomerData.nominal String Yes Nominal bill

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "72",   "status": "success",   "data": { 

272/457

    "error": false,    "ket": "Asuransi Jiwasraya",     "billingId": "00000044444",     "altBillingId": "AC000044444",     "billingName": "NOMAN ALI KHAN",     "billingOption": "01",     "billName": "APR‐2015",     "billShortName": "PRM.062015",     "h_billAmount": "1001",     "c_fee": "0",     "h_totalAmount": "1001",     "origTransDateTime": "2017‐10‐18 11:40:48",     "journal": "535830",     "reffNum": "2018031213262804548550299",     "errorNum": ""   },   "result": {     "kode_loket": "BNI25950299",     "kd_lkt": "50299",     "nama": "Firda A'gen",     "kode_cabang": "259",     "kode_mitra": "BNI",     "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI   Jakarta 12910"   },   "CustomerData": {     "biaya_adm": "0",     "noRek": "4447",     "nominal": "751000",     "time": "2017‐10‐18T11:39:59+07:00"   } } 

Error response

code

Response

(error) {     "trxType": "72",     "status": "success",     "data": {         "error": true,         "errorNum": "0155",         "message": "Transaksi tidak dapat dilanjutkan. Silakan coba beberapa saat lagi",         "reffNum": "2018070517030008480050299",         "ori_errorNum": "0155",         "ori_message": "(ICONS) HUBUNGI COMPUTER CENTER     INVM   XEND"     },     "result": {         "kode_loket": "BNI25950299",         "kd_lkt": "50299",         "nama": "Firda A'gen",         "kode_cabang": "259",         "kode_mitra": "BNI",         "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910" 

273/457

    },     "CustomerData": {         "noRek": 115208477,         "nominal": "1001",         "time": "2018‐07‐05T17:03:01+07:00"     } } 

2.3.1.63. TV Subscription – Transvision - Inquiry Inquiry TV Subscription Transvision

Description feature for inquiry of Transvision bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

274/457

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of MITRA

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “TRANSVISION”

data.customerId String Yes Customer number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR519",   "data": {     "clientId": "IBOC",     "reffNum": "201710171005380002113",     "providerId": "TRANSVISION",     "customerId": "11111111111"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket * String Yes Transaction description

amount * String Yes Total of amount payment

customerId * String Yes Customer number

customNum String Yes Service period

npwp String Yes Customer NPWP

customerName * String Yes Customer Name

telkomFlag String Yes Transaction flag, default “02”

numOfBill String Yes Number of billing

billAmount String Yes Amount payment

kandatelNum String Yes Transaction region code

billReffNum String Yes Billing refference number

biaya_adm String Yes Transaction admin fee

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "TV BerlanggananTransvision",   "amount": "100000", 

275/457

  "customerId": "00211",  "customNum": "020201",   "npwp": "123456789012345",   "customerName": "MOJACKO VAN GALLON",   "telkomFlag": "02",   "numOfBill": "0",   "billAmount": "0",   "kandatelNum": "0201",   "billReffNum": "",   "biaya_adm": "2500" } 

Error response

code

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Issuer down"

}

2.3.1.64. TV Subscription – Transvision - Payment PaymentTV Subscription Transvision

Description feature for Transvision bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

276/457

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of

MITRA

Example :

reffNum =20170607110019123450100021

data.providerId String Yes Default “TRANSVISION”

data.amount String Yes Total of amount payment.Same value as

Inquiry response

data.customerId String Yes Customer number. Same value as Inquiry

response

277/457

data.customNum String Yes Transaction flag.Same value as Inquiry

response

data.npwp String Yes Customer NPWP. Same value as Inquiry

response

data.customerName String Yes Customer Name. Same value as Inquiry

response

data.telkomFlag String Yes Transaction flag. Same value as Inquiry

response

data.numOfBill String Yes Number of billing. Same value as Inquiry

response

data.billAmount String Yes Amount payment. Same value as Inquiry

response

data.accountNum String Yes BNI Agent account number

data.kandatelNum String Yes Transaction region code

data.billReffNum String Yes Billing refference number

data.biaya_adm String Yes Transaction admin fee

data.total_amout String Yes Total billing. Sum of billAmount and

biaya_adm.

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR520",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "reffNum": "20171027104905000005",     "providerId": "TRANSVISION",     "amount": "50000",     "customerId": "00211",     "customNum": "141401",     "npwp": "123456789012345",     "customerName": "JAYANTHI PERGI KE SUPERMARKETO",     "telkomFlag": "02",     "numOfBill": "1",     "billAmount": "50000",     "accountNum": 115208477,     "kandatelNum": "1401",     "billReffNum": "208A837050",     "biaya_adm": "2500",     "total_amount": 52500,     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data Mandatory Description

278/457

Type

trxType String Yes Transaction type.

“40” is for Indovision payment

status String Yes Connection status with

3rdparties.

data.error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

data.ket String Yes Transaction description

data.financialJournal * String Yes Transaction financial journal

data.journal * String Yes Transaction journal

data.customerId * String Yes Customer number.Same value

as Payment request

data.customerName * String Yes Customer name.Same value as

Payment request

data.reffNum String Yes Transaction reference

number.Same value as Payment

request

data.billReffNum String Yes Billing refference number

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.noRek String Yes Agent’s account number

CustomerData.biaya_adm String Yes Admin fee

CustomerData.nominal String Yes Customer’s bill amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "44",   "status": "success",   "data": {     "error": false,     "ket": "TV Payment Transvision",     "financialJournal": "540862",     "journal": "947040142   ",     "customerId": "00211",     "customerName": "JAYANTHI PERGI KE SUPERMARKETO",     "reffNum": "20171027104905000005",     "billReffNum": "208A837050"   },   "result": {     "kode_loket": "BNI22550309", 

279/457

    "kd_lkt": "50309",    "nama": "BNI BANSOS",     "kode_cabang": "225",     "kode_mitra": "BNI",     "alamat": "3/4 Jatikalang Sawahan Kab Sidoarjo JAWA TIMUR 60252"   },   "CustomerData": {     "noRek": 115208477,     "biaya_adm": "2500",     "total_amount": 52500,     "time": "2018‐08‐01T14:58:32+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "44",

"status": "success",

"data": {

"error": true,

"errorNum": "01",

"message": "Transaksi tidak dapat dilakukan. (RC 01)",

"reffNum": "20180801100538000344",

"amount": "275000",

"total_amount": "275000",

"ori_errorNum": "01",

"ori_message": "General failure"

},

"result": {

"kode_loket": "BNI22550309",

"kd_lkt": "50309",

"nama": "BNI BANSOS",

"kode_cabang": "225",

"kode_mitra": "BNI",

"alamat": "3/4 Jatikalang Sawahan Kab Sidoarjo JAWA TIMUR 60252"

},

"CustomerData": {

"noRek": 115208477,

"biaya_adm": "2500",

"total_amount": 52500,

"time": "2018-08-01T14:58:32+07:00"

}

}

2.3.1.65. Tax - Inquiry Tax Inquiry

280/457

Description feature for Tax Inquiry

There are 2 option of Tax :

1. PBB

2. Local Tax (Pajak Daerah)

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

281/457

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter of MITRA

Example :

reffNum =20170607110019123450100021

data.daerah String Yes Tax Regional for the choosen Tax payment type.

List refer to Appendix 2.5.11 column Daerah

data.providerId String Yes Provider Id for choosen Tax payment type. List

refer to Appendix 2.5.11 column ProviderId

data.billerCode String Yes Biller code for the choosen Tax payment type

and the regional as well. List refer to Appendix

2.5.11 column BillerCode

data.nop String Yes For :

PBB : Tax object number (Nomor Object

Pajak)

Local Tax : Payment code (Kode Bayar)

data.tahunPajak String Yes For :

PBB : Tax year (Tahun Pajak)

Local Tax : Default “”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {

"typereq": "trans",

"dealerId": "2114534465611173",

"fiturId": "FTR517",

"data": {

"reffNum": "20181101092846051299",

"nop": "357800000000100032",

"tahunPajak": "2018",

"providerId": "PBB",

"daerah": "",

"billerCode": ""

}

}

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

ket * String Yes Transaction description

reffNum * String Yes Transaction reference number.

282/457

Same value as Inquiry request

daerah String Yes Tax Regional for the choosen Tax

payment type.

Same value as Inquiry request

providerId String Yes Provider Id for choosen Tax

payment type.

Same value as Inquiry request

billerCode String Yes Biller code for the choosen Tax

payment type and the regional as

well.

Same value as Inquiry request

amount * String Yes Amount payment

nop * String Yes Tax object number (Nomor Object

Pajak) or Payment code (Kode

Bayar).

Same value as Inquiry request

namaWp * String Yes Customer name

tahunPajak * String Yes Tax year.

Same value as Inquiry request

jumlahTagihan String Yes Amount of bill.

Value available only for Local Tax

kecamatan * String Yes Customer sub-district

alamatWp * String Yes Customer address

fee * String Yes Transaction admin fee

namaPBB * String Yes Tax name.

Value available only for PBB

total_amount * String Yes Total of Amount payment

jenisPajakAtauKodya * String Yes Tax type.

Value available only for Local Tax

kodeRekeningPokok String Yes Code of basic account (Kode

Rekening Pokok).

Value available only for Local Tax

kodeRekeningBunga String Yes Code of interest account (Kode

Rekening Bunga).

Value available only for Local Tax

kodeRekeningDenda String Yes Code of fine account (Kode

Rekening Denda).

Value available only for Local Tax

jumlahPokok String Yes Total cost of goods.

Value available only for Local Tax

jumlahDenda * String Yes Fine amount.

Value available only for Local Tax

kodeRekeningSanksi String Yes Code of penalty account (Kode

Rekening Sanksi).

283/457

Value available only for Local Tax

jumlahSanksi String Yes Penalty amount.

Value available only for Local Tax

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "reffNum": "20181101092846051299",   "providerId": "PBB",   "billerCode": "",   "daerah": "",   "amount": "50000",   "nop": "357800000000100032",   "namaWp": "ROBERT BARATHEON",   "tahunPajak": "2018",   "jumlahTagihan": "115000",   "kecamatan": "HALIM P.K.",   "alamatWp": "JL. MAPHILINDO",   "fee": "3000",   "namaPBB": "PBB Surabaya",   "total_amount": 53000,   "jenisPajakAtauKodya": "",   "kodeRekeningPokok": "",   "kodeRekeningBunga": "",   "kodeRekeningDenda": "",   "kodeRekeningSanksi": "",   "jumlahPokok": "",   "jumlahDenda": "",   "jumlahSanksi": "",   "ket": "Pembayaran PBB" } 

Error response

code

Response

(error)

{

"error": true,

"errorNum": "91",

"message": "Transaksi tidak dapat dilakukan. Tidak ada balasan dari database provider/biller. (RC

91)",

"ori_errorNum": "91",

"ori_message": "Issuer down"

}

2.3.1.66. Tax - Payment Tax Payment

Description feature for Tax Payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

284/457

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after

MITRA registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

285/457

data.reffNum String Yes Reference number which is combination

of [transaction date] . [random number]

. [agen counter code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for counter

of MITRA

Example :

reffNum

=20170607110019123450100021

data.providerId String Yes Provider Id for choosen Tax payment

type.

Same value as Inquiry response

data.amount String Yes Amount payment.

Same value as Inquiry response

data.nop String Yes Tax object number (Nomor Object Pajak)

or Payment code (Kode Bayar).

Same value as Inquiry response

data.namaWp String Yes Customer name.

Same value as Inquiry response

data.tahunPajak String Yes Tax year.

Same value as Inquiry response

data.jumlahTagihan String Yes Amount of bill.

Same value as Inquiry response

data.kecamatan String Yes Customer sub-district.

Same value as Inquiry response

data.alamatWp String Yes Customer address.

Same value as Inquiry response

data.fee String Yes Transaction admin fee.

Same value as Inquiry response

data.namaPBB String Yes Tax name.

Same value as Inquiry response

data.total_amount String Yes Total of Amount payment.

Same value as Inquiry response

data.jenisPajakAtauKodya String Yes Tax type.

Same value as Inquiry response

data.kodeRekeningPokok String Yes Code of basic account (Kode Rekening

Pokok).

286/457

Same value as Inquiry response

data.kodeRekeningBunga String Yes Code of interest account (Kode Rekening

Bunga).

Same value as Inquiry response

data.kodeRekeningDenda String Yes Code of fine account (Kode Rekening

Denda).

Same value as Inquiry response

data.daerah String Yes Tax Regional for the choosen Tax

payment type.

Same value as Inquiry response

data.ket String Yes Transaction description.

Same value as Inquiry response

data.jumlahPokok String Yes Total cost of goods.

Same value as Inquiry response

data.jumlahDenda String Yes Fine amount.

Same value as Inquiry response

data.accountNum String Yes Agent’s account number

data.kodeRekeningSanksi String Yes Code of penalty account (Kode Rekening

Sanksi).

Same value as Inquiry response

data.jumlahSanksi String Yes Penalty amount.

Same value as Inquiry response

data.billerCode String Yes Biller code for the choosen Tax payment

type and the regional as well.

Same value as Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR518",   "data": {     "kode_mitra": "BNI",     "kode_cabang": "259",     "kode_loket": "50299",     "reffNum": "20181101092851150299",     "amount": "50000",     "nop": "357800000000100032",     "tahunPajak": "2018",     "accountNum": 116724773,     "namaPBB": "PBB Surabaya",     "kecamatan": "HALIM P.K.",     "providerId": "PBB",     "fee": "3000",     "pin_transaksi": "12345",     "kodeRekeningPokok": "",     "kodeRekeningBunga": "",     "kodeRekeningDenda": "", 

287/457

    "daerah": "",    "ket": "Pembayaran PBB",     "alamatWp": "JL. MAPHILINDO",     "namaWp": "ROBERT BARATHEON",     "jenisPajakAtauKodya": "",     "jumlahPokok": "",     "jumlahTagihan": "115000",     "jumlahDenda": "",     "kodeRekeningSanksi": "",     "jumlahSanksi": "",     "billerCode": "",     "total_amount": 53000   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction type.

“71” is for Tax payment

status String Yes Connection status with

3rdparties.

data.error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

data.clientId String Yes Default “IBOC”.

Used for internal BNI purpose

data.reffNum String Yes Reference number.

Same value as Payment request

data.providerId * String Yes Provider Id for choosen Tax

payment type.

Same value as Payment request

data.ket * String Yes Transaction description

data.financialJournal * String Yes Transaction financial journal

data.journal * String Yes Transaction journal

data.amount * String Yes Amount payment.

Same value as Payment request

data.nop * String Yes Tax object number (Nomor

Object Pajak) or Payment code

(Kode Bayar).

Same value as Payment request

data.namaWp * String Yes Customer name.

Same value as Payment request

data.tahunPajak * String Yes Tax year.

Same value as Payment request

data.jumlahTagihan String Yes Amount of bill.

Same value as Payment request

288/457

data.kecamatan * String Yes Customer sub-district.

Same value as Payment request

data.alamatWp * String Yes Customer address.

Same value as Payment request

data.fee * String Yes Transaction admin fee.

Same value as Payment request

data.namaPBB * String Yes Tax name.

Same value as Payment request

data.total_amount * String Yes Total of Amount payment.

Same value as Payment request

data.jenisPajakAtauKodya * String Yes Tax type.

Same value as Payment request

data.kodeRekeningPokok String Yes Code of basic account (Kode

Rekening Pokok).

Same value as Payment request

data.kodeRekeningBunga String Yes Code of interest account (Kode

Rekening Bunga).

Same value as Payment request

data.kodeRekeningDenda String Yes Code of fine account (Kode

Rekening Denda).

Same value as Payment request

data.jumlahPokok String Yes Total cost of goods.

Same value as Payment request

data.jumlahDenda * String Yes Fine amount.

Same value as Payment request

data.ntpd * String Yes Tax transaction number (NTPD)

data.kodeRekeningSanksi String Yes Code of penalty account (Kode

Rekening Sanksi).

Same value as Payment request

data.jumlahSanksi String Yes Penalty amount.

Same value as Payment request

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "71",   "status": "success",   "data": {     "error": false, 

289/457

    "clientId": "IBOC",    "reffNum": "20181101092851150299",     "providerId": "PBB",     "journal": "936471813   ",     "financialJournal": "561579",     "amount": "50000",     "nop": "357800000000100032",     "namaWp": "ROBERT BARATHEON",     "tahunPajak": "2018",     "jumlahTagihan": "115000",     "ntpd": "19280717121‐13015",     "kecamatan": "HALIM P.K.",     "alamatWp": "JL. MAPHILINDO",     "fee": "3000",     "namaPBB": "PBB Surabaya",     "total_amount": 53000,     "jenisPajakAtauKodya": "",     "kodeRekeningPokok": "",     "kodeRekeningBunga": "",     "kodeRekeningDenda": "",     "kodeRekeningSanksi": "",     "jumlahPokok": "",     "jumlahDenda": "",     "jumlahSanksi": "",     "ket": "Pembayaran PBB"   },   "result": {     "kode_loket": "BNI25950299",     "kd_lkt": "50299",     "nama": "Firda A'gen ubah",     "kode_cabang": "259",     "kode_mitra": "BNI",     "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta "   },   "CustomerData": {     "time": "2018‐11‐01T09:36:52+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "71",

"status": "success",

"data": {

"error": true,

"errorNum": "91",

"message": "Transaksi tidak dapat dilakukan. Tidak ada balasan dari database

provider/biller. (RC 91)",

"ori_errorNum": "91",

"ori_message": "Issuer down"

},

290/457

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"time": "2018-08-10T14:24:22+07:00"

}

}

2.3.2. PURCHASE

2.3.2.1. PLN Prepaid – Inquiry Inquiry PLN Prepaid

Description feature for inquiry of PLN Prepaid Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(userne":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

291/457

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.systemId String Yes Default “PREPAID”

data.channelId String Yes Default “NEWIBANK”

data.feeId String Yes Default “00545100”

data.serviceId String Yes Default “PLNPAYMENT”

data.clientId String Yes Default “NEWIBANK”

data.amount String Yes Default “0”

data.customer String Yes Customer ID/customer meter number

data.identifiedBy String Yes Customer field identification :

customerId : customer ID

meterNumber : meter number

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

292/457

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR490",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "systemId": "PREPAID",     "channelId": "NEWIBANK",     "feeId": "00545100",     "serviceId": "PLNPAYMENT",     "clientId": "NEWIBANK",     "amount": "3000",     "customer": "1234567890",     "identifiedBy": "customerId",     "accountNum": "115258134",     "reffNum": "201706071100190100021"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

reffNum String Yes Transaction’s refference number.

Same value as Inquiry request

clientId String Yes Default “NEWIBANK”

serviceId String Yes Default “PLNPAYMENT”

journal String Yes Bill’s journal

amount String Yes Bill’s amount

productIndicator String Yes Product indicator

idBillingPln String Yes ID billing PLN

transactionType String Yes Transaction’s type

daya * String Yes Electric power

servicePhone String Yes Service phone

custName * String Yes Customer’s name

maxKwh String Yes Maximum electric energy

telkomFlag String Yes Telkom flag

tokenUnsoldTotal String Yes Total of token unsold

regionCode String Yes Region code

distributionCode String Yes Distribution code

293/457

serviceUnit String Yes Service unit

golongan * String Yes Group

tokenUnsold1 String Yes Token unsold 1

tokenUnsold2 String Yes Token unsold 2

buyingFlag String Yes Buying flag

plnReffNum String Yes PLN refference number

minAmount String Yes Minimum amount

maxAmount String Yes Maximum amount

adminBank * String Yes Bank’s administration fee

switcherReffNumber String Yes Switcher refference number

idBillingPln2 String Yes ID billing PLN 2

accountNum String Yes Agent’s account number

responseCode String Yes Response code

customerId String Yes Customer ID

meterNumber * String Yes Meter number

response String Yes SOAP response

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "PLN prepaid",   "reffNum": "201706071100190100021",   "clientId": "NEWIBANK",   "serviceId": "PLNPAYMENT",   "journal": "919290116   ",   "amount": "3000",   "productIndicator": "2111",   "idBillingPln": "1234567890",   "transactionType": "P",   "daya": "2200",   "servicePhone": "021‐12345678901",   "custName": "ARES THE GREEK GOD OF WAR",   "maxKwh": "30000",   "telkomFlag": "02",   "tokenUnsoldTotal": "2",   "regionCode": "0000",   "distributionCode": "53",   "serviceUnit": "53000",   "golongan": "  B1",   "tokenUnsold1": "0000000000000000235000",   "tokenUnsold2": "0000000000000000000000",   "buyingFlag": "",   "plnReffNum": "1294AEB2B63F49BD8CDCFE9682A01828",   "minAmount": "3000",   "maxAmount": "500000000",   "adminBank": "3000",   "switcherReffNumber": "1266613870060863605",   "idBillingPln2": "99999999999",   "accountNum": "115258134", 

294/457

  "responseCode": "00",  "customerId": "1234567890",   "meterNumber": "99999999999",   "response": "<productIndicator>2111</productIndicator><idBillingPln>1234567890</idBillingPln><transactionType>P</transactionType><daya>2200</daya><servicePhone>021‐12345678901</servicePhone><custName>ARES THE GREEK GOD OF WAR</custName><maxKwh>30000</maxKwh><telkomFlag>02</telkomFlag><tokenUnsoldTotal>2</tokenUnsoldTotal><regionCode>0000</regionCode><distributionCode>53</distributionCode><serviceUnit>53000</serviceUnit><golongan>  B1</golongan><tokenUnsold1>0000000000000000235000</tokenUnsold1><tokenUnsold2>0000000000000000000000</tokenUnsold2><buyingFlag/><flagBillAcc>1</flagBillAcc><plnReffNum>1294AEB2B63F49BD8CDCFE9682A01828</plnReffNum><minAmount>3000</minAmount><maxAmount>500000000</maxAmount><adminBank>3000</adminBank><switcherReffNumber>1266613870060863605</switcherReffNumber><idBillingPln2>99999999999</idBillingPln2><accountNum>115258134</accountNum><responseCode>00</responseCode><customerId>1234567890</customerId><meterNumber>99999999999</meterNumber>" }

Error response

code

Response

(error)

{

"error": true,

"errorNum": "9990",

"message": "Error undefined"

2.3.2.2. PLN Prepaid – Payment Payment PLN Prepaid

Description feature for PLN Prepaid bill payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

295/457

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.systemId String Yes Default “PREPAID”

data.channelId String Yes Default “NEWIBANK”

data.amount String Yes Value of a chosen nominal attribute (*list

below)

data.feeId String Yes Default “00545300”

data.clientId String Yes Default “NEWIBANK”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

296/457

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.serviceId String Yes Service ID

data.response String Yes SOAP response. Same value as Inquiry

response

data.meterNumber String Yes Meter number

data.customer String Yes Customer ID

data.identifiedBy String Yes Customer field identification :

customerId : customer ID

meterNumber : meter number

Notes : 1. List of amount: '20000', '50000', '100000', '200000', '500000', '1000000', '5000000', '10000000',

'50000000' 2. Pay attention of tokenUnsoldTotal from inquiry response. If the value is greater than zero, take

tokenUnsold values and insert them at the beginning of amount list.

Example: tokenUnsoldTotal=2, then take the values from tokenUnsold1 and tokenUnsold2

tokenUnsold1= 5000, tokenUnsold2 = 10000

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR491",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "systemId": "PREPAID",     "channelId": "NEWIBANK",     "amount": "50000",     "feeId": "00545300",     "clientId": "NEWIBANK",     "reffNum": "201706071121080100022",     "serviceId": "PLNPAYMENT",     "response": "<productIndicator>2111</productIndicator><idBillingPln>1234567890</idBillingPln><transactionType>P</transactionType><daya>2200</daya><servicePhone>021‐12345678901</servicePhone><custName>ARES THE GREEK GOD OF WAR</custName><maxKwh>30000</maxKwh><telkomFlag>02</telkomFlag><tokenUnsoldTotal>2</tokenUnsoldTotal><regionCode>0000</regionCode><distributionCode>53</distributionCode><service

297/457

Unit>53000</serviceUnit><golongan>  B1</golongan><tokenUnsold1>0000000000000000235000</tokenUnsold1><tokenUnsold2>0000000000000000000000</tokenUnsold2><buyingFlag/><flagBillAcc>1</flagBillAcc><plnReffNum>1294AEB2B63F49BD8CDCFE9682A01828</plnReffNum><minAmount>3000</minAmount><maxAmount>500000000</maxAmount><adminBank>3000</adminBank><switcherReffNumber>1266613870060863605</switcherReffNumber><idBillingPln2>99999999999</idBillingPln2><accountNum>115258134</accountNum><responseCode>00</responseCode><customerId>1234567890</customerId><meterNumber>99999999999</meterNumber>",     "meterNumber": "99999999999",     "customer": "1234567890",     "identifiedBy": "customerId",     "pin_transaksi": "12345",     "accountNum": 115258134   } }

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“92” is for PLN Prepaid

payment

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

data.clientId String Yes Default “NEWIBANK”

data.reffNum String Yes Transaction’s refference

number. Same value as

Payment request

data.amount * String Yes Bill’s amount

data.responseCode String Yes Response code

data.idBillingPln String Yes ID Billing PLN

data.daya * String Yes Electric power

data.custName * String Yes Customer’s name

data.golongan * String Yes Group

data.vendingReceipt String Yes Vending receipt

data.powerPurchase * String Yes Power purchase

data.purchaseKwhDigit String Yes Purchase kWh digit

data.purchaseKwhUnit String Yes Purchase kWh unit

data.plnReffNum String Yes PLN refference number

data.stampDuty * String Yes Stamp duty

data.adminBank * String Yes Bank’s administration fee

data.custPayable * String Yes Customer’s payable

data.switcherReffNumber * String Yes Switcher refference

number

data.valueAddedTax * String Yes Value added tax

298/457

data.tokenNumber * String Yes Token number

data.publicLightingTax * String Yes Public lighting tax

data.information1 * String Yes Information 1

data.switcherCode String Yes Switcher code

data.information2 String Yes Information 2

data.customerId * String Yes Customer ID

data.meterNumber * String Yes Meter number

data.kwhAmount * String Yes kWh amount

data.customerId2 String Yes Customer ID 2

data.accountNum String Yes Account number

data.financialJournal String Yes Financial journal

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm String Yes Administration fee

CustomerData.nominal * String Yes Bill’s nominal

CustomerData.time String Yes Transaction’s time

CustomerData.accountNum String Yes Agent’s account number

Success

response code

HTTP 200

Response

(Success) {   "trxType": "92",   "status": "success",   "data": {     "error": false,     "ket": "PLN Prepaid",     "clientId": "NEWIBANK",     "reffNum": "201706071121080100022",     "amount": "50000",     "responseCode": "00",     "idBillingPln": "1234567890",     "daya": "2200",     "custName": "ARES THE GREEK GOD OF WAR",     "golongan": "B1",     "vendingReceipt": "62098886",     "powerPurchase": "000001584000",     "purchaseKwhDigit": "2",     "purchaseKwhUnit": "0000003168",     "plnReffNum": "1294AEB2B63F49BD8CDCFE9682A01828",     "stampDuty": "0000000000",     "adminBank": "3000",     "custPayable": "0000215999",     "switcherReffNumber": "1266613870060863605",     "valueAddedTax": "0000000000",     "tokenNumber": "6287 0689 4652 5354 9586", 

299/457

    "publicLightingTax": "0000000000",    "information1": "Rincian tagihan dapat diakses di www.pln.co.id atau PLN terdekat. Happy New",     "switcherCode": "01",     "information2": " Year",     "customerId": "1234567890",     "meterNumber": "99999999999",     "kwhAmount": "31.7",     "customerId2": "99999999999",     "accountNum": "115258134",     "financialJournal": "336964"   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "biaya_adm": null,     "nominal": "50000",     "time": "2017‐06‐07T11:26:07+07:00",     "accountNum": "115258134"   } } 

Error response

code

Response

(error)

{

"trxType": "92",

"status": "success",

"data": {

"error": true,

"errorNum": "9990",

"message": "Error undefined",

"ori_errorNum": "9990",

"ori_message": "Duplicate Refference Number"

},

"result": {

"kode_loket": "ARD259100019",

"kd_lkt": "100019",

"nama": "LALA",

"kode_cabang": "259",

"kode_mitra": "ARD",

"alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"

},

"CustomerData": {

300/457

"biaya_adm": null,

"nominal": "50000",

"time": "2018-01-22T16:05:26+07:00"

}

2.3.2.3. PLN Manual Advice Inquiry PLN Manual Advice

Description feature for inquiry of PLN Manual Advice Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authenticatio

n

Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

301/457

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “NEWIBANK”

data.serviceId String Yes Default “PLNPAYMENT”

data.amount String Yes Default “0”

data.customer String Yes Customer ID/customer meter number

data.identifiedBy String Yes Customer field identification :

customerId : customer ID

meterNumber : meter number

data.switcherReffNum String Yes Switcher refference number

data.accountNum String Yes Agent’s account number

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR492",   "data":{   "kode_mitra":"ARD",   "kode_loket":"100019",   "kode_cabang":"259",   "clientId":"NEWIBANK", 

302/457

  "serviceId":"PLNPAYMENT",  "amount":"0",   "customer":"1234567890",   "identifiedBy":"customerId",   "switcherReffNum":"201706071121080100022",   "accountNum":"0000000000",   "reffNum":"201706071141480100020",   "pin_transaksi":"12345"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

reffNum String Yes Transaction’s refference number.

Same value as Inquiry request

clientId String Yes Default “NEWIBANK”

responseCode String Yes Response code

amount String Yes Bill’s amount

daya String Yes Electric power

custName String Yes Customer’s name

golongan String Yes Group

vendingReceipt String Yes Vending receipt

powerPurchase String Yes Power purchase

stampDuty String Yes Stamp duty

adminBank String Yes Bank’s administration fee

switcherReffNumber String Yes Switcher refference number

valueAddedTax String Yes Value added tax

tokenNumber String Yes Token number

publicLightingTax String Yes Public lighting tax

information1 String Yes Information 1

custPayable String Yes Customer payable

information2 String Yes Information 2

switcherCode String Yes Switcher code

customerId String Yes Customer ID

meterNumber String Yes Meter number

accountNum String Yes Agent’s account number

kwhAmount String Yes kWh amount

customerId2 String Yes Customer ID 2

Success

response code

HTTP 200

Response { 

303/457

(Success)   "error": false,  "ket": "PLN prepaid",   "reffNum": "201706071141480100020",   "clientId": "NEWIBANK",   "responseCode": "00",   "amount": "900000",   "daya": "7700",   "custName": "KRISTOPHORUS SENO W.",   "golongan": "R3",   "vendingReceipt": "05814267",   "powerPurchase": "000075126050",   "stampDuty": "0000300000",   "adminBank": "3000",   "switcherReffNumber": "3123807529114503533",   "valueAddedTax": "0007512605",   "tokenNumber": "5831 4903 4419 8564 0131",   "publicLightingTax": "0006761345",   "information1": "RINCIAN TAGIHAN DAPAT DIAKSES DI WWW.P",   "custPayable": "0000000000",   "information2": "",   "switcherCode": "01",   "customerId": "1234567890   20",   "meterNumber": "04185662758",   "accountNum": "0000000000",   "kwhAmount": "562.4",   "customerId2": "04185662758" }

Error

response code

Response

(error)

{

"error": true,

"errorNum": "9990",

"message": "Error undefined"

2.3.2.4. Top Up GSM Top Up GSM

Description feature for Top Up GSM (all denom) Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

304/457

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.clientId String Yes Default “IBOC”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

305/457

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.msisdn String Yes Mobile Phone Number

data.providerId String Yes Note Provider id:

OPERATOR FIELD VALUE

Providerld

TELKOMSEL AS

INDOSAT INDOSAT_PREPAID

SMARTFREN FREN

TRI THREE

XL/AXIS XL_REG

data.amount String Yes Nominal top up(denom).

List of Denom refer to Appendix 2.5.4

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR471",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "clientId": "IBOC",     "reffNum": "201707311504180100023",     "msisdn": "0856123456789",     "providerId": "INDOSAT_PREPAID",     "amount": "10000",     "accountNum": "116724773",     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“10” is for Top Up GSM

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Transaction description

306/457

data.journal * String Yes Transaction’s journal

data.msisdn * String Yes Mobile Phone number. Same value as

payment request

data.productCode String Yes Product Code

data.accountNumber String Yes Agent’s account number. Same value as

request

data.amount * String Yes Operator amount

data.financialJurnal * String Yes Transaction’s financial journal

data.c_fee String Yes Admin fee

data.reffNum * String Yes Transaction reference number

data.status * String Yes Transaction status.

SUKSES : success transaction

TRANSAKSI SEDANG DIPROSES :

pending transaction

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm * String Yes Admin fee

CustomerData.noHP String Yes Mobile Phone Number.

CustomerData.nominal * String Yes Nominal top up (denom)

CustomerData.time * String Yes Transaction’s time

Notes :

Selling price(nominal paid by the customer) = data.amount + CustomerData.biaya_adm

Success

response code

HTTP 200

Response

(Success) {   "trxType": "10",   "status": "success",   "data": {     "error": false,     "ket": "INDOSAT_PREPAID",     "journal": "847890",     "msisdn": "0856123456789",     "productCode": "BNI_IN10",     "accountNumber": "116724773",     "amount": "10600",     "financialJournal": "453283",     "c_fee": "400",     "reffNum": "1234567890", 

307/457

    "status": "SUKSES",    "errorNum": ""   },   "result": {     "kode_loket": "SKD259100023",     "kd_lkt": "100023",     "nama": "Teguh Wahyu Santoso",     "kode_cabang": "259",     "kode_mitra": "SKD",     "alamat": "RT 4 Jumput Rejo Buduran Sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "biaya_adm": "400",     "noHP": "0856123456789",     "nominal": "10000",     "time": "2017‐08‐09T15:24:30+07:00"   } } 

Error

response code

Response

(error) {   "data": {     "error": true,     "message": "TRANSAKSI GAGAL : Pin transaksi salah",     "errorNum": "‐2"   },   "result": {     "kode_loket": "SKD259100023",     "kd_lkt": "100023",     "nama": "Teguh Wahyu Santoso",     "kode_cabang": "259",     "kode_mitra": "SKD",     "alamat": "RT 4 Jumput Rejo Buduran Sidoarjo Jawa Timur 60252"   },   "CustomerData": {     "biaya_adm": "400",     "noHP": "0856123456789",     "nominal": "10000",     "time": "2017‐08‐09T15:24:30+07:00"   } } 

2.3.2.5. Top Up Go Pay– Inquiry Inquiry Top Up Go Pay

Description feature for Top Up Go Pay Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

308/457

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered in

BNI H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.MCP_ID String Yes Mapping of MCP_ID base on service type :

Type of Service Field Value

MCP_ID

Top Up GO-JEK

Driver

GOPAY_DRIVER

309/457

Top Up GO-PAY

Customer

GOPAY_CUSTOMER

Top Up GO-PAY

Merchant

GOPAY_MERCHANT

data.amount String Yes Nominal top up

data.billingId String Yes Customer number/phone number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR497",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "MCP_ID": "GOPAY_CUSTOMER",     "amount": "30000",     "billingId1": "081290731455"   } } 

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status :

false : success

true : failed

PAYMENT_TYPE * String Yes Payment type, default “GOPAY”

CHANNEL * String Yes Transaction channel, default “AGENT”

MCP_ID String Yes MCP id. Same value as inquiry request

h_customerName * String Yes Customer name

h_currency String Yes Currency

h_totalAmount String Yes Total nominal top up. Value on inquiry

response default “0”

c_fee String Yes Admin Fee

h_companyCode String Yes Company Code

h_customerNumber * String Yes Customer number/phone number. Same

value as inquiry request field

“data.billingId”

h_requestId String Yes Request Id

h_inquiryStatus String Yes Inquiry status :

00 : success

h_inquiryReason String Yes Inquiry Reason

h_reference String Yes Transaction reference number

biaya_loket * String Yes Counter Fee

Success HTTP 200

310/457

response code

Response

(Success) {   "error": false,   "PAYMENT_TYPE": "GOPAY",   "CHANNEL": "AGENT",   "MCP_ID": "GOPAY_CUSTOMER",   "h_customerName": "Krisnaldi",   "h_currency": "IDR",   "h_totalAmount": "0",   "c_fee": "0",   "h_companyCode": "8202",   "h_customerNumber": "081290731455",   "h_requestId": "000000",   "h_inquiryStatus": "00",   "h_inquiryReason": "Success",   "h_reference": "931496375885980",   "biaya_loket": "2000" } 

Error

response code

Response

(error)

{

"error": true,

"errorNum": "16",

"message": "Nomor HP yang anda masukkan salah. (RC 16)",

"biaya_loket": "2000"

}

2.3.2.6. Top Up Go Pay– Payment Payment Top Up Go Pay

Description feature for Top Up GoPay payment Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

311/457

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.MCP_ID String Yes Mapping of MCP_ID base on service type :

Type of Service Field Value

MCP_ID

Top Up GO-JEK

Driver

GOPAY_DRIVER

Top Up GO-PAY

Customer

GOPAY_CUSTOMER

Top Up GO-PAY

Merchant

GOPAY_MERCHANT

data.h_customerNumber String Yes Customer number/phone number. Same

value as inquiry response

data.h_customerName String Yes Customer name. Same value as inquiry

response

data.h_totalAmount String Yes Total nominal top up. Same value as inquiry

request field “amount”

312/457

data.h_reference String Yes Transaction reference number. Same value

as inquiry response

data.c_fee String Yes Admin Fee. Same value as inquiry response

data.jenis_layanan String Yes Service type.

Mapping of service type and MCP_ID:

Type of Service Field Value

MCP_ID

Top Up GO-JEK

Driver

GOPAY_DRIVER

Top Up GO-PAY

Customer

GOPAY_CUSTOMER

Top Up GO-PAY

Merchant

GOPAY_MERCHANT

data.biaya_loket String Yes Counter fee. Same value as inquiry response

data.total_bayar String Yes Total pay, including amount top up and

counter fee (amount + biaya loket)

data.h_accountNumber String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR498",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "MCP_ID": "GOPAY_CUSTOMER",     "h_customerNumber": "081290731455",     "h_customerName": "Krisnaldi",     "h_totalAmount": "30000",     "h_reference": "941496375329382",     "c_fee": "0",     "jenis_layanan": "Top Up GO‐PAY Customer",     "biaya_loket": "2000",     "total_bayar": "32000",     "h_accountNumber": 115258134,     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“113” is for top up GoPay

status String Yes Transaction’s status

313/457

data.error String Yes Transaction status :

false : success

true : failed

data.PAYMENT_TYPE String Yes Payment type, default “GOPAY”

data.CHANNEL String Yes Transaction channel, default “AGENT”

data.MCP_ID String Yes MCP id. Same value as payment

request

data.h_customerName String Yes Customer name. Same value as

payment request

data.h_currency String Yes Currency. Same value as payment

request

data.h_paidAmount String Yes Paid Amount

data.h_totalAmount Total nominal top up. Same value as

payment request

data.h_transactionDate String Yes Transaction Date

data.c_fee String Yes Admin fee. Same value as payment

request

data.h_accountNumber String Yes Agent’s account number. Same value

as payment request

data.c_payMethod String Yes Payment method, default “2”

data.c_description String Yes Description

data.h_customerNumber String Yes Customer number/phone number.

Same value as payment request

data.h_paymentFlagStatus String Yes Payment Flag Status

data.journal * String Yes Transaction financial journal

data.h_ reference * String Yes Transaction reference number. Same

value as payment request

data.biaya_loket String Yes Counter Fee. Same value as payment

request

data.total_bayar String Yes Total pay. Same value as payment

request

data.jenis_layanan * String Yes Service type. Same value as payment

request

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.noRek String Yes Agent’s account number

CustomerData.biaya_adm String Yes Admin fee

CustomerData.no_tel String Yes Customer number/phone number

314/457

CustomerData.nominal String Yes Nominal top up

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "113",   "status": "success",   "data": {     "error": false,     "PAYMENT_TYPE": "GOPAY",     "CHANNEL": "AGENT",     "MCP_ID": "GOPAY_CUSTOMER",     "h_customerName": "Krisnaldi",     "h_currency": "IDR",     "h_paidAmount": "30000",     "h_totalAmount": "30000",     "h_transactionDate": "02/06/2017 10:59:37",     "c_fee": "0",     "h_accountNumber": "115258134",     "c_payMethod": "2",     "c_description": "",     "h_customerNumber": "081264455422",     "h_paymentFlagStatus": "00",     "journal": "318488",     "h_reference": "941496375329382",     "biaya_loket": "2000",     "total_bayar": "32000",     "jenis_layanan": "Top Up GO‐PAY Customer",     "errorNum": ""   },   "result": {     "kode_loket": "ARD259100019",     "kd_lkt": "100019",     "nama": "LALA",     "kode_cabang": "259",     "kode_mitra": "ARD",     "alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA 15415"   },   "CustomerData": {     "noRek": 115258134,     "biaya_adm": 0,     "no_tel": "081290731455",     "nominal": "30000",     "time": "2017‐06‐02T10:57:17+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "113",

315/457

"status": "success",

"data": {

"error": true,

"biaya_loket": "2000",

"total_bayar": "32000",

"jenis_layanan": "Top Up GO-PAY Customer"

},

"result": {

"kode_loket": "ARD259100019",

"kd_lkt": "100019",

"nama": "LALA",

"kode_cabang": "259",

"kode_mitra": "ARD",

"alamat": "002/003 GANDARIA SELATAN CILANDAK JAKARTA SELATAN DKI JAKARTA

15415"

},

"CustomerData": {

"noRek": 115258134,

"biaya_adm": 0,

"no_tel": "081290731455",

"nominal": "30000",

"time": "2018-01-30T07:58:15+07:00"

}

}

2.3.2.7. Internet Package Payment Internet Package

Description feature for Internet Package Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

316/457

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered in

BNI H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] . [agen’s

counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.msisdn String Yes Mobile Phone Number

data.providerId String Yes Note Provider id:

OPERATOR FIELD VALUE

317/457

Providerld

TELKOMSEL TELKOMSEL_DATA

INDOSAT INDOSAT_DATA

XL XL_DATA

TRI TRI_DATA

SMART SMART_DATA

data.h_productCode String Yes Product code.

Mapping of product code refer to Appendix 2.5.10

field Package Code

data. packageAmount

String Yes Package amount.

Mapping of package amount refer to Appendix

2.5.10 field Package Amount

data. packageDescription

String Yes Package description.

Mapping of package description refer to Appendix

2.5.10 field Package Name

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114763399455692",   "fiturId": "FTR521",   "data": {     "kode_mitra": "BNI",     "kode_loket": "50299",     "kode_cabang": "259",     "reffNum": "20180820160231151299",     "msisdn": "081339372389",     "providerId": "TELKOMSEL_DATA",     "h_productCode": "OTSD25",     "packageAmount": "25000",     "packageDescription": "Telkomsel 25 Data",     "accountNum": 115222877,     "pin_transaksi": "12345"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“11” is for Internet Package

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

318/457

data.ket * String Yes Transaction’s descriptions

data.journal * String Yes Transaction’s journal

data.financialJurnal * String Yes Transaction’s financial journal

data.msisdn * String Yes Mobile phone number. Same value as request

data.packageCode String Yes Product code. Same value as request field

h_productCode

data.packageAmount String Yes Package amount. Same value as request

data. packageDescription

String Yes Package description. Same value as request

data. packageSerialNum

String Yes Package Serial Number

data.amount String Yes Operator amount

data.c_fee String Yes Admin fee

data.totalAmount String Yes Total payment (include operator amount and

admin fee)

data.status * String Yes Transaction status.

SUKSES : success transaction

TRANSAKSI SEDANG DIPROSES : pending

transaction

data.errorNum String Yes Transaction’s error number

data.errorNum String Yes Transaction’s error number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.noHP String Yes Mobile Phone Number

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "11",   "status": "success",   "data": {     "error": false,     "ket": "TELKOMSEL_DATA",     "journal": "20180820160231151299",     "financialJournal": "328078",     "msisdn": "081339372389",     "packageCode": "OTSD25",     "packageAmount": "25000",     "packageDescription": "Telkomsel 25 Data",     "packageSerialNum": "6111641000977535851",     "amount": "24875",     "c_fee": "500", 

319/457

    "totalAmount": "25375",    "status": "SUKSES",     "errorNum": ""   },   "result": {     "kode_loket": "BNI25950299",     "kd_lkt": "50299",     "nama": "Firda A'gen ubah",     "kode_cabang": "259",     "kode_mitra": "BNI",     "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"   },   "CustomerData": {     "noHP": "081339372389",     "time": "2018‐09‐20T15:43:09+07:00"   } } 

Error

response code

Response

(error)

{

"trxType": "11",

"status": "success",

"data": {

"error": true,

"errorNum": "5013",

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"ori_errorNum": "5013",

"ori_message": ""

},

"result": {

"kode_loket": "BNI25950299",

"kd_lkt": "50299",

"nama": "Firda A'gen ubah",

"kode_cabang": "259",

"kode_mitra": "BNI",

"alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"

},

"CustomerData": {

"noHP": "081339372389",

"time": "2018-09-20T16:02:43+07:00"

}

}

320/457

2.3.2. TRANSFER

2.3.3.1. Transfer – BNI – Inquiry Inquiry BNI Transfer

Description feature for Inquiry BNI Account Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.accountNum String Yes Transfer destination account (BNI

Account)

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287 ",   "fiturId": "FTR333",   "data": {     "accountNum": " 9880055500000048"   } } 

Response

Definition

Field Data

Type

Mandatory Description

321/457

error String Yes Transaction status :

false : success

true : failed

ket String Yes Transaction description

d_accountCurrency String Yes Account Currency

d_status String Yes Account status

d_branchNum String Yes Account Branch Number

d_accountType String Yes Account Type

d_accountTypeCode String Yes Account type code

d_accountSubcatCode String Yes Account sub category code

d_metodeHitungBunga String Yes Counting method of interest

d_tingkatSukuBunga String Yes Interest rates

d_accountName String Yes Account Name

d_customerName * String Yes Customer’s name

d_homePhoneNum String Yes Home Phone number

d_officePhoneNum String Yes Office phone number

d_tanggalPembukaan String Yes Account opening date

d_tanggalMaintainTerakhir String Yes Last maintain date

d_tanggalTransaksiFinansial String Yes Date of financial transaction

d_tanggalBungaSebelumnya String Yes Previous interest date

d_tanggalBungaBerikutnya String Yes The next interest date

d_tanggalKadaluarsaVisa String Yes Expiry date of visa

d_saldoAkhir String Yes Ending balance

d_danaBelumEfektif String Yes Funds have not been effective

d_nominalBelumDicetak String Yes Nominal not yet printed

d_bungaPerProvitHariIni String Yes Interest of provit today

d_saldoBuku String Yes Book balance

d_nominalTanpaBunga String Yes Nominally without interest

d_saldoAkibatInflasi String Yes Balance due to inflation

d_adjBungaSebelumnya String Yes Previous interest adjusment

d_orderBukuCek String Yes Check book order

d_term String Yes term

d_bungaSampaiHariIni String Yes Current interest

d_tanggalOverlimitTerakhir String Yes Last over limit date

d_pphPendudukSampaiHariIni String Yes Current citizen pph

d_pphNonPendudukSampaiHariIni String Yes Current non citizen pph

d_bungaTunaiTersedia String Yes Cash interest available

d_visaPembelian String Yes Purchase visa

d_bicNum String Yes Bic number

d_frekuensiRekeningKoran String Yes Frequency of saving account

d_siklusRekeingKoran String Yes Saving account cycle

d_hariRekeningKoran String Yes Saving account days

d_alasanBukaRekening String Yes reason of opening account

322/457

d_alasanBukaRekening2 String Yes reason of opening account 2

d_sumberDana String Yes Source of funds

d_sumberDana2 String Yes Source of funds 2

d_perkiraanNominalSetoran String Yes Estimated nominal deposit

d_perkiraanNominalPenarikan String Yes Estimated nominal withdraw

d_tanggalProsesBukaRekening String Yes Account opening date

d_kodeKlafikasiGl String Yes Clarification code

d_perubahanTerakhirRekeninIni String Yes Recent account change

d_nominalBungaOverdraft String Yes Nominal interest over draft

d_tprRate String Yes Tpr rate

d_nomorSertifikat String Yes Certificate number

d_provitAvailable String Yes Provit available

d_userIdPembukaRekening String Yes User id opener account

biaya_loket * String Yes Counter fee

error String Yes Transaction status :

false : success

true : failed

errorNum String Yes Transaction’s error number

message String Yes Transaction’s error message

Success

response code

HTTP 200

Response

(Success) {   "error":false,   "ket":"checkAccount 4447",   "d_accountCurrency":"IDR",   "d_status":"BUKA",   "d_branchNum":"0259",   "d_accountType":"BNI TAPLUS",   "d_accountTypeCode":"2000",   "d_accountSubcatCode":"0001",   "d_metodeHitungBunga":"DDCV",   "d_tingkatSukuBunga":" 3,0000",   "d_accountName":"",   "d_customerName":"Sdri TEST1  TEST3",   "d_homePhoneNum":"",   "d_officePhoneNum":"",   "d_tanggalPembukaan":"31\/05\/2010",   "d_tanggalMaintainTerakhir":"99\/99\/9999",   "d_tanggalTransaksiFinansial":"31\/05\/2010",   "d_tanggalBungaSebelumnya":"31\/05\/2010",   "d_tanggalBungaBerikutnya":"31\/05\/2010",   "d_tanggalKadaluarsaVisa":"",   "d_saldoAkhir":"    13211917035356",   "d_danaBelumEfektif":"              0,00",   "d_nominalBelumDicetak":"    13211917044356",   "d_bungaPerProvitHariIni":"      455685,04808",   "d_saldoBuku":"          9.000,00‐",   "d_nominalTanpaBunga":"            ,00000", 

323/457

  "d_saldoAkibatInflasi":"0",  "d_adjBungaSebelumnya":"            ,00000",   "d_orderBukuCek":"",   "d_term":"",   "d_bungaSampaiHariIni":"              0,00",   "d_tanggalOverlimitTerakhir":"99\/99\/9999",   "d_pphPendudukSampaiHariIni":"0",   "d_pphNonPendudukSampaiHariIni":"0",   "d_bungaTunaiTersedia":"",   "d_visaPembelian":"",   "d_bicNum":"                ",   "d_frekuensiRekeningKoran":"N",   "d_siklusRekeingKoran":"",   "d_hariRekeningKoran":"",   "d_alasanBukaRekening":"0002",   "d_alasanBukaRekening2":"",   "d_sumberDana":"0001",   "d_sumberDana2":"",   "d_perkiraanNominalSetoran":"",   "d_perkiraanNominalPenarikan":"     0,00",   "d_tanggalProsesBukaRekening":"31\/05\/2010",   "d_kodeKlafikasiGl":"0259IDR00002100113100",   "d_perubahanTerakhirRekeninIni":"99\/99\/9999",   "d_nominalBungaOverdraft":"            ,00000",   "d_tprRate":"  000000",   "d_nomorSertifikat":"",   "d_provitAvailable":"0",   "d_userIdPembukaRekening":"",   "biaya_loket ": "1000" } 

Error

response code

Response

(error)

{

"error":true,

"errorNum":"0108",

"message":"NO SUCH ACCOUNT"

2.3.3.2. Transfer – BNI– Payment BNI Transfer

Description feature for transfer between BNI Account Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

324/457

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes BNI Agent code. Combination of

kode_mitra, kode_cabang,

andkode_loket

data.clientAccountNum String Yes BNI Agent account number

data.requestId String Yes Request ID, unique number (Numeric)

325/457

data.requestTime String Yes Transaction’s time.

Example :

2015-04-09T18:12:00.431+07:00

data.customerAccountNum String Yes Transfer destination account (BNI

Account)

data.d_name String Yes Name of the destination account owner.

Note :

If trasfer destination account is :

1. BNI VA Account

BNI VA Account is account with

prefiks 988 or 8and with 16

digits long

d_name set from Inquiry

response field

d_customername

2. BNI non VA Account

If d_accountname<> “” on

Inquiry response, then

d_name = d_accountname

If d_accountname = “” on

Inquiry response, then

d_name = d_customername

data.amount String Yes Nominal transfer

data.biaya_loket String Yes Counter fee. Same value as Inquiry

response

data.date String Yes Transaction date.

Format “yyyy-mm-dd”

data. trxType String Yes Default “transfer"

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR329",   "data": {     "kode_mitra": "ARD",     "kode_loket": "100019",     "kode_cabang": "259",     "pin_transaksi": "12345",     "clientId": "ARD259100019",     "clientAccountNum": "116724773",     "requestId": "509640",     "requestTime": "20170302 15:20:54",     "customerAccountNum": "4447",     "d_name": "Sdri TEST1  TEST3",     "amount": "100000", 

326/457

"biaya_loket": "1000",     "date": "2017‐03‐02",     "trxType": "transfer"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“3” is for BNI Transfer

status String Yes Transaction’s status

data.error * String Yes Transaction status :

false : success

true : failed

data.transactionJournal * String Yes Transaction’s journal

data.biaya_loket * String Yes Counter fee. Same value as

Payment request

data.errorNum String Yes Transaction’s error number

data.message String Yes Transaction’s error message

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.noRek * String Yes Transfer destination account

(BNI Account)

CustomerData.noHP String Yes Customer’s HP number

CustomerData.namaNasabah * String Yes Name of the destination

account owner

CustomerData.nominal * String Yes Nominal transfer

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success)

{

trxType: '3',

status: 'success',

data: {

error: false,

transactionJournal: '904414',

biaya_loket: '1000'

},

result: {

kode_loket: 'SKD259100023',

kd_lkt: '100023',

nama: 'Teguh Wahyu Santoso',

327/457

kode_cabang: '259',

kode_mitra: 'SKD',

alamat: 'RT 4 Jumput Rejo Buduran Sidoarjo Jawa Timur 60252'

},

CustomerData: {

noRek: '4447',

namaNasabah: 'Sdri TEST1 TEST3',

noHP: null,

nominal: '100000',

time: '2017-07-31T14:08:59+07:00'

}

}

Error

response code

Response

(error)

{

"data": {

"error": true,

"message": "TRANSAKSI GAGAL : Pin transaksi salah",

"errorNum": "-2"

},

"result": {

"nama": "Desi",

"alamat": "000 Kebon Sirih Menteng Kota Jakarta Pusat DKI Jakarta 10340",

"kd_lkt": "100048",

"kode_loket": "PTN259100048",

"kode_mitra": "PTN",

"kode_cabang": "259"

},

"status": "success",

"trxType": "3",

"CustomerData": {

"noHP": null,

"time": "2017-10-30T14:25:44+07:00",

"noRek": "116908716", "nominal": 25000,

"namaNasabah": "Bpk SITI AISYAH"

}

2.3.3.3. Transfer – Non BNI – Inquiry Inquiry Non BNI Account

Description feature for Inquiry non BNI Account Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

328/457

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.destinationBankCode String Yes Account destination Bank Code. List of

the bank code refer to Appendix 2.5.3

field KODE_BANK

data.destinationAccountNum String Yes Account destination. (Non BNI Account)

data.accountNum String Yes Agent’s account number

data.userChannelId String Yes Agen’s user id or Agen’s code (concat of

value kode_mitra, kode_cabang,

kode_loket)

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR330",   "data": {     "destinationBankCode": "547",     "destinationAccountNum": "12345678",     "accountNum": "4447",     "userChannelId": "IPYAG00005"   } }

Response

Definition

Field Data

Type

Mandatory Description

329/457

error String Yes Transaction status :

false : success

true : failed

ket String Yes Default “Transfer Antar Bank”

destinationAccountNum * String Yes Account destination. (Non BNI Account).

Same value as Inquiry request

destinationAccountName * String Yes Name of the destination account owner

destinationBankName * String Yes Account destination Bank name

retrievalReffNum String Yes Retrieval Refference number

accountName String Yes Agent’s account name

customerReffNum String Yes Customer refference number

destinationBankCode String Yes Account destination Bank Code. Same

value as Inquiry request

userChannelId String Yes Agen’s user id or Agen’s code (concat of

value kode_mitra, kode_cabang,

kode_loket). Same value as Inquiry

request

responseCode String Yes Transaction response code

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "Transfer Antar Bank",   "destinationAccountNum": "12345678",   "destinationAccountName": "Bpk KEN AROK",   "destinationBankName": "547",   "retrievalReffNum": "100000000097",   "accountName": "",   "customerReffNum": "788368577",   "destinationBankCode": "547",   "userChannelId": "IPYAG00005",   "responseCode": "00",   "biaya_adm": "6500" }

Error

response code

Response

(error)

{

"error":true,

"errorNum":"0108",

"message":"NO SUCH ACCOUNT"

2.3.3.4. Transfer – Non BNI – Payment Non BNI Transfer

Description feature for transfer between BNI Account to Non BNI Account Hostname https://apidev.bni.co.id

330/457

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

331/457

data.pin_transaksi String Yes Agent’s transaction pin

data.destinationBankCode String Yes Account destination Bank Code.

Same value as Inquiry response

data.destinationBankName String Yes Account destination Bank name.

Same value as Inquiry response

data.destinationAccountNum String Yes Account destination. (Non BNI

Account). Same value as Inquiry

response

data.destinationAccountName String Yes Name of the destination account

owner. Same value as Inquiry

response

data.userChannelId String Yes Agen’s user id or Agen’s code (concat

of value kode_mitra, kode_cabang,

kode_loket). Same value as Inquiry

response

data.customerReffNum String Yes Customer refference number. Same

value as Inquiry response

data.amount String Yes Nominal transfer

data.accountNum String Yes Agent’s account number

data.date String Yes Transaction date.

Format “yyyy-mm-dd”

Data.biaya_adm String Yes Admin fee

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR328",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "date": "2018‐05‐24",     "pin_transaksi": "12345",     "destinationBankCode": "547",     "destinationBankName": "547",     "destinationAccountNum": "12345678",     "destinationAccountName": "Bpk KEN AROK",     "userChannelId": "IPYAG00005",     "customerReffNum": "788772835",     "amount": "100000",     "accountNum": "4447",     "biaya_adm": "6500"   } } 

Response

Definition

Field Data Mandator Description

332/457

Type y

trxType String Yes Transaction’s type,

“4” is for Non BNI Transfer

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Default “Transfer Antar Bank”

data.destinationAccountNum * String Yes Agent’s destination account

number. Same value as Inquiry

response

data.destinationAccountName * String Yes Agent’s destination account name.

Same value as Inquiry response

data.customerReffNum String Yes Customer refference number. Same

value as Inquiry response

data.destinationBankName * String Yes Account destination Bank name.

Same value as Inquiry response

data.retrievalReffNum * String Yes Transaction journal

data.accountName String Yes Agent’s account name

data.responseCode String Yes Transaction response code

data.errorNum String Yes Transaction’s error number

data.message String Yes Transaction’s error message

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm * String Yes Admin fee

CustomerData.nominal * String Yes Nominal transfer

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "4",   "status": "success",   "data": {     "error": false,     "ket": "Transfer Antar Bank",     "destinationAccountNum": "12345678",     "destinationAccountName": "Bpk KEN AROK",     "customerReffNum": "788772835",     "destinationBankName": "547",     "retrievalReffNum": "100000000102",     "accountName": "BNI SMART REMITTANCE",     "responseCode": "00" 

333/457

  },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   },   "CustomerData": {     "biaya_adm": "6500",     "nominal": "100000",     "time": "2018‐05‐24T09:02:52+07:00"   } } 

Error response

code

Response

(error)

{

"trxType": "4",

"status": "success",

"data": {

"error": true,

"errorNum": "80",

"message": "Payment receipt not found"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"biaya_adm": 6500,

"nominal": "20000",

"time": "2018-01-22T17:12:49+07:00"

}

}

Response

(error)

    "trxType": "4", 

    "status": "success", 

    "data": { 

        "error": true, 

334/457

        "errorNum": "‐2", 

        "message": "TRANSAKSI GAGAL : Pin transaksi salah" 

    }, 

    "result": { 

        "kode_loket": "IPY01400005", 

        "kd_lkt": "00005", 

        "nama": "Agung", 

        "kode_cabang": "014", 

        "kode_mitra": "IPY", 

        "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213" 

    }, 

    "CustomerData": { 

        "biaya_adm": "6500", 

        "nominal": "100000", 

        "time": "2018‐05‐24T09:06:40+07:00" 

    } 

2.3.4. DIGITAL FINANCIAL SERVICES

2.3.4.1. Top Up BNI TapCash Top Up BNI TapCash

Description feature for BNI TapCash top up Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

335/457

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

336/457

data.tapcashNum String Yes BNI TapCash number

data.amount String Yes Top up amount

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114781568148276",   "fiturId": "FTR446",   "data": {     "kode_mitra": "ALF",     "kode_loket": "50314",     "kode_cabang": "259",     "reffNum": "20171107143923000511",     "tapcashNum": "7546130000012501",     "amount": "10000",     "accountNum": "115258134",     "pin_transaksi": "12345"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“112” is for BNI TapCash top up

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.ket * String Yes Transaction description

data.providerId String Yes Default "BNI‐TAPCASH". Same value

as request

data.journal * String Yes Transaction’s journal

data.financialJournal * String Yes Transaction’s financial journal

data.tapcashNum * String Yes BNI TapCash number. Same value as

request

data.accountNum String Yes Agent’s account number. Same value

as request

data.voucherNum String Yes Voucher number

data.amount * String Yes Top up amount. Same value as

request

data.reffNum String Yes Transaction’s refference number.

Same value as request

data.biaya_loket * String Yes Counter Fee

data.errorNum String Yes Transaction error number

337/457

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm * String Yes Transaction admin fee

CustomerData.no Tapcash String Yes BNI TapCash number

CustomerData.nominal String Yes Top up amount

CustomerData.time * String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "112",   "status": "success",   "data": {     "error": false,     "ket": "Top Up Tapcash",     "providerId": "BNI‐TAPCASH",     "journal": "953120012   ",     "financialJournal": "556102",     "tapcashNum": "7546130000012501",     "accountNum": "115258134",     "voucherNum": "           071117556102",     "amount": "10000",     "reffNum": "2017110716535116250950314",     "biaya_loket": "1500",     "errorNum": ""   },   "result": {     "kode_loket": "ALF25950314",     "kd_lkt": "50314",     "nama": "agent",     "kode_cabang": "259",     "kode_mitra": "ALF",     "alamat": "003 Menteng Menteng Kota Jakarta Pusat DKI Jakarta 10310"   },   "CustomerData": {     "biaya_adm": 0,     "no Tapcash": "7546130000012501",     "nominal": "10000",     "time": "2017‐11‐07T16:54:06+07:00"   } } 

Error

response code

Response

(error)

{

"error":true,

"errorNum":"0108",

338/457

"message":"NO SUCH ACCOUNT"

2.3.4.2. UnikQu – Cash In – Inquiry Inquiry UnikQu

Description feature for inquiry of of BNI UnikQu Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

339/457

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter code

Example :

reffNum =20170607110019123450100021

data.terminal_id String Yes Default “WEBAGENT”

data.nomor_terminal String Yes Default “00001”

data.va String Yes BNI UnikQu number

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114763399455692",   "fiturId": "FTR924",   "data": {     "kode_loket": "100018",     "kode_cabang": "259",     "kode_mitra": "KSN",     "reffNum": "20171205185527050308",     "terminal_id": "WEBAGENT",     "nomor_terminal": "00001",     "va": "081290731533"   } }

Response

Definition

Field Data

Type

Mandatory Description

code String Yes Transaction status :

1 : success

-1 : failed

message String Yes Transaction message

340/457

data.emoney_va * String Yes BNI UnikQu number (with 4 digit

prefiks)

data.no_identitas String Yes Customer’s identity number

data.nama_depan String Yes Customer’s first name

data.nama_belakang String Yes Customer’s last name

data.nama_lengkap * String Yes Customer’s full name

data.no_hp String Yes Customer’s phone number

data.msisdn * String Yes Customer’s phone number

data.email String Yes Customer’s email address

data.tanggal_lahir String Yes Customer’s date of birth, format

“ddmmyyyy”

data.balance String No Customer’s UnikQu balance

data.nama_ibu String Yes Name of the customer's mother

data.tempat_lahir String Yes Customer’s place of birth

data.jenis_identitas String Yes Customer’s identity type

data.keterangan_identitas String Yes Customer’s identity information

data.tipe_nasabah String Yes Customer’s type

data.status_aktif String Yes Customer’s status :

1 : active

0 or 2 : bloked

data.company_name String Yes VA’s publisher

Success

response code

HTTP 200

Response

(Success) {   "code": "1",   "message": "Data ditemukan",   "data": {     "emoney_va": "8001081290731533",     "no_identitas": "‐",     "nama_depan": "ahya",     "nama_belakang": "mukhlis",     "nama_lengkap": "ahya mukhlis",     "no_hp": "081290731533",     "msisdn": "081290731533",     "email": "[email protected]",     "tanggal_lahir": "",     "balance": "320305",     "tempat_lahir": "xxx",     "jenis_identitas": "3",     "keterangan_identitas": "HP",     "tipe_nasabah": "UNREGISTER",     "status_aktif": "1",     "company_name": "Unikqu"   } } 

Error

response code

341/457

Response

(error)

{

"code": "-1",

"message": "Nomor Virtual Account tidak ditemukan.",

"data": ""

}

2.3.4.3. UnikQu – Cash In – Payment UnikQu Cash In

Description feature for top up balance of BNI UnikQu Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

342/457

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.reffNum String Yes Reference number which is combination of

[transaction date] . [random number] .

[agen’s counter code]

Note :

1. transaction date

• Format : date('yyyymmddhhmmsszzzzz

')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen’s counter code : agen’s counter

code

Example :

reffNum

=20170607110019123450100021

data.terminal_id String Yes Default “WEBAGENT”

data.nomor_terminal String Yes Default “00001”

data.va String Yes BNI UnikQu number

data.amount String Yes Top up amount

data.keterangan String Yes Top up naration

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114763399455692",   "fiturId": "FTR932",   "data": {     "kode_loket": "100018",     "kode_cabang": "259",     "kode_mitra": "KSN",     "reffNum": "20171205185529050308",     "terminal_id": "WEBAGENT",     "nomor_terminal": "00001", 

343/457

    "va": "081290731533",    "amount": "20000",     "keterangan": "Ini adalah top up nomorku",     "accountNum": "116724773",     "pin_transaksi": "12345"   } 

} Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“80” is Top up UnikQu

status String Yes Transaction’s status

data.code String Yes Transaction status :

1 : success

-1 : failed

data.message String Yes Transaction message

data.coreJournal * String Yes Transaction journal

data.data2 String Yes Default “”

data.sql String Yes Default “”

data.emoney_va String Yes BNI UnikQu number (with 4 digit

prefiks)

data.data.emoney_va String Yes BNI UnikQu number (with 4 digit

prefiks)

data.data.no_identitas * String Yes Customer’s identity number

data.data.nama_depan String Yes Customer’s first name

data.data.nama_belakang String Yes Customer’s last name

data.data.nama_lengkap * String Yes Customer’s full name

data.data.no_hp String Yes Customer’s phone number

data.data.msisdn * String Yes Customer’s phone number

data.data.email String Yes Customer’s email address

data.data.tanggal_lahir String Yes Customer’s date of birth, format

“ddmmyyyy”

data.data.balance String Yes Customer’s UnikQu balance

data.data.tempat_lahir String Yes Customer’s place of birth

data.data.jenis_identitas String Yes Customer’s identity type

data.data.keterangan_identitas String Yes Customer’s identity information

data.data.tipe_nasabah String Yes Customer’s type

data.data.status_aktif String Yes Customer’s status :

1 : active

0 or 2 : bloked

data.data.company_name String Yes VA’s publisher

data.data.code String Yes Transaction status :

1 : success

344/457

-1 : failed

data.data.message String Yes Transaction message

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.biaya_adm * String Yes Transaction admin fee

CustomerData.msisdn String Yes Customer’s phone number

CustomerData.nominal * String Yes Bill’s nominal

CustomerData.time * String Yes Transaction’s time

error String Yes Transaction status :

false : success

true : failed

Success

response code

HTTP 200

Response

(Success) {   "trxType": "80",   "status": "success",   "data": {     "code": "1",     "message": "TOP UP UnikQu berhasil dilakukan sebesar Rp.20000 pada 6 December 2017, 4:38:03",     "data": {       "emoney_va": "8001081290731533",       "no_identitas": "‐",       "nama_depan": "ahya",       "nama_belakang": "mukhlis",       "nama_lengkap": "ahya mukhlis",       "no_hp": "081290731533",       "msisdn": "081290731533",       "email": "[email protected]",       "tanggal_lahir": "",       "balance": "340305",       "tempat_lahir": "xxx",       "jenis_identitas": "3",       "keterangan_identitas": "HP",       "tipe_nasabah": "UNREGISTER",       "status_aktif": "1",       "company_name": "Unikqu",       "code": "1",       "message": "TOP UP UnikQu berhasil dilakukan sebesar Rp.20000 pada 6 December 2017, 4:38:03"     },     "coreJournal": "900348",     "data2": "",     "sql": "",     "emoney_va": "081290731533" 

345/457

  },   "result": {     "kode_loket": "KSN259100018",     "kd_lkt": "100018",     "nama": "indra gunawan wibisono",     "kode_cabang": "259",     "kode_mitra": "KSN",     "alamat": "002/003 GANDARIA SELATAN Kemayoran Kota Jakarta Selatan CILANDAK 15415"   },   "CustomerData": {     "biaya_adm": 0,     "msisdn": "081290731533",     "nominal": "20000",     "time": "2017‐12‐06T16:38:03+07:00"   },   "error": false } 

Error

response code

Response

(error)  

2.3.5. LAKUPANDAI

2.3.5.1. Account Opening Opening Account

Description feature for Open a BNI Account.

Notes :

1) Initial step 1 : upload photo and identity card image, please refer to service CDN.

2) Initial step 2 : validate initial deposit amount (“setoranAwal”), minimal amount should be Rp

20.000 (can use parameter to make it easier for the future to make changes in value)

3) Initial step 3 : check balance of Agent ‘s account, please refer to service Check Account(balance

displayed on field d_availableBalance):

If balance<= Rp 25.000, account opening process can not be forwarded due to insufficient

balance. Please displayed proper message to customer

If balance > Rp. 25.000, but after deducting the initial deposit it becomes <= Rp 25.000,

account opening process can not be forwarded too due to insufficient balance. Please

displayed proper message to customer

4) If initial step 1 and step 2 done and success, then proceed to the account opening process

5) List Job Code refer to Appendix 2.5.5

6) Details info for address :

"adrress1": Street name

"address2": RT/rw+City or Regency

346/457

"address3": Village

"address4": District + ’/’ + City or Regency

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

TRA password

espectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

347/457

kode_loket is “1234567”

data.branch String Yes BNI branch code. Same value as field

“data.kode_cabang”

data.firstName String Yes Customer First Name

data.lastName String Yes Customer Last Name

data.address1 String Yes Street name

data.address2 String Yes District

data.address3 String Yes Village

data.address4 String Yes Sub-District

data.zipCode String Yes Zip code

data.homePhone1 String Yes Home Phone 1

data.homePhone2 String Yes Home Phone 2

data.noFax1 String Yes Fax Number 1

data.noFax2 String Yes Fax Number 2

data.officePhone1 String Yes Office Phone 1

data.officePhone2 String Yes Office Phone 2

data.handPhone1 String Yes Mobile phone 1

data.handPhone2 String Yes Mobile Phone 2

data.idNumber String Yes Id Number

data.jobCode String Yes Job Code

data.middleName String Yes Middle Name

data.idDueDate String Yes Id Due Date

data.placeOfBirth String Yes Place Of Birth

data.dateOfBirth String Yes Date Of birth

data.gender String Yes Gender

data.isMaried String Yes Id maried

data.income String Yes Income

data.nominal String Yes Nominal

data.setoranAwal String Yes Initial Deposit

data.lat String Yes Lattitude

data.lng String Yes Longitude

data.accountNum String Yes Agent’s account number

data.pin_transaksi String Yes Agent’s transaction pin

data.image_foto String Yes Path of Customer Photo image

data.image_ktp String Yes Path of Customer identity card image

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR322",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005", 

348/457

    "kode_cabang": "014",    "branch": "014",     "firstName": "budi",     "lastName": "sukoco",     "adrress1": "jl pisang",     "address2": "001002Kabsidoarjo",     "address3": "Gedangan",     "address4": "Sakra/Kabsidoarjo",     "zipCode": "83671",     "homePhone1": "0812",     "homePhone2": "52177613",     "noFax1": "9999",     "noFax2": "9999",     "officePhone1": "9999",     "officePhone2": "9999",     "handPhone1": "0819",     "handPhone2": "17974280",     "idNumber": "3515165912960001",     "jobCode": "06",     "middleName": "aulia",     "idDueDate": "19122019",     "placeOfBirth": "gedangan",     "dateOfBirth": "02091993",     "gender": "M",     "isMaried": "S",     "income": "500000",     "nominal": "1",     "setoran_awal": "20000",     "lat": "",     "lng": "",     "accountNum": "4447",     "pin_transaksi": "12345",     "image_foto": "pendaftaran/BNI_3374041709820003_1456280375.jpg",     "image_ktp": "pendaftaran/BNI_3374041709820003_ktp_reg_1456280375.jpg"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“0” is for Open an Account

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.cifNum String Yes Provider Id. Same value as

Payment request

data.coreJurnal String Yes Transaction’s journal

data.rekNum String Yes Mobile Phone number. Same

value as payment request

result.kode_loket String Yes Agent’s code

349/457

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

time String Yes Transaction’s time

CustomerData.branch String Yes BNI branch code. This code is part

of the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

CustomerData.firstName String Yes Customer First Name

CustomerData.lastName String Yes Customer Last Name

CustomerData.address1 String Yes Street name

CustomerData.address2 String Yes District

CustomerData.address3 String Yes Village

CustomerData.address4 String Yes Sub-District

CustomerData.zipCode String Yes Zip code

CustomerData.homePhone1 String Yes Home Phone 1

CustomerData.homePhone2 String Yes Home Phone 2

CustomerData.noFax1 String Yes Fax Number 1

CustomerData.noFax2 String Yes Fax Number 2

CustomerData.officePhone1 String Yes Office Phone 1

CustomerData.officePhone2 String Yes Office Phone 2

CustomerData.handPhone1 String Yes Mobile phone 1

CustomerData.handPhone2 String Yes Mobile Phone 2

CustomerData.idNumber String Yes Id Number

CustomerData.jobCode String Yes Job Code

CustomerData.middleName String Yes Middle Name

CustomerData.idDueDate String Yes Id Due Date

CustomerData.placeOfBirth String Yes Place Of Birth

CustomerData.dateOfBirth String Yes Date Of birth

CustomerData.gender String Yes Gender

CustomerData.isMaried String Yes Id maried

CustomerData.income String Yes Income

CustomerData.nominal String Yes Nominal

CustomerData.setoranAwal String Yes Initial Deposit

CustomerData.lat String Yes Lattitude

CustomerData.lng String Yes Longitude

CustomerData.accountNum String Yes Agent’s account number

CustomerData.pin_transaksi String Yes Agent’s transaction pin

CustomerData.image_foto String Yes Path of Customer Photo image

350/457

CustomerData.image_ktp String Yes Path of Customer identity card

image

Success

response code

HTTP 200

Response

(Success) {   "trxType": "0",   "status": "success",   "data": {     "error": false,     "cifNum": "9389713876",     "coreJournal": "539209",     "rekNum": "432013076"   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": 00005,     "nama": "ADEN ADITYA",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "005/001Gedangan Gedangan Kota Sidoarjo Jawa Timur61254"   },   "time": "2016‐02‐24T09:19:32+07:00",   "CustomerData": {     "branch": "014",     "firstName": "MAULFI",     "lastName": "SANIF",     "adrress1": "JL PISANG IV",     "address2": "002005KotaSidoarjo",     "address3": "Gedangan",     "address4": "Gedangan/KotaSidoarjo",     "zipCode": "61254",     "homePhone1": "8888",     "homePhone2": "8888",     "noFax1": "8888",     "noFax2": "8888",     "officePhone1": "8888",     "officePhone2": "8888",     "handPhone1": "087852675325",     "handPhone2": "03172455",     "idNumber": "5517201230029875",     "jobCode": "02",     "middleName": "LUKMAN",     "idDueDate": "19082017",     "placeOfBirth": "SIDOARJO",     "dateOfBirth": "19081985",     "gender": "M",     "isMaried": "M",     "income": "1000000",     "nominal": "1",     "setoran_awal": "20000",     "lat": "‐7.2574719",     "lng": "112.7520883", 

351/457

    "accountNum": 152010293,    "pin_transaksi": "123456",     "image_foto": " pendaftaran/BNI_3374041709820003_1456280375.jpg",     "image_ktp": " pendaftaran/BNI_3374041709820003_ktp_reg_1456280375.jpg",   } } 

Error

response code

Response

(error)

{

"trxType": "0",

"status": "success",

"data": {

"error": true,

"errorNum": "-2",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"time": "2018-01-31T11:26:30+07:00",

"CustomerData": {

"kode_mitra": "IPY",

"kode_loket": "00005",

"kode_cabang": "014",

"branch": "014",

"firstName": "budi",

"lastName": "sukoco",

"adrress1": "jl pisang",

"address2": "001002Kabsidoarjo",

"address3": "Gedangan",

"address4": "Sakra/Kabsidoarjo",

"zipCode": "83671",

"homePhone1": "0812",

"homePhone2": "52177613",

"noFax1": "9999",

"noFax2": "9999",

"officePhone1": "9999",

"officePhone2": "9999",

"handPhone1": "081917974280",

"handPhone2": "17974280",

352/457

"idNumber": "3515165912960001",

"jobCode": "06",

"middleName": "aulia",

"idDueDate": "19122019",

"placeOfBirth": "gedangan",

"dateOfBirth": "02091993",

"gender": "M",

"isMaried": "S",

"income": "500000",

"nominal": "1",

"setoran_awal": "20000",

"lat": "",

"lng": "",

"accountNum": "4447",

"pin_transaksi": "12341",

"image_foto": "pendaftaran/BNI_3374041709820003_1456280375.jpg",

"image_ktp": "pendaftaran/BNI_3374041709820003_ktp_reg_1456280375.jpg"

}

}

2.3.5.2. Cash Deposit Cash Deposit

Description feature for Cash Deposit

Notes :

1) Sebelum Prior to the Cash Deposit process, please check the customer account that entered by

using Check Account Details service

2) If deposit destination accountisNOT Virtual Account, then field d_nameon the Cash Deposit

request is filled with the following rule:

Ifd_accountnamevalue is available, thend_name = d_accountname

(d_accountnameis response from Check Account Details service)

Ifd_accountnamevalue is NOT available, thend_name = d_customername

(d_accountname dan d_customernameare response from Check Account Details service)

3) If deposit destination accountis Virtual Account, then field d_nameon the Cash Deposit request

is filled withd_customernamevalue (d_customernameis response from Check Account

Details service)

4) Pattern to identify BNI Virtual Account (BNI VA) :

Length = 16 digits

Prefix = 988 atau 8

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

353/457

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Client Id. Concat(data.kode_mitra,

data.kode_cabang, data.kode_loket)

data.clientAccounNum String Yes Agent’s account number

data.requestId String Yes Transaction id (unique, numeric)

354/457

data.requestTime String Yes Transaction’s time, format 'YYYY-MM-

DDTHH:mm:ss.SSS'+07:00

data.customerAccountNum String Yes Customer account as deposit destination

account

data.d_name String Yes Customer Name. Details refer to Notes

on service Description above

data.amount String Yes Customer’s deposit amount

data.date String Yes Transaction date, format “yyyy-mm-dd”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR320",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IPY01400005",     "clientAccountNum": "116724773",     "requestId": "212121212",     "requestTime": "2016‐08‐30T18:12:00.431+07:00",     "customerAccountNum": "555010",     "d_name": "nama dari response checkAccount",     "amount": "1000",     "date": "2016‐08‐30"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“1” is for Cash Deposit

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.transactionJournal String Yes Transaction’s journal

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.noRek String Yes Customer account as deposit

destination account

CustomerData.noHP String Yes Mobile Phone Number

355/457

CustomerData.nominal String Yes Customer’s deposit amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "1",   "status": "success",   "data": {     "error": false,     "transactionJournal": "949570"   },   "result": {     "kode_loket": "BNI02250001",     "kd_lkt": 50001,     "nama": "Ryan Ditya Permadi",     "kode_cabang": "022",     "kode_mitra": "BNI",     "alamat": "1\/1 Jatikarya Jati Sampurna Kota Bekasi Jawa Barat 17435"   },   "CustomerData": {     "noRek": "555010",     "noHP": null,     "nominal": "1000",     "time": "2015‐12‐30T01:49:23.252Z"   } } 

Error

response code

Response

(error)

{

"trxType": "1",

"status": "success",

"data": {

"error": true,

"errorNum": "-2",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"noRek": "555010",

"namaNasabah": "nama dari response checkAccount",

"noHP": null,

356/457

"nominal": "1000",

"time": "2018-01-31T11:28:11+07:00"

}

}

2.3.5.3. Cash Withdrawal Cash Withdrawal

Description feature for Cash Withdrawal

Notes :

1) Initial step 1 : create OTP using Create OTP service

2) Initial step 2 : check the customer account number that will be withdrawn using Check Account

service. Field d_nameon the Cash Withdrawal request is filled with the following rule:

Ifd_nameRek value is available, thend_name = d_nameRek (d_nameRekis response

from Check Account service)

Ifd_nameRek value is NOT available, thend_name = d_name (d_nameis response from

Check Account service)

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

357/457

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.pin_transaksi String Yes Agent’s transaction pin

data.clientId String Yes Client Id. Concat(data.kode_mitra,

data.kode_cabang, data.kode_loket)

data.clientAccounNum String Yes Agent’s account number

data.requestId String Yes Transaction id (unique, numeric)

data.requestTime String Yes Transaction’s time, format 'YYYY-MM-

DDTHH:mm:ss.SSS'+07:00

data.customerAccountNum String Yes Customer account as destination of Cash

withdrawal transaction

data.d_name String Yes Customer Name. Details refer to Notes

on service Description above

data.amount String Yes Customer’s withdrawal amount

data.customerOtp String Yes Customer Otp. Details refer to Notes on

service Description above

data.date String Yes Transaction date, format “yyyy-mm-dd”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR321",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "pin_transaksi": "12345",     "clientId": "IPY01400005", 

358/457

    "clientAccountNum": "116724773",    "requestId": "212121212",     "requestTime": "2015‐04‐09T18:12:00.431+07:00",     "customerAccountNum": "115208477",     "d_name": "nama dari response checkAccount",     "amount": "1750",     "customerOtp": "633278",     "date": "2016‐08‐30"   } } 

Response

Definition

Field Data Type Mandatory Description

trxType String Yes Transaction’s type,

“2” is for Cash WithDraw

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.transactionJournal String Yes Transaction’s journal

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.noRek String Yes Customer account as destination

of Cash withdrawal transaction

CustomerData.biaya_adm String Yes Admin fee

CustomerData.nominal String Yes Customer’s withdrawal amount

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "2",   "status": "success",   "data": {     "error": false,     "transactionJournal": "971281"   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": 00005,     "nama": "Heru Budiyanto",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "003\/005 Melai Murhum Kota Bau‐Bau Sulawesi Tenggara 93727"   },   "CustomerData": { 

359/457

    "noRek": "115208477",    "biaya_adm": null,     "nominal": "1750",     "time": "2016‐10‐13T16:46:00+07:00"   } } 

Error

response code

Response

(error)

{

"error": true,

"errorNum": "5005",

"message": "Sudah terjadi pendebetan silahkan tunggu beberapa saat"

}

2.3.5.4. Create OTP Create OTP

Description feature for Create OTP Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

360/457

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.customerAccountNum String Yes Customer’s account number

data.amount String Yes Customer’s bill amount

data.systemId String Yes Default “AGENT”

data.options String Yes Default “8”

data.applicationId String Yes Default “SMSTarikTunai”

data.channelId String Yes Default “PpoB”

data.keyValue String Yes Key Value.

Concat(data.customerAccountNum,

data.amount)

data.smsProviderId String Yes Default “MITRACOMM”

data.transactionType String Yes Default “PROD”

data.transactionId String Yes Transaction Id, length 6 digits, unique for

each transaction

data.transactionDate String Yes Transaction date, format 'YYYY-MM-

DDTHH:mm:ss.SSS'

data.responType String Yes Default “OK”

data.method String Yes Default “SENT”

data.message String Yes Default “PIN OTP ANDA ADALAH”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR332",   "data": {     "kode_mitra": " IPY",     "kode_cabang": "014",     "kode_loket": "00005", 

361/457

    "customerAccountNum": "4447",    "amount": "100000",     "systemId": "AGENT",     "options": "8",     "applicationId": "SMSTarikTunai",     "channelId": "PpoB",     "keyValue": "4447100000",     "smsProviderId": "MITRACOMM",     "transactionType": "PROD",     "transactionId": "210797",     "transactionDate": "2016‐05‐26T15:01:09.0700",     "responseType": "OK",     "method": "SENT",     "message": "PIN OTP ANDA ADALAH"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction’s type,

“2” is for Create OTP

status String Yes Transaction’s status

data.error String Yes Transaction status :

false : success

true : failed

data.message String Yes Message

data.responseStatus String Yes Response Status

data.responseReceivedDate String Yes Response Received Date

data.mobilePhone String Yes Mobile Phone Number

data.name String Yes Customer Name

time String Yes Transaction’s time

CustomerData.kode_mitra String Yes Code for MITRA. Same value

as request

CustomerData.kode_cabang String Yes BNI branch code. Same value

as request

CustomerData.kode_loket String Yes Code for counter of MITRA

which is registered in BNI H2H

system. Same value as request

CustomerData.customerAccountNum String Yes Customer’s account number.

Same value as request

CustomerData.amount String Yes Customer’s bill amount. Same

value as request

CustomerData.systemId String Yes Default “AGENT”

CustomerData.options String Yes Default “8”

CustomerData.applicationId String Yes Default “SMSTarikTunai”

CustomerData.channelId String Yes Default “PpoB”

362/457

CustomerData.keyValue String Yes Key Value. Same value as

request

CustomerData.smsProviderId String Yes Default “MITRACOMM”

CustomerData.transactionType String Yes Default “PROD”

CustomerData.transactionId String Yes Transaction Id. Same value as

request

CustomerData.transactionDate String Yes Transaction date. Same value

as request

CustomerData.responType String Yes Default “OK”

CustomerData.method String Yes Default “SENT”

CustomerData.message String Yes Default “PIN OTP ANDA

ADALAH”

CustomerData.handPhone1 String Yes Mobile Phone Number

Success

response code

HTTP 200

Response

(Success) {   "trxType": "2",   "status": "success",   "data": {     "error": false,     "message": "PIN OTP ANDA ADALAH 812870. Silakan datang ke Agen BNI 46 terdekat.",     "responseStatus": "OK",     "responseReceivedDate": "20160809T16:38:37:409",     "mobilePhone": "62811933946",     "name": "Ibu MARIA ROSA GINAWATI G"   },   "time": "2016‐08‐09T16:38:53+07:00",   "CustomerData": {     "kode_mitra": " IPY",     "kode_cabang": "014",     "kode_loket": "00005",     "customerAccountNum": "4447",     "amount": "100000",     "systemId": "AGENT",     "options": "8",     "applicationId": "SMSTarikTunai",     "channelId": "PpoB",     "keyValue": "4447100000",     "smsProviderId": "MITRACOMM",     "transactionType": "PROD",     "transactionId": "210797",     "transactionDate": "2016‐05‐26T15:01:09.0700",     "responseType": "OK",     "method": "SENT",     "message": "PIN OTP ANDA ADALAH",     "handPhone1": null   } } 

Error

363/457

response code

Response

(error)

{

"trxType": "2",

"status": "success",

"data": {

"error": true,

"errorNum": "0108",

"message": "Nomor Rekening tidak valid"

},

"time": "2016-08-09T16:47:58+07:00",

"CustomerData": {

"kode_mitra": " IPY",

"kode_cabang": "014",

"kode_loket": "00005",

"customerAccountNum": "4441",

"amount": "100000",

"systemId": "AGENT",

"options": "8",

"applicationId": "SMSTarikTunai",

"channelId": "PpoB",

"keyValue": "4447100000",

"smsProviderId": "MITRACOMM",

"transactionType": "PROD",

"transactionId": "210797",

"transactionDate": "2016-05-26T15:01:09.0700",

"responseType": "OK",

"method": "SENT",

"message": "PIN OTP ANDA ADALAH",

"handPhone1": null

}

}

2.3.5.5. Check Account Chect Account

Description feature for inquiry/checking BNI Account Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

364/457

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.systemId String Yes Default “AGENT”

data.accountNum String Yes Account number

data.options String Yes Default “8”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR310",   "data": {     "systemId": "AGENT",     "accountNum": "4447",     "options": "8"   } }

Response

Definition

Field Data

Type

Mandatory Description

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Check account description

data.d_currency String Yes Currency

data.d_status String Yes Status

data.d_product String Yes Account’s product name

data.d_homeBranch String Yes Account’s branch code

data.d_cifNum String Yes Customer’s CIF number

data.d_name String Yes Customer’s name

data.d_nameRek String Yes Customer’s name

data.d_currentBalance String Yes Account’s current balance

365/457

data.d_availableBalance String Yes Account’s available balance

data.d_openDate String Yes Account’s open date

data.d_address1 String Yes Customer’s address 1

data.d_address3 String Yes Customer’s address 3

data.d_postCode String Yes Customer’s account post code

data.d_homePhone String Yes Customer’s home phone

data.d_mobilePhone String Yes Customer’s mobile phone

data.d_address1AA String Yes Customer’s address (street)

data.d_address2AA String Yes Customer’s address (regency/city)

data.d_address3AA String Yes Customer’s address (village)

data.d_address4AA String Yes Customer’s address (district &

regency/city)

data.d_postCodeAA String Yes Customer’s account post code

data.accountProductType String Yes Account’s product type

data.d_accType String Yes Account type

data.d_subCat String Yes Sub category

data.d_availableInterest String Yes Available interest

data.d_lienBalance String Yes Lien balance

data.d_unclearBalance String Yes Unclear balance

data.d_interestRate String Yes Interest rate

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "checkAccount 00000000000004447",   "d_currency": "IDR",   "d_status": "BUKA",   "d_product": "BNI TAPLUS",   "d_homeBranch": "0259",   "d_cifNum": "00000009100160294",   "d_name": "Sdri TEST1  TEST3",   "d_nameRek": "",   "d_currentBalance": "13212624458300",   "d_availableBalance": "13212624458300",   "d_openDate": "2010‐05‐31",   "d_address1": "JALAN",   "d_address3": "DESA",   "d_postCode": "13890",   "d_homePhone": "",   "d_mobilePhone": "",   "d_address1AA": "JALAN",   "d_address2AA": "",   "d_address3AA": "DESA",   "d_address4AA": "DANAU KERINCI", 

366/457

  "d_postCodeAA": "13890",  "accountProductType": "DEP",   "d_accType": "2000",   "d_subCat": "0001",   "d_availableInterest": "0,00",   "d_lienBalance": "0,00",   "d_unclearBalance": "0,00",   "d_interestRate": "3,0000" } 

Error

response code

Response

(error)

{

"error": true,

"errorNum": "0108",

"message": " NO SUCH ACCOUNT "

}

2.3.5.6. Check Account Details Check Account Details

Description feature for inquiry/checkingBNI Account and BNI Virtual AccountDetails Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.accountNum String Yes Account number

367/457

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287 ",   "fiturId": "FTR301",   "data": {     "accountNum": " 9880055500000048"   } }

Response

Definition

Field Data

Type

Mandatory Description

data.error String Yes Transaction status :

false : success

true : failed

data.ket String Yes Check account description

data.d_accountCurrency String Yes Currency

data.d_status String Yes Status

data.d_branchNum String Yes Account’s branch code

data.d_accountType String Yes Account type

data.d_accountTypeCode String Yes Account type code

data.d_accountSubcatCode String Yes Sub category

data.d_metodeHitungBunga String Yes Interest calculation

method

data.d_tingkatSukuBunga String Yes Interest rate

data.d_accountName String Yes Account’s name

data.d_customerName String Yes Customer’s name

data.d_homePhoneNum String Yes Customer’s home phone

number

data.d_officePhoneNum String Yes Customer’s office phone

number

data.d_tanggalPembukaan String Yes Account’s open date

data.d_tanggalMaintainTerakhir String Yes Last maintain date

data.d_tanggalTransaksiFinansial String Yes Financial transaction date

data.d_tanggalBungaSebelumnya String Yes Previous interest date

data.d_tanggalBungaBerikutnya String Yes Next interest date

data.d_tanggalKadaluarsaVisa String Yes Visa expired date

data.d_saldoAkhir String Yes Account’s current balance

data.d_danaBelumEfektif String Yes Uneffective fund

data.d_nominalBelumDicetak String Yes Unprinted amount

data.d_bungaPerProvitHariIni String Yes Current profit interest

data.d_saldoBuku String Yes Book balance

data.d_nominalTanpaBunga String Yes Nominal without interest

data.d_saldoAkibatInflasi String Yes Inflation effect balance

368/457

data.d_adjBungaSebelumnya String Yes Previous interest

data.d_orderBukuCek String Yes Checkbook order

data.d_term String Yes Term

data.d_bungaSampaiHariIni String Yes Current interest

data.d_tanggalOverlimitTerakhir String Yes Last overlimit date

data.d_pphPendudukSampaiHariIni String Yes Citizen’s current PPH

data.d_pphNonPendudukSampaiHariIni String Yes Non citizen’s current PPH

data.d_bungaTunaiTersedia String Yes Available cash interest

data.d_visaPembelian String Yes Visa purchase

data.d_bicNum String Yes BIC number

data.d_frekuensiRekeningKoran String Yes Checking account

frequency

data.d_siklusRekeingKoran String Yes Checking account cycle

data.d_hariRekeningKoran String Yes Checking account day

data.d_alasanBukaRekening String Yes Reason for opening

account

data.d_alasanBukaRekening2 String Yes Reason for opening

account 2

data.d_sumberDana String Yes Source of fund

data.d_sumberDana2 String Yes Source of fund 2

data.d_perkiraanNominalSetoran String Yes Deposit nominal estimation

data.d_perkiraanNominalPenarikan String Yes Withdrawal nominal

estimation

data.d_tanggalProsesBukaRekening String Yes Opening account process

date

data.d_kodeKlafikasiGl String Yes GI classiffication code

data.d_perubahanTerakhirRekeninIni String Yes Account’s last update

data.d_nominalBungaOverdraft String Yes Overdraft interest nominal

data.d_tprRate String Yes TPR rate

data.d_nomorSertifikat String Yes Certificate number

data.d_provitAvailable String Yes Profit available

data.d_userIdPembukaRekening String Yes Customer’s user ID

Success

response code

HTTP 200

Response

(Success) {   "error": false,   "ket": "checkAccount 9880055500000048 ",   "d_accountCurrency": "IDR",   "d_status": "BUKA",   "d_branchNum": "0259",   "d_accountType": "BNI TAPLUS",   "d_accountTypeCode": "2000",   "d_accountSubcatCode": "0001",   "d_metodeHitungBunga": "DDCV", 

369/457

  "d_tingkatSukuBunga": " 3,0000",  "d_accountName": "",   "d_customerName": "ABHI FINANCE",   "d_homePhoneNum": "121212121212",   "d_officePhoneNum": "",   "d_tanggalPembukaan": "31/05/2010",   "d_tanggalMaintainTerakhir": "31/05/2010",   "d_tanggalTransaksiFinansial": "31/05/2010",   "d_tanggalBungaSebelumnya": "31/05/2010",   "d_tanggalBungaBerikutnya": "31/05/2010",   "d_tanggalKadaluarsaVisa": "",   "d_saldoAkhir": "  2.863.201.530,00",   "d_danaBelumEfektif": "              0,00",   "d_nominalBelumDicetak": "  1.502.881.318,00",   "d_bungaPerProvitHariIni": "            ,00000",   "d_saldoBuku": "  1.360.320.212,00",   "d_nominalTanpaBunga": "            ,00000",   "d_saldoAkibatInflasi": "0",   "d_adjBungaSebelumnya": "            ,00000",   "d_orderBukuCek": "",   "d_term": "",   "d_bungaSampaiHariIni": "              0,00",   "d_tanggalOverlimitTerakhir": "99/99/9999",   "d_pphPendudukSampaiHariIni": "0",   "d_pphNonPendudukSampaiHariIni": "0",   "d_bungaTunaiTersedia": "",   "d_visaPembelian": "",   "d_bicNum": "                ",   "d_frekuensiRekeningKoran": "N",   "d_siklusRekeingKoran": "",   "d_hariRekeningKoran": "",   "d_alasanBukaRekening": "0002",   "d_alasanBukaRekening2": "",   "d_sumberDana": "0001",   "d_sumberDana2": "",   "d_perkiraanNominalSetoran": "               88.0",   "d_perkiraanNominalPenarikan": "00.000,00",   "d_tanggalProsesBukaRekening": "31/05/2010",   "d_kodeKlafikasiGl": "0259IDR00002100113102",   "d_perubahanTerakhirRekeninIni": "99/99/9999",   "d_nominalBungaOverdraft": "            ,00000",   "d_tprRate": "  000000",   "d_nomorSertifikat": "",   "d_provitAvailable": "0",   "d_userIdPembukaRekening": "" } 

Error

response code

Response

(error)

{

"error": true,

"errorNum": "0108",

"message": "NO SUCH ACCOUNT"

370/457

}

2.3.6. AGENT MANAGEMENT

2.3.6.1. Agent Registration Agent Registration

Description feature for Agent Registration

Agent Registration flow :

Check Account(FTR310)

CDNAgent Registration 

(FTR311)

Notes :

1) Initial step 1 : check the BNI account number, that going to be used as Agent’s account number,

exist or not using FTR310

2) Initial step 2 : upload identity card image, please refer to service CDN.

After step 1 and 2 done, continue Agent Registration using FTR311.

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

TRA password

espectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

371/457

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_wil_bi String Yes BI (Bank Indonesia) region code, refer to

Appendix 2.5.8

data.lat String Yes Latitude of candidate agent

data.lng String Yes Longitude of candidate agent

data.status String Yes Default “0”

data.ktp String Yes Identity card number of candidate agent

data.no_npwp String Yes NPWP number of candidate agent

data.nama String Yes Name of candidate agent

data.jenis_pekerjaan String Yes Type of work of candidate agent, refer to

Appendix 2.5.6

data.email String Yes Email address of candidate agent

data.alamat_jalan String Yes Street address of candidate agent

data.alamat_rt String Yes Neighbourhood (RT) address of candidate

agent

data.kelurahan String Yes Urban village address of candidate agent

data.kecamatan String Yes Sub-districtaddress of candidate agent

data.kabupaten String Yes District address of candidate agent

data.provinsi String Yes Province address of candidate agent t

data.kodepos String Yes Zip Code of candidate agent

data.alamat_jalan_usaha String Yes Street address business of candidate agent

data.alamat_rt_usaha String Yes Neighbourhood (RT) address business of

candidate agent

data.kelurahan_usaha String Yes Urban village address business of candidate

agent

data.kecamatan_usaha String Yes Sub-districtaddress business of candidate

agent

data.kabupaten_usaha String Yes District address business of candidate agent

data.provinsi_usaha String Yes Province address business of candidate

agent t

data.kodepos_usaha String Yes Zip Code business of candidate agent

data.telp String Yes Phone number of candidate agent

data.hp String Yes Handphone number of candidate agent

372/457

data.accountNum String Yes BNI account number, that going to be used

as Agent’s account number (which is

check on Initial step 1, mention in the

service description above)

data.attachment String Yes Path of the image, which is upload on

Initial step 2.

Template value :

{

"register": (file_name_on_cdn)

"register2": (file_name_on_cdn)

}”

data.agent_type String Yes Default “["lakupandai","ePayment"]”

data.input_by String Yes User name of partner’s super Agent

data.manage_by String Yes User name of partner’s super Agent

data.kategori_agen String Yes Default “["R"]”

data.klasifikasi_agen String Yes Default “["A"]”

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR311",   "data": { 

    "kode_mitra": "BNI",     "kode_cabang": "259",     "kode_wil_bi": "0391",     "lat": "‐6.2023665",     "lng": "106.8127102",     "status": "0",     "ktp": "3652145874523654",     "no_npwp": "36541",     "nama": "wildan",     "jenis_pekerjaan": "30",     "email": "[email protected]",     "alamat_jalan": "cibubur",     "alamat_rt": "004",     "kelurahan": "Cempaka Putih Timur",     "kecamatan": "Cempaka Putih",     "kabupaten": "Kota Jakarta Pusat",     "provinsi": "DKI Jakarta",     "kodepos": "10510",     "alamat_jalan_usaha": "cibubur",     "alamat_rt_usaha": "004",     "kelurahan_usaha": "Cempaka Putih Timur",     "kecamatan_usaha": "Cempaka Putih",     "kabupaten_usaha": "Kota Jakarta Pusat",     "provinsi_usaha": "DKI Jakarta",     "kodepos_usaha": "10510",     "telp": "0214957845", 

373/457

    "hp": "081290710144",    "accountNum": "4447",     "attachment": { 

      "register": "agent/BNI_3652145874523654_1535360404.png",       "register2": "agent/BNI_3652145874523654_1535360406.png" 

    },     "agent_type": "lakupandai,lkd,ePayment,eCommerce,remittance",     "input_by": "BNI123456",     "manage_by": "BNI123456",     "kategori_agen": "R",     "klasifikasi_agen": "A"   } 

} Response

Definition

Field Data Type Mandatory Description

code String Yes Default “1” means process

successfull

ket String Yes Default “Success create temp

agent”

data.fieldCount String Yes Default “0”

data.affectedRows String Yes Number of effective row

data.insertId String Yes Inserted data Id

data.serverStatus String Yes Default “2”

data.warningCount String Yes Default “0”

data.message String Yes Default “”

data.protocol41 String Yes Default “true”

data.changedRows String Yes Default “0”

Success

response code

HTTP 200

Response

(Success) {   "code": "1",   "ket": "Success create temp agent",   "data": {     "fieldCount": 0,     "affectedRows": 1,     "insertId": 335,     "serverStatus": 2,     "warningCount": 0,     "message": "",     "protocol41": true,     "changedRows": 0   } } 

Error

response code

Response

(error)

{

"code": "-1",

"ket": "Agent sudah ada"

374/457

}

2.3.6.2. Get Temporary Agent List Get Temporary Agent List

Description feature to inquiry list of temporary agent that waiting for Approved by BNI

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes Default “000”

Data.search String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

375/457

kode_loket is “1234567”

data.voffset String Yes Starting record that want to be displayed.

Example :

voffset = 0 means starting record will be

record number 1

data.vlimit String Yes Number of record that want to be

displayed

Example :

vlimit = 5 means number of record will

be return is 5

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR309",   "data": {     "kode_mitra": "KTN",     "kode_cabang": "000",     "search": "",     "voffset": "0",     "vlimit": "5"   } } 

Response

Definition

Field Data Type Mandatory Description

code String Yes Default “1” means process

successfull

message String Yes Default “found” if there is data

exist

data.id String Yes Unikque record Id

data.no_ktp String Yes

data.no_npwp String Yes

data.nama String Yes

data.agent_type String Yes

data.jenis_pekerjaan String Yes

data.alamat_jalan String Yes

data.alamat_rt_perum String Yes

data.alamat_kelurahan String Yes

data.alamat_kecamatan String Yes

data.alamat_kabupaten_kota String Yes

data.alamat_propinsi String Yes

data.kodepos String Yes

data.no_tlp_rmh String Yes

data.no_tlp_hp String Yes

376/457

data.kode_wil_bi String Yes

data.kode_mitra String Yes

data.kode_cabang String Yes

data.tanggal_input String Yes

data.lat String Yes

data.lng String Yes

data.status_test String Yes

data.rules_due String Yes

data.rules_verify String Yes

data.rules_approve String Yes

data.verify_by String Yes

data.accountNum String Yes

data.input_by String Yes Username

Success

response code

HTTP 200

Response

(Success) {     "code": "1",     "message": "found",     "data": [         {             "id": 2,             "no_ktp": "E+15",             "no_npwp": "E+15",             "nama": "H. Warso",             "email": "[email protected]",             "agent_type": "lakupandai,pupuk,beras,pinjaman,bantuan,ePayment,lkd,asuransi_mikro,kur_mikro",             "jenis_pekerjaan": "27",             "alamat_jalan": "Kemamang",             "alamat_rt_perum": "02/01",             "alamat_kelurahan": "Balen",             "alamat_kecamatan": "Balen",             "alamat_kabupaten_kota": "KAB BOJONEGORO",             "alamat_propinsi": "Jawa Timur",             "kodepos": "62168",             "no_tlp_rmh": "7564322",             "no_tlp_hp": "62852321956790",             "kode_wil_bi": "1227",             "kode_mitra": "KTN",             "kode_cabang": "259",             "tanggal_input": "2017‐05‐15T07:10:00.000Z",             "lat": "",             "lng": "",             "status_test": "0.0",             "attachment": "{\"register\":\"agent/BNI_1123456789101110_1494388345.png\"}",             "rules_due": "1.0",             "rules_verify": "2.0",             "rules_approve": "3.0",             "verify_by": "NULL",             "accountNum": "1234567891.0", 

377/457

            "ori_password": "NULL",            "input_by": "TASKFORCE"         },         {             "id": 3,             "no_ktp": "1012345687191110",             "no_npwp": "334921499942900",             "nama": "Hj. Maemonah",             "email": "[email protected]",             "agent_type": "lakupandai,pupuk,beras,pinjaman,bantuan,ePayment,lkd,asuransi_mikro,kur_mikro",             "jenis_pekerjaan": "27",             "alamat_jalan": "Penganten",             "alamat_rt_perum": "03/01",             "alamat_kelurahan": "Balen",             "alamat_kecamatan": "Balen",             "alamat_kabupaten_kota": "KAB BOJONEGORO",             "alamat_propinsi": "Jawa Timur",             "kodepos": "62168",             "no_tlp_rmh": "7564323",             "no_tlp_hp": "62852321956791",             "kode_wil_bi": "1227",             "kode_mitra": "KTN",             "kode_cabang": "117",             "tanggal_input": "2017‐05‐15T07:10:00.000Z",             "lat": "",             "lng": "",             "status_test": "0",             "attachment": "{\"register\":\"agent/BNI_1012345687191110_1494388345.png\"}",             "rules_due": "1",             "rules_verify": "2",             "rules_approve": "3",             "verify_by": "NULL",             "accountNum": "1234567892",             "ori_password": "NULL",             "input_by": "TASKFORCE"         },         {             "id": 4,             "no_ktp": "1901234585281110",             "no_npwp": "434921499942900",             "nama": "Basuki Suryo Setiawan",             "email": "[email protected]",             "agent_type": "lakupandai,pupuk,beras,pinjaman,bantuan,ePayment,lkd,asuransi_mikro,kur_mikro",             "jenis_pekerjaan": "27",             "alamat_jalan": "Balen",             "alamat_rt_perum": "04/01",             "alamat_kelurahan": "Balen",             "alamat_kecamatan": "Balen",             "alamat_kabupaten_kota": "KAB BOJONEGORO",             "alamat_propinsi": "Jawa Timur",             "kodepos": "62168", 

378/457

            "no_tlp_rmh": "7564324",            "no_tlp_hp": "62852321956792",             "kode_wil_bi": "1227",             "kode_mitra": "KTN",             "kode_cabang": "117",             "tanggal_input": "2017‐05‐15T07:10:00.000Z",             "lat": "",             "lng": "",             "status_test": "0",             "attachment": "{\"register\":\"agent/BNI_1901234585281110_1494388345.png\"}",             "rules_due": "1",             "rules_verify": "2",             "rules_approve": "3",             "verify_by": "NULL",             "accountNum": "1234567893",             "ori_password": "NULL",             "input_by": "TASKFORCE"         },         {             "id": 5,             "no_ktp": "1790123483371110",             "no_npwp": "534921499942900",             "nama": "Lhita Mangeskhar Sakilla, SE",             "email": "[email protected]",             "agent_type": "lakupandai,pupuk,beras,pinjaman,bantuan,ePayment,lkd,asuransi_mikro,kur_mikro",             "jenis_pekerjaan": "27",             "alamat_jalan": "Margomulyo",             "alamat_rt_perum": "05/01",             "alamat_kelurahan": "Balen",             "alamat_kecamatan": "Balen",             "alamat_kabupaten_kota": "KAB BOJONEGORO",             "alamat_propinsi": "Jawa Timur",             "kodepos": "62168",             "no_tlp_rmh": "7564325",             "no_tlp_hp": "62852321956793",             "kode_wil_bi": "1227",             "kode_mitra": "KTN",             "kode_cabang": "117",             "tanggal_input": "2017‐05‐15T07:10:00.000Z",             "lat": "",             "lng": "",             "status_test": "0",             "attachment": "{\"register\":\"agent/BNI_1790123483371110_1494388345.png\"}",             "rules_due": "1",             "rules_verify": "2",             "rules_approve": "3",             "verify_by": "NULL",             "accountNum": "1234567894",             "ori_password": "NULL",             "input_by": "TASKFORCE"         },         { 

379/457

            "id": 6,             "no_ktp": "1979012381461110",             "no_npwp": "634921499942900",             "nama": "Lilih Hertanti",             "email": "[email protected]",             "agent_type": "lakupandai,pupuk,beras,pinjaman,bantuan,ePayment,lkd,asuransi_mikro,kur_mikro",             "jenis_pekerjaan": "27",             "alamat_jalan": "DS. SUWALOH",             "alamat_rt_perum": "06/01",             "alamat_kelurahan": "Balen",             "alamat_kecamatan": "Balen",             "alamat_kabupaten_kota": "KAB BOJONEGORO",             "alamat_propinsi": "Jawa Timur",             "kodepos": "62168",             "no_tlp_rmh": "7564326",             "no_tlp_hp": "62852321956794",             "kode_wil_bi": "1227",             "kode_mitra": "KTN",             "kode_cabang": "117",             "tanggal_input": "2017‐05‐15T07:10:00.000Z",             "lat": "",             "lng": "",             "status_test": "0",             "attachment": "{\"register\":\"agent/BNI_1979012381461110_1494388345.png\"}",             "rules_due": "1",             "rules_verify": "2",             "rules_approve": "3",             "verify_by": "NULL",             "accountNum": "1234567895",             "ori_password": "NULL",             "input_by": "TASKFORCE"         }     ],     "count": 6916 } 

Error

response code

Response

(error)

{

"trxType": "1",

"status": "success",

"data": {

"error": true,

"errorNum": "-2",

"message": "TRANSAKSI GAGAL : Pin transaksi salah"

},

"result": {

"kode_loket": "IPY01400005",

"kd_lkt": "00005",

"nama": "Agung",

380/457

"kode_cabang": "014",

"kode_mitra": "IPY",

"alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"

},

"CustomerData": {

"noRek": "555010",

"namaNasabah": "nama dari response checkAccount",

"noHP": null,

"nominal": "1000",

"time": "2018-01-31T11:28:11+07:00"

}

}

2.3.6.3. Get Agent Approved Get Agent Approved

Description feature for get list of agent that already approved by BNI

Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

381/457

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Default “00000”

data.start_date String Yes Start date of record that want to be

displayed.

Date format yyyy-mm-dd.

data.end_date String Yes End date of record that want to be

displayed.

Date format yyyy-mm-dd.

data.search String Yes Clue of record that want to be displayed.

data.voffset String Yes Starting record that want to be displayed.

Example :

voffset = 0 means starting record will be

record number 1

data.vlimit String Yes Number of record that want to be

displayed

Example :

vlimit = 5 means number of record will

be return is 5

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": " FTR325",   "data": {     "kode_mitra": "KTN",     "kode_loket": "00000",     "start_date": "2015‐12‐11",     "end_date": "2017‐07‐11",     "search": "",     "voffset": "0",     "vlimit": "5"   } } 

Response

Definition

Field Data Type Mandatory Description

code String Yes Default “1” means process

successfull

message String Yes Default “found” if there is data

exist

data.kode_agen String Yes Agent Code

data.kode_mitra String Yes Code for MITRA which is

registered in BNI H2H system.

382/457

This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

data.kode_cabang String Yes BNI branch code. This code is part

of the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which

is registered in BNI H2H system.

This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.nama String Yes Name of agent aprroved

data.no_ktp String Yes Identity card number of agent

aprroved

data.no_npwp String Yes NPWP number of agent aprroved

data.jenis_pekerjaan String Yes Type of work of agent aprroved,

refer to Appendix 2.5.6

data.alamat_jalan String Yes Street address ofagent aprroved

data.alamat_rt_perum String Yes Neighbourhood (RT) address

ofagent aprroved

data.alamat_kelurahan String Yes Urban village address ofagent

aprroved

data.alamat_kecamatan String Yes Sub-districtaddress ofagent

aprroved

data.alamat_kabupaten_kota String Yes District address ofagent aprroved

data.alamat_propinsi String Yes Province address ofagent

aprroved

data.kodepos String Yes Zip Code ofagent aprroved

data.no_tlp_rmh String Yes Phone number ofagent aprroved

data.no_tlp_hp String Yes Handphone number ofagent

aprroved

data.email String Yes Email address of agen approved

data.keterangan String Yes Approved by & datetime

data.status String Yes Default “0”

data.username String Yes Username of agent aprroved

count String Yes Number of records

383/457

Success

response code

HTTP 200

Response

(Success) {     "code": "1",     "message": "found",     "data": [         {             "kode_agen": "KTN117100031",             "kode_mitra": "KTN",             "kode_cabang": "117",             "kode_loket": "100031",             "nama": "Fitria Sari Utama",             "no_ktp": "1234567891011110",             "no_npwp": "134921499942900",             "jenis_pekerjaan": "27",             "alamat_jalan": "DS. KEMAMANG",             "alamat_rt_perum": "01/01",             "alamat_propinsi": "Jawa Timur",             "alamat_kabupaten_kota": "KAB BOJONEGORO",             "alamat_kecamatan": "Balen",             "alamat_kelurahan": "Balen",             "kodepos": "62168",             "no_tlp_rmh": "7564321",             "no_tlp_hp": "62852321956789",             "email": "[email protected]",             "keterangan": "BNI263462 pada 2017‐05‐17 13:55:51",             "status": "1",             "username": "KTNAG100031"         },         {             "kode_agen": "KTN224100032",             "kode_mitra": "KTN",             "kode_cabang": "224",             "kode_loket": "100032",             "nama": "Ir. Waras Hariyanto",             "no_ktp": "100012350490171000",             "no_npwp": "349214999434270",             "jenis_pekerjaan": "27",             "alamat_jalan": "Ds. Guranganyar",             "alamat_rt_perum": "08/06",             "alamat_propinsi": "Jawa Timur",             "alamat_kabupaten_kota": "KAB GRESIK",             "alamat_kecamatan": "Cerme",             "alamat_kelurahan": "Cerme",             "kodepos": "61171",             "no_tlp_rmh": "7564845",             "no_tlp_hp": "62852321957313",             "email": "[email protected]",             "keterangan": "BNI263462 pada 2017‐05‐18 15:26:48",             "status": "1",             "username": "KTNAG100032"         }     ], 

384/457

    "count": 2 } 

Error

response code

Response

(error)

{

"error": true,

"errorNum": "5005",

"message": "Sudah terjadi pendebetan silahkan tunggu beberapa saat"

}

2.3.6.4. Get Transaction List Get Transaction List

Description feature for get transaction list (successful transaction) Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

385/457

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code

is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.dari String Yes Start date of record that want to be

displayed.

Date format yyyy-mm-dd.

data.sampai String Yes End date of record that want to be

displayed.

Date format yyyy-mm-dd.

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR327",   "data": {     "kode_mitra": "IPY",     "kode_loket": "00005",     "kode_cabang": "014",     "dari": "2017‐08‐01",     "sampai": "2017‐08‐08"   } } 

Response

Definition

Field Data

Type

Mandatory Description

code String Yes Default “1” means process

successfull

data.transaksi_id String Yes Transaction id

data.no_jurnal String Yes Transaction’s journal

data.biller_type String Yes Transaction’s biller type

data.biller_code String Yes Transaction’s biller Code

data.biller_name String Yes Transaction’s biller name

data.no_rekening String Yes Customer’s account number.

Value will be available for

386/457

feature :

- Account Opening

- Cash Deposit

- Cash Withdrawal

- Transfer BNI Account

data.datetime String Yes Transaction’s datetime

data.via String Yes Default null

data.nominal String Yes Transaction’snominal

data.kode_outlet String Yes Agent Code

data.trxtype_id String Yes Transaction’s type

Success

response code

HTTP 200

Response

(Success) {     "code": "1",     "data": [         {             "transaksi_id": 931755,             "no_jurnal": "451956",             "biller_type": "AETRA",             "biller_code": "400",             "biller_name": "SRIYANTO",             "no_rekening": "",             "datetime": "2017‐08‐08T09:30:40.000Z",             "via": null,             "nominal": "Rp. 371558",             "kode_outlet": "IPY01400005",             "trxtype_id": "PEMBAYARAN PDAM"         },         {             "transaksi_id": 931723,             "no_jurnal": "447774",             "biller_type": "INFAQ_BAZNAS",             "biller_code": "INFAQ_BAZNAS",             "biller_name": "",             "no_rekening": "",             "datetime": "2017‐08‐04T04:14:30.000Z",             "via": null,             "nominal": "Rp. 123000",             "kode_outlet": "IPY01400005",             "trxtype_id": "ZAKAT DAN QURBAN"         },         {             "transaksi_id": 931686,             "no_jurnal": "904473",             "biller_type": "",             "biller_code": "2060010",             "biller_name": "",             "no_rekening": "116905817",             "datetime": "2017‐08‐02T06:14:32.000Z",             "via": null,             "nominal": "Rp. 1499", 

387/457

            "kode_outlet": "IPY01400005",            "trxtype_id": "Bantuan ‐ Pembelian"         },         {             "transaksi_id": 931683,             "no_jurnal": "904469",             "biller_type": "",             "biller_code": "2060010",             "biller_name": "",             "no_rekening": "116905817",             "datetime": "2017‐08‐02T04:27:53.000Z",             "via": null,             "nominal": "Rp. 1000",             "kode_outlet": "IPY01400005",             "trxtype_id": "Bantuan ‐ Pembelian"         },         {             "transaksi_id": 931681,             "no_jurnal": "904463",             "biller_type": "",             "biller_code": "3010001",             "biller_name": "",             "no_rekening": "",             "datetime": "2017‐08‐02T03:59:04.000Z",             "via": null,             "nominal": "Rp. 1800",             "kode_outlet": "IPY01400005",             "trxtype_id": "Pinjaman"         },         {             "transaksi_id": 931680,             "no_jurnal": "904457",             "biller_type": "",             "biller_code": "3010001",             "biller_name": "",             "no_rekening": "",             "datetime": "2017‐08‐02T03:14:32.000Z",             "via": null,             "nominal": "Rp. 581",             "kode_outlet": "IPY01400005",             "trxtype_id": "Pinjaman"         },         {             "transaksi_id": 931675,             "no_jurnal": "904456",             "biller_type": "",             "biller_code": "1010001",             "biller_name": "",             "no_rekening": "",             "datetime": "2017‐08‐02T01:37:42.000Z",             "via": null,             "nominal": "Rp. 1800",             "kode_outlet": "IPY01400005", 

388/457

            "trxtype_id": "Subsidi Pupuk"        },         {             "transaksi_id": 931673,             "no_jurnal": "904455",             "biller_type": "",             "biller_code": "2060022",             "biller_name": "",             "no_rekening": "116905817",             "datetime": "2017‐08‐02T01:04:55.000Z",             "via": null,             "nominal": "Rp. 10000",             "kode_outlet": "IPY01400005",             "trxtype_id": "Bantuan ‐ Pencairan ke Rekening"         },         {             "transaksi_id": 931672,             "no_jurnal": "904454",             "biller_type": "",             "biller_code": "2060022",             "biller_name": "",             "no_rekening": "116905817",             "datetime": "2017‐08‐02T01:03:57.000Z",             "via": null,             "nominal": "Rp. 10000",             "kode_outlet": "IPY01400005",             "trxtype_id": "Bantuan ‐ Pencairan Tunai"         },         {             "transaksi_id": 931671,             "no_jurnal": "904453",             "biller_type": "",             "biller_code": "2060010",             "biller_name": "",             "no_rekening": "116905817",             "datetime": "2017‐08‐02T00:32:21.000Z",             "via": null,             "nominal": "Rp. 10000",             "kode_outlet": "IPY01400005",             "trxtype_id": "Bantuan ‐ Pembelian"         }     ] } 

Error

response code

Response

(error)

{

"code": "1",

"data": []

}

389/457

2.3.6.5. Get One Transaction Get One Transaction

Description feature for get transaction details by transaction ID Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.transaksi_id String Yes Transaction id

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR324",   "data": {     "transaksi_id": "933663"   } } 

Response

Definition

Field Data

Type

Mandatory Description

code String Yes Default “1” means process

successfull

data.trxtype_id String Yes Type Request id

390/457

data.kode_mitra String Yes Code for MITRA which is

registered in BNI H2H

system. This code is part of

the agent code.

Example :

Agen Code :

ABC9991234567

data.kode_cabang String Yes BNI branch code. This code

is part of the agent code.

Example :

Agen Code :

ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA

which is registered in BNI

H2H system. This code is

part of the agent code.

Example :

Agen Code :

ABC9991234567

kode_loket is “1234567”

data.biller_name String Yes Biller Name

keterangan.trxtype String Yes Type Request

keterangan.status String Yes Transaction status

keterangan.data.error String Yes Transaction status :

false : success

true : failed

keterangan.data.ket String Yes Transaction description

keterangan.data.providerId String Yes Provider Id

keterangan.data.journal String Yes Transaction’s journal

keterangan.data.financialJournal String Yes Transaction’s Financial

journal

keterangan.data.tapcashNum String Yes Tap Cash Number

keterangan.data.accountNum String Yes Account Number

keterangan.data.voucherNum String Yes Voucher Number

keterangan.data.amount String Yes Amount

keterangan.data.reffNum String Yes Reference Number

keterangan.data.errorNum String Yes Error Number

keterangan.result.kode_loket String Yes Agent’s code

keterangan.result.kd_lkt String Yes Agent’s counter code

391/457

keterangan.result.nama String Yes Agent’s name

keterangan.result.kode_cabang String Yes Agent’s branch code

keterangan.result.kode_mitra String Yes Agent’s mitra code

keterangan.result.alamat String Yes Agent’s address

keterangan.CustomerData.biaya_adm String Yes Admin fee

keterangan.CustomerData.noTapcash String Yes Tap cash Number

keterangan.CustomerData.nominal String Yes Customer’s bill amount

keterangan.CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "code": "1",   "data": [{     "trxtype_id": "112",     "kode_mitra": "KSN",     "kode_cabang": "259",     "kode_loket": "50312",     "biller_name": "",     "keterangan": {       "trxType": "112",       "status": "success",       "data": {         "error": false,         "ket": "Top Up Tapcash",         "providerId": "BNI‐TAPCASH",         "journal": "923120026   ",         "financialJournal": "555900",         "tapcashNum": "7546130000012501",         "accountNum": "116908716",         "voucherNum": "           071117555900",         "amount": "50000",         "reffNum": "2017110715235163788450312",         "errorNum": ""       },       "result": {         "kode_loket": "KSN25950312",         "kd_lkt": "50312",         "nama": "KIOSON",         "kode_cabang": "259",         "kode_mitra": "KSN",         "alamat": "RT 4 Tangsel Setiabudi Jakarta Selatan DKI JAKARTA 12910"       },       "CustomerData": {         "biaya_adm": 0,         "no Tapcash": "7546130000012501",         "nominal": "50000",         "time": "2017‐11‐07T15:23:52+07:00"       }     }   }] 

392/457

} Error

response code

Response

(error)

{

"code": "-1",

"data": []

}

2.3.7. BNI LIFE MICRO INSURANCE

2.3.2.8. Micro Insurance – Inquiry Micro Insurance Inquiry

Description feature for inquiry of micro insurance Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.billingId1 String Yes Customer ID (e-KTP)

data.billingId2 String Yes Customer name

data.billingId3 String Yes Customer date of birth, format DD/MM/YYYY

data.billingId4 String Yes Customer phone number

data.billingId5 String Yes Customer product code, refer to Appendix 2.5.9

393/457

data.billingId6 String Yes Customer plan code, refer to Appendix 2.5.9

data.billingId7 String Yes Agent account number

data.billingId9 String Yes BNI Agent code. Combination of kode_mitra,

kode_cabang, and kode_loket

data.billingId10 String Yes Agent name

data.billingId11 String Yes Agent location

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR510",   "data": {     "billingId1": "1234567812345678",     "billingId2": "nama",     "billingId3": "09/04/1990",     "billingId4": "6281234567890",     "billingId5": "AMLP",     "billingId6": "AMLPA1",     "billingId7": "115208477",     "billingId9": "BNI25950299",     "billingId10": "Firda A'gen",     "billingId11": "JAKARTA PUSAT"   } }

Response

Definition

Field Data

Type

Mandatory Description

error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

h_identitynumber * String Yes Customer ID

h_name * String Yes Customer name

h_dateofbirth * String Yes Customer date of birth

h_phone * String Yes Customer phone number

h_product * String Yes Insurance product code, refer to

Appendix 4.1.3

h_planType * String Yes Insurance plan code, refer to

Appendix 4.1.3

h_accountowner String Yes Account owner

h_agentcode String Yes Agent code

h_agentname String Yes Agent name

h_agentlocation String Yes Agent location

h_registrationnumber String Yes Transaction registration number

h_accountNumber String Yes Agent account number

h_paidAmount String Yes Transaction paid amount

394/457

h_totalAmount String Yes Transaction total amount

c_fee String Yes Transaction fee

h_policyNumber String Yes Policy number

h_responseCode String Yes Transaction response code

h_responseDesc String Yes Transaction response description

h_startDate String Yes Transaction start date

h_endDate String Yes Transaction end date

h_amountPlan String Yes Transaction amount plan

errorNum String Yes Transaction error number

Success

response code

HTTP 200

Response

(Success) {     "error": false,     "h_identitynumber": "1234567812345678",     "h_name": "nama",     "h_dateofbirth": "09/04/1990",     "h_phone": "6281234567890",     "h_product": "AMLP",     "h_planType": "AMLPA1",     "h_accountowner": "",     "h_agentcode": "BNI25950299",     "h_agentname": "Firda A'gen",     "h_agentlocation": "JAKARTA PUSAT",     "h_registrationnumber": "77686101066457035",     "h_accountNumber": "115208477",     "h_paidAmount": "25000",     "h_totalAmount": "25000",     "c_fee": "0",     "h_policyNumber": "AMLP917017000018",     "h_responseCode": "00",     "h_responseDesc": "SUKSES",     "h_startDate": "04/01/2017",     "h_endDate": "04/04/2017",     "h_amountPlan": "20000000",     "errorNum": "" }

Error response

code

Response

(error) {     "error": true,     "errorNum": "BL90",     "message": "Pembelian Polis hanya dapat dilakukan pada jam 05.00 s.d. 21.00 WIB. Silakan mencoba lagi pada jam tersebut",     "ori_errorNum": "BL90",     "ori_message": "(BNILIFE) TRANSAKSI DILAKUKAN SAAT PROSES EOD" } 

2.3.2.9. Micro Insurance– Payment Micro Insurance Payment

395/457

Description feature for payment of micro insurance Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username and

password are set

by MITRA

username and

MITRA password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after

MITRA registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

396/457

kode_cabang is “999”

data.pin_transaksi String Yes Agent PIN transaction

data.reffNum String Yes Reference number which is

combination of [transaction date] .

[random number] . [agen counter

code]

Note :

1. transaction date

• Format :

date('yyyymmddhhmmsszzzzz ')

• Length : 19 digit

2. random number : random 0-9

• length : 1 digit

3. agen counter code : code for

counter of MITRA

Example :

reffNum

=20170607110019123450100021

data.h_identitynumber String Yes Customer ID

data.h_name String Yes Customer name

data.h_dateofbirth String Yes Customer date of birth

data.h_phone String Yes Customer phone number

data.h_product String Yes Insurance product code

data.h_planType String Yes Insurance plan code

data.h_accountowner String Yes Account owner

data.h_agentcode String Yes Agent code

data.h_agentname String Yes Agent name

data.h_agentlocation String Yes Agent location

data.h_registrationnumber String Yes Transaction registration number

data.h_accountNumber String Yes Agent account number

data.h_paidAmount String Yes Transaction paid amount

data.h_totalAmount String Yes Transaction total amount

data.c_fee String Yes Transaction fee

data.h_policyNumber String Yes Policy number

data.h_startDate String Yes Transaction start date

data.h_endDate String Yes Transaction end date

data.h_amountPlan String Yes Transaction amount plan

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": "FTR511", 

397/457

  "data": {     "kode_mitra": "BNI",     "kode_loket": "50299",     "kode_cabang": "259",     "reffNum": "20180410143106050299",     "h_identitynumber": "1234567812345678",     "h_name": "nama",     "h_dateofbirth": "09/04/1990",     "h_phone": "6281234567890",     "h_product": "AMLP",     "h_planType": "AMLPA1",     "h_accountowner": "",     "h_agentcode": "BNI25950299",     "h_agentname": "Firda A'gen",     "h_agentlocation": "JAKARTA PUSAT",     "h_registrationnumber": "77686160718308988",     "h_accountNumber": 115208477,     "h_paidAmount": "25000",     "h_totalAmount": "25000",     "c_fee": "0",     "h_policyNumber": "AMLP917017000018",     "h_startDate": "04/01/2017",     "h_endDate": "04/04/2017",     "h_amountPlan": "20000000",     "pin_transaksi": "12345"   } }

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction type.

“301” is for Micro Insurance 

payment

status String Yes Connection status with 3rdparties.

data.error String Yes Transaction status.

If transaction is success, value

will be “false” else “true”

data.h_identitynumber * String Yes Customer ID

data.h_name * String Yes Customer name

data.h_dateofbirth * String Yes Customer date of birth

data.h_phone * String Yes Customer phone number

data.h_product * String Yes Insurance product code

data.h_planType * String Yes Insurance plan code

data.h_accountowner String Yes Account owner

data.h_agentcode String Yes Agent code

data.h_agentname String Yes Agent name

data.h_agentlocation String Yes Agent location

data.h_registrationnumber String Yes Transaction registration number

398/457

data.h_accountNumber String Yes Agent account number

data.h_paidAmount String Yes Transaction paid amount

data.h_totalAmount * String Yes Transaction total amount

data.fee * String Yes Transaction fee

data.h_policyNumber * String Yes Policy number

data.h_responseCode String Yes Transaction response code

data.h_responseDesc String Yes Transaction response description

data.h_startDate * String Yes Transaction start date

data.h_endDate * String Yes Transaction end date

data.h_amountPlan String Yes Transaction amount plan

data.journalNumber * String Yes Transaction journal number

data.transactionDate String Yes Transaction date

data.errorNum String Yes Transaction error number

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

CustomerData.biaya_adm String Yes Transaction admin fee

CustomerData.noRek String Yes Agent account number

CustomerData.noHP String Yes Customer phone number

CustomerData.nominal String Yes Transaction nominal

CustomerData.time String Yes Transaction datetime

Success

response code

HTTP 200

Response

(Success) {     "trxType": "301",     "status": "success",     "data": {         "error": false,         "h_identitynumber": "1234567812345678",         "h_name": "nama",         "h_dateofbirth": "09/04/1990",         "h_phone": "6281234567890",         "h_product": "AMLP",         "h_planType": "AMLPA1",         "h_accountowner": "",         "h_agentcode": "BNI25950299",         "h_agentname": "Firda A'gen",         "h_agentlocation": "JAKARTA PUSAT",         "h_registrationnumber": "77686160718308988",         "h_accountNumber": "115208477",         "h_paidAmount": "25000",         "h_totalAmount": "25000",         "fee": "0",         "h_policyNumber": "AMLP917017000018", 

399/457

        "h_responseCode": "00",        "h_responseDesc": "SUKSES",         "h_startDate": "04/01/2017",         "h_endDate": "04/04/2017",         "h_amountPlan": "20000000",         "journalNumber": "258350",         "transactionDate": "2018‐04‐10T14:35:03",         "errorNum": ""     },     "result": {         "kode_loket": "BNI25950299",         "kd_lkt": "50299",         "nama": "Firda A'gen",         "kode_cabang": "259",         "kode_mitra": "BNI",         "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"     },     "CustomerData": {         "biaya_adm": "0",         "noRek": 115208477,         "noHP": "6281234567890",         "nominal": "25000",         "time": "2018‐04‐10T14:33:15+07:00"     } 

} Error response

code

Response

(error) {     "trxType": "301",     "status": "success",     "data": {         "error": true,         "errorNum": "0417",         "message": "Maaf, transaksi tidak dapat diproses.",         "ori_errorNum": "0417",         "ori_message": "(ICONS) NOMINAL TIDAK BOLEH NOL"     },     "result": {         "kode_loket": "BNI25950299",         "kd_lkt": "50299",         "nama": "Firda A'gen",         "kode_cabang": "259",         "kode_mitra": "BNI",         "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"     },     "CustomerData": {         "noRek": 115208477,         "noHP": "6281234567890",         "nominal": "0",         "time": "2018‐04‐10T16:00:16+07:00"     } }

400/457

2.3.2.10. Micro Insurance Reprint Micro Insurance Reprint

Description feature for BNI Life Micro Insurance Reprint Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Type Request. Default “trans”

dealerId String Yes Dealer id for each BNI’s Mitra

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in

BNI H2H system. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_cabang String Yes BNI branch code. This code is part of

the agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This

code is part of the agent code.

401/457

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.agent_id String Yes Agent Code

data.billingId1 String Yes Transaction’s start date, format

DD/MM/YYYY

data.billingId2 String Yes Transaction’s end date, format

DD/MM/YYYY

data.billingId3 String Yes Customer ID (e-KTP)

data.billingId4 String Yes Customer’s birth date, format

DD/MM/YYYY

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2214860948771287",   "fiturId": "FTR512",   "data": {     "kode_mitra": "BNI",     "kode_cabang": "259",     "kode_loket": "50299",     "agent_id": "BNI25950299",     "billingId1": "10/01/2017",     "billingId2": "10/07/2017",     "billingId3": "1234567890123453",     "billingId4": "15/12/1988"   } }

Response

Definition

Field Data

Type

Mandatory Description

status String Yes Connection

status with

3rdparties.

data.error String Yes Transaction

status.

If transaction is

success, value

will be “false” 

else “true”

data.ket String Yes Default “Mikro

Cetak Ulang”

data.PAYMENT_TYPE String Yes Transaction

payment type

data.CHANNEL String Yes Transaction

402/457

channel

data.MCP_ID String Yes Transaction

MCP_ID

data.sumContent String Yes Number of

content details

contentDetails_output.h_identitynumber String Yes Customer ID

contentDetails_output.h_name String Yes Customer name

contentDetails_output.h_dateofbirth String Yes Customer date

of birth

contentDetails_output.h_phone String Yes Customer phone

number

contentDetails_output.h_product String Yes Insurance

product code

contentDetails_output.h_planType String Yes Insurance plan

code

contentDetails_output.h_accountowner String Yes Account owner

contentDetails_output.c_journalNumber String Yes Transaction

journal number

contentDetails_output.h_agentcode String Yes Agent code

contentDetails_output.h_agentname String Yes Agent name

contentDetails_output.h_agentlocation String Yes Agent location

contentDetails_output.h_registrationnumber String Yes Transaction

registration

number

contentDetails_output.h_transactionDate String Yes Transaction date

contentDetails_output.h_accountNumber String Yes Transaction

account number

contentDetails_output.c_payMethod String Yes Paying method

contentDetails_output.c_description String Yes Description

contentDetails_output.h_currency String Yes Currency

contentDetails_output.h_paidAmount String Yes Transaction paid

amount

contentDetails_output.h_totalAmount String Yes Transaction total

amount

contentDetails_output.c_fee String Yes Transaction fee

contentDetails_output.h_policyNumber String Yes Policy number

contentDetails_output.h_responseCode String Yes Transaction

response code

contentDetails_output.h_responseDesc String Yes Transaction

response

description

contentDetails_output.h_startDate String Yes Transaction start

date

contentDetails_output.h_endDate String Yes Transaction end

403/457

date

contentDetails_output.h_amountPlan String Yes Transaction

amount plan

data.errorNum String Yes Transaction

error number

result.kode_loket String Yes Agent code

result.kd_lkt String Yes Code for counter

of MITRA

result.nama String Yes Agent name

result.kode_cabang String Yes BNI branch code

result.kode_mitra String Yes Code for MITRA

result.alamat String Yes Agent address

Success

response code

HTTP 200

Response

(Success) {     "status": "success",     "data": {         "error": false,         "ket": "Mikro Cetak Ulang",         "PAYMENT_TYPE": "BNILIFE_REINQ",         "CHANNEL": "AGENT",         "MCP_ID": "BNILIFE_REINQ",         "sumContent": "3",         "contentDetails_output": [             {                 "h_identitynumber": "1234567890123453",                 "h_name": "USD",                 "h_dateofbirth": "15/12/1988",                 "h_phone": "081245845785",                 "h_product": "AMLP",                 "h_planType": "AMLPA2",                 "h_accountowner": "",                 "c_journalNumber": "012057",                 "h_agentcode": "123",                 "h_agentname": "tesAgent",                 "h_agentlocation": "tes",                 "h_registrationnumber": "661484022463559",                 "h_transactionDate": "2017‐01‐10T11:28:01",                 "h_accountNumber": "115428812",                 "c_payMethod": "2",                 "c_description": "TES",                 "h_currency": "IDR",                 "h_paidAmount": "17500",                 "h_totalAmount": "17500",                 "c_fee": "0",                 "h_policyNumber": "AMLP917017000036",                 "h_responseCode": "00",                 "h_responseDesc": "SUKSES",                 "h_startDate": "10/01/2017",                 "h_endDate": "10/07/2017", 

404/457

                "h_amountPlan": "20000000"            },             {                 "h_identitynumber": "1234567890123453",                 "h_name": "USD",                 "h_dateofbirth": "15/12/1988",                 "h_phone": "081245845785",                 "h_product": "AMLP",                 "h_planType": "AMLPA2",                 "h_accountowner": "",                 "c_journalNumber": "012063",                 "h_agentcode": "123",                 "h_agentname": "tesAgent",                 "h_agentlocation": "tes",                 "h_registrationnumber": "661484022463559",                 "h_transactionDate": "2017‐01‐10T11:34:31",                 "h_accountNumber": "115428812",                 "c_payMethod": "2",                 "c_description": "TES",                 "h_currency": "IDR",                 "h_paidAmount": "17500",                 "h_totalAmount": "17500",                 "c_fee": "0",                 "h_policyNumber": "AMLP917017000036",                 "h_responseCode": "00",                 "h_responseDesc": "SUKSES",                 "h_startDate": "10/01/2017",                 "h_endDate": "10/07/2017",                 "h_amountPlan": "20000000"             },             {                 "h_identitynumber": "1234567890123453",                 "h_name": "USD",                 "h_dateofbirth": "15/12/1988",                 "h_phone": "081245845785",                 "h_product": "AMLP",                 "h_planType": "AMLPA2",                 "h_accountowner": "",                 "c_journalNumber": "012062",                 "h_agentcode": "123",                 "h_agentname": "tesAgent",                 "h_agentlocation": "tes",                 "h_registrationnumber": "661484022463559",                 "h_transactionDate": "2017‐01‐10T11:32:09",                 "h_accountNumber": "115428812",                 "c_payMethod": "2",                 "c_description": "TES",                 "h_currency": "IDR",                 "h_paidAmount": "17500",                 "h_totalAmount": "17500",                 "c_fee": "0",                 "h_policyNumber": "AMLP917017000036",                 "h_responseCode": "00", 

405/457

                "h_responseDesc": "SUKSES",                "h_startDate": "10/01/2017",                 "h_endDate": "10/07/2017",                 "h_amountPlan": "20000000"             }         ],         "errorNum": ""     },     "result": {         "kode_loket": "BNI25950299",         "kd_lkt": "50299",         "nama": "Firda A'gen",         "kode_cabang": "259",         "kode_mitra": "BNI",         "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"     } }

Error response

code

Response

(error) {     "status": "success",     "data": {         "error": true,         "errorNum": "",         "message": "",         "ori_errorNum": ""     },     "result": {         "kode_loket": "BNI25950299",         "kd_lkt": "50299",         "nama": "Firda A'gen",         "kode_cabang": "259",         "kode_mitra": "BNI",         "alamat": "01/01 Setiabudi Setia Budi Kota Jakarta Selatan DKI Jakarta 12910"     } }

2.3.8. CDN CDN

Description feature for Upload Photos Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/cdn

HTTP Headers Name Format Mandatory Description

Content-Type multipart/form-data Yes

X-Auth base64(username + ":"+password) Yes Username and password

are set by MITRA

406/457

username and MITRA

password respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Exp full url https://{BNIServer}:{port}/keagenan/cdn?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request

Body Key Value Type Deskripsi photo File (image

file)

Images files

name Mapping

name for

images

uploaded

Text Example :

agent/BNI_351218290819900004_1432198760.jpg

Response

Definition Key Value Type Deskripsi

Code 1 String Transaction status :

1 : success

-1 : failed

Message File Moved

Successfully

String Transaction message

Success

response code

HTTP 200

Response

(Success) {     "code": "1",     "message": "File moved successfully" } 

Error

response code

Response

(error)

{

"status": false,

"code": "-4",

"data": "Parameter Not Valid"

} NOTES Notes :

Mapping name of Identity Card image for Agent Registration :

agent/{mitra_code}_{identity_card_number}_{time}.{extenstion}

Mapping name of photo image for Account Opening :

pendaftaran/{mitra_code}_{identity_card_number}_{time}.{extenstion}

Mapping name of Identity Card image for Account Opening :

pendaftaran/{mitra_code}_{identity_card_number}_ktp_reg_{time}.{extensti

407/457

on}

2.3.9. REMITTANCE

2.3.9.1. Remittance – Search Remittance Search

Description feature for search list PO base on corespondent refference number Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after MITRA

registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H

system. This code is part of the agent code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is registered

in BNI H2H system. This code is part of the

agent code.

Example :

408/457

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.agent_id String Yes Agent Code

data.reff String Yes Pin / Reference Corespondent

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": " FTR601",   "data": {     "kode_mitra": "IPY",     "kode_cabang": "014",     "kode_loket": "00005",     "agent_id": "IPY01400005",     "reff": "33XX541285694"   } } 

Response

Definition

Field Data

Type

Mandatory Description

status String Yes Transaction status

data.error String Yes Transaction status.

If transaction is

success, value will

be “false” else 

“true”

data.ket String Yes Customer name

data.poType String Yes PO type

data.remitStatus String Yes Remittance Status

data.totalrecords String Yes Total records

data.s06Record_output.reffCorrespondent String Yes Reff Corespondent

data.s06Record_output.bicCover String Yes Bic Cover

data.s06Record_output.referenceNum String Yes Reference Number

data.s06Record_output.counterAdvis String Yes Counter Advis

data.s06Record_output.poType String Yes PO Type

data.s06Record_output.poDate String Yes PO Date

data.s06Record_output.amountCurrency String Yes Amount Currency

data.s06Record_output.amount String Yes Amount

409/457

data.s06Record_output.senderName String Yes Sender Name

data.s06Record_output.beneficiaryName String Yes Beneficiary Name

data.s06Record_output.remitStatus String Yes Remittance Status

data.errorNum String Yes Error Number

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter

code

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch

code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

Success

response code

HTTP 200

Response

(Success) {   "status": "success",   "data": {     "error": false,     "ket": "Remittance",     "poType": "CSH",     "remitStatus": "0",     "totalRecords": "1",     "s06Record_output": [{         "reffCorrespondent": "33XX541285694   ",         "bicCover": "TRANUS31XXX",         "refferenceNum": "S06ITR0004873516",         "counterAdvis": "ITR048735",         "poType": "CSH",         "poDate": "2010‐05‐31",         "amountCurrency": "IDR",         "amount": "15.000",         "senderName": "SDR FAISAL KAMIL                   ",         "beneficiaryName": "TRANSFAST TEST                     ",         "remitStatus": "0"       }     ],     "errorNum": ""   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   } }

Error response

code

410/457

Response

(error) {     "status": "success",     "data": {         "error": true,         "errorNum": "5007",         "ori_errorNum": "5007",         "message": "Maaf PIN/Ref Coresponden salah atau sudah dicairkan"     } } 

2.3.9.2. Remittance – Inquiry Remittance Inquiry

Description feature for inquiry of PO detail before disbursed Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by BNI after

MITRA registration done.

fiturId String Yes Feature Id, refer to Appendix 2.5.1

411/457

data.kode_mitra String Yes Code for MITRA which is registered in BNI

H2H system. This code is part of the agent

code.

Example :

Agen Code : ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA which is

registered in BNI H2H system. This code is

part of the agent code.

Example :

Agen Code : ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is part of the

agent code.

Example :

Agen Code : ABC9991234567

kode_cabang is “999”

data.referenceNum String Yes Reference Number. Same value as Search

response

data.counterAdvis String Yes Counter Advice. Same value as Search

response

data.status String Yes Status. Same value as Search response

data.amountCurrency String Yes AmountCurrency. Same value as Search

response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": " FTR602",   "data": {     "kode_mitra": "IPY",     "kode_cabang": "014",     "kode_loket": "00005",     "refferenceNum": "S06ITR0004873516",     "counterAdvis": "ITR048735",     "status": "0",     "amountCurrency": "IDR"   } } 

Response

Definition

Field Data

Type

Mandatory Description

412/457

soapResults.error String Yes Transaction status.

If transaction is

success, value will

be “false” else 

“true”

soapResults.coreJurnal String Yes Transaction’s

jurnal

soapResults.refferenceNum String Yes Transaction

refererence

number

soapResults.counterAdvis String Yes Counter Advis

soapResults.trxDate String Yes Transaction’s date

soapResults.trxStatus String Yes Transaction’s

status

soapResults.remmAmount String Yes Remm Amount

soapResults.remmAmountCurrency String Yes Remm Amount

Currency

soapResults.remmAmountStr String Yes Remm Amount

String

soapResults.trxCharges String Yes Transaction’s

Charges

soapResults.refundCharge String Yes Refund Charge

soapResults.rateType String Yes Rate type

soapResults.beneficiaryName String Yes Beneficiary Name

soapResults.beneficiaryAddress String Yes Beneficiary

Address

soapResults.senderName String Yes Sender Name

soapResults.senderAddress String Yes Sender Address

soapResults.nonSTPReason String Yes Non STP Reason

soapResults.naration String Yes Naration

soapResults.senderBank String Yes Sender Bank

soapResults.coveringBank String Yes Covering Bank

soapResults.coverRefference String Yes Cover Refference

soapResults.coverAccount String Yes Cover Account

soapResults.branchNum String Yes Branch Number

soapResults.debitAccountNum String Yes Debit Account

Number

soapResults.creditAccountNum String Yes Credit Account

Number

soapResults.chargeType String Yes Charge Type

soapResults.amdCharges String Yes Amd Charges

soapResults.xtrCharges String Yes Extra Charges

soapResults.totTrxCharges String Yes Total Extra

413/457

Charges

soapResults.totTrxChargesStr String Yes Total Extra

Charges String

soapResults.paymentCurrency String Yes Payment Currency

soapResults.creditAmount String Yes Credit Amount

soapResults.creditAmountStr String Yes Credit Amount

String

soapResults.paymentType String Yes Payment Type

soapResults.errorNum String Yes Error Number

soapResults.paymentAgent String Yes Payment Agent

soapResults.creditAccountNumStr String Yes Credit Account

Number String

Success

response code

HTTP 200

Response

(Success) {     "soapResults": {         "error": false,         "coreJournal": "261355",         "refferenceNum": "S06ITR0004873516",         "counterAdvis": "ITR048735",         "trxDate": "31/05/2010",         "trxStatus": "Dapat Dibayarkan",         "remmAmount": "15000.000",         "remmAmountCurrency": "IDR",         "remmAmountStr": "15.000 ‐ IDR",         "trxCharges": "0",         "refundCharge": "50.000",         "rateType": "03",         "beneficiaryName": "SDR FAISAL KAMIL",         "beneficiaryAddress": "INDONESIA INDONESIA 1234597890",         "senderName": "TRANSFAST TEST",         "senderAddress": "USA NEW YORK 1234567890",         "nonSTPReason": "CASH",         "naration": "TEST CASH PICKUP TEST CASH PICKUP",         "senderBank": "TRANS FAST REMITTANCE LLC, NEW YORK",         "coveringBank": "TRANUS31XXX",         "coverRefference": "33XX541285694",         "coverAccount": "116886917",         "branchNum": "0766",         "debitAccountNum": "116886917",         "creditAccountNum": 4447,         "chargeType": "OUR",         "amdCharges": "0",         "xtrCharges": "0",         "totTrxCharges": "0.000",         "totTrxChargesStr": "0 ‐ IDR",         "paymentCurrency": "IDR/Rupiah",         "creditAmount": "15000.000",         "creditAmountStr": "IDR 15.000",         "paymentType": "Tunai", 

414/457

        "errorNum": "",         "paymentAgent": "IPY01400005 ‐ Agung",         "creditAccountNumStr": "4447 ‐ IDR"     } }

Error response

code

Response

(error) {   "soapResults": {     "error": true,     "errorNum": "0545",     "message": "Maaf, transaksi tidak dapat diproses."   } } 

2.3.9.3. Remittance – Payment Remittance Payment

Description feature for PO disbursed Hostname https://apidev.bni.co.id

Port 8066

HTTP Method POST

Path /keagenan/transaction

HTTP Headers Name Format Mandatory Description

content-Type application/json Yes

X-Auth base64(username":"+password) Yes Username

and password

are set by

MITRA

username and

MITRA

password

respectively

Query string

parameters

Name Format Mandatory Description

access_token String Yes Token provided from gettoken request

Format Json

Authentication Oauth 2.0 ( client credential )

Request

Definition

Field Data

Type

Mandatory Description

typereq String Yes Request type. Default “trans”

dealerId String Yes MITRA dealer Id. Shared by

BNI after MITRA registration

done.

fiturId String Yes Feature Id, refer to Appendix

2.5.1

415/457

data.kode_mitra String Yes Code for MITRA which is

registered in BNI H2H system.

This code is part of the agent

code.

Example :

Agen Code :

ABC9991234567

kode_mitra is “ABC”

data.kode_loket String Yes Code for counter of MITRA

which is registered in BNI H2H

system. This code is part of

the agent code.

Example :

Agen Code :

ABC9991234567

kode_loket is “1234567”

data.kode_cabang String Yes BNI branch code. This code is

part of the agent code.

Example :

Agen Code :

ABC9991234567

kode_cabang is “999”

data.pin_transaksi String Yes Agent’s transaction pin

data.reffCorrespondent String Yes Transaction’s jurnal. Same

value as Search response

data.refferenceNum String Yes Transaction refererence

number. Same value as Search

response

data.counterAdvis String Yes Counter Advis. Same value as

Inquiry response

data.remmAmount String Yes Remm Amount. Same value as

Inquiry response

data.remmAmountCurrency String Yes Remm Amount Currency.

Same value as Inquiry

response

data.trxCharges String Yes Transaction’s Charges. Same

value as Inquiry response

data.refundCharge String Yes Refund Charge. Same value as

Inquiry response

data.creditAmount String Yes Credit Amount. Same value as

Inquiry response

416/457

data.creditAmountCurrency String Yes Credit Amount String. Same

value as Inquiry response

data.baseAmount String Yes Base Amount. Same value as

Inquiry response

data.creditAccountNum String Yes Credit Account Number. Same

value as Inquiry response

data.rateType String Yes Rate type. Same value as

Inquiry response

data.amdCharges String Yes Amd Charges. Same value as

Inquiry response

data.xtrCharges String Yes Extra Charges. Same value as

Inquiry response

data.senderName String Yes Sender Name. Same value as

Inquiry response

data.senderAddress String Yes Sender Address. Same value

as Inquiry response

data.senderBank String Yes Sender Bank. Same value as

Inquiry response

data.beneficiaryName String Yes Beneficiary Name. Same value

as Inquiry response

data.beneficiaryAddress String Yes Beneficiary Address. Same

value as Inquiry response

data.paymentType String Yes Payment Type. Same value as

Inquiry response

data.paymentCurrency String Yes Payment Currency. Same

value as Inquiry response

data.totTrxCharges String Yes Total Extra Charges. Same

value as Inquiry response

data.totTrxChargesStr String Yes Total Extra Charges String

data.remmAmountStr String Yes Remm Amount String. Same

value as Inquiry response

Exp full url https://{BNIServer}:{port}/keagenan/transaction?access_token=

XUVAtlHXbjJZE69AJQXwjTzuNlYR1otNm2xLxFpcYZQiQp0Sbr5QUc

Request {   "typereq": "trans",   "dealerId": "2114534465611173",   "fiturId": " FTR603",   "data": {     "kode_mitra": "IPY",     "kode_cabang": "014",     "kode_loket": "00005",     "pin_transaksi": "12345",     "reffCorrespondent": "33XX541285694",     "refferenceNum": "S06ITR0004873516",     "counterAdvis": "ITR048735",     "remmAmount": "15000.000", 

417/457

    "remmAmountCurrency": "IDR",    "trxCharges": "0",     "refundCharge": "50.000",     "creditAmount": "15000.000",     "creditAmountCurrency": "IDR",     "baseAmount": "15000.000",     "creditAccountNum": 4447,     "rateType": "03",     "amdCharges": "0",     "xtrCharges": "0",     "senderName": "TRANSFAST TEST",     "senderAddress": "USA NEW YORK 1234567890",     "senderBank": "TRANS FAST REMITTANCE LLC, NEW YORK",     "naration": "TEST CASH PICKUP TEST CASH PICKUP",     "beneficiaryName": "SDR FAISAL KAMIL",     "beneficiaryAddress": "INDONESIA INDONESIA 1234597890",     "paymentType": "Tunai",     "paymentCurrency": "IDR/Rupiah",     "totTrxChargesStr": "0 ‐ IDR",     "totTrxChargesS": "0.000",     "remmAmountStr": "15.000 ‐ IDR"   } } 

Response

Definition

Field Data

Type

Mandatory Description

trxType String Yes Transaction type.

“401” is for Micro 

Insurance payment

status String Yes Transaction status.

data.error String Yes Transaction status.

If transaction is

success, value will

be “false” else 

“true”

data.ket String Yes Default

“Remittance

Payment”

data.coreJurnal String Yes Transaction’s

journal

data.reffCorrespondent String Yes Transaction’s

jurnal. Same value

as Payment

Request

data.refferenceNum String Yes Transaction

refererence

number. Same

418/457

value as Payment

Request

data.senderName String Yes Sender Name.

Same value as

Payment Request

data.senderAddress String Yes Sender Address.

Same value as

Payment Request

data.senderBank String Yes Sender Bank.

Same value as

Payment Request

data.beneficiaryName String Yes Beneficiary Name.

Same value as

Payment Request

data.beneficiaryAddress String Yes Beneficiary

Address. Same

value as Payment

Request

data.paymentType String Yes Payment Type.

Same value as

Payment Request

data.paymentCurrency String Yes Payment Currency.

Same value as

Payment Request

data.totTrxCharges String Yes Total Extra

Charges. Same

value as Payment

Request

data.totTrxChargesStr String Yes Total Extra

Charges String

data.remmAmountStr String Yes Remm Amount

String. Same value

as Payment

Request

data.totTrxChargesStr String Yes Total Extra

Charges String

data.creditAmount String Yes Credit Amount.

Same value as

Payment Request

data.errorNum String Yes Pin / Reference

Corespondent

result.kode_loket String Yes Agent’s code

result.kd_lkt String Yes Agent’s counter

code

419/457

result.nama String Yes Agent’s name

result.kode_cabang String Yes Agent’s branch

code

result.kode_mitra String Yes Agent’s mitra code

result.alamat String Yes Agent’s address

CustomerData.time String Yes Transaction’s time

Success

response code

HTTP 200

Response

(Success) {   "trxType": "401",   "status": "success",   "data": {     "error": false,     "ket": "Remittance Payment",     "coreJournal": "261357",     "refferenceNum": "S06ITR0004873516",     "reffCorrespondent": "33XX541285694",     "senderName": "TRANSFAST TEST",     "senderAddress": "USA NEW YORK 1234567890",     "senderBank": "TRANS FAST REMITTANCE LLC, NEW YORK",     "naration": "TEST CASH PICKUP TEST CASH PICKUP",     "beneficiaryName": "SDR FAISAL KAMIL",     "beneficiaryAddress": "INDONESIA INDONESIA 1234597890",     "paymentType": "Tunai",     "paymentCurrency": "IDR/Rupiah",     "remmAmountStr": "15.000 ‐ IDR",     "totTrxChargesStr": "0 ‐ IDR",     "creditAmount": "15000.000",     "errorNum": ""   },   "result": {     "kode_loket": "IPY01400005",     "kd_lkt": "00005",     "nama": "Agung",     "kode_cabang": "014",     "kode_mitra": "IPY",     "alamat": "06/28 Ngadirgo Krian Sidoarjo Jawa Timur 50213"   },   "CustomerData": {     "time": "2018‐04‐12T15:31:40+07:00"   } }

Error response

code

Response

(error) {   "data": {     "error": true,     "errorNum": "0314",     "message": "Maaf, transaksi tidak dapat diproses.",     "ori_errorNum": "0314"   } 

420/457

2.4. Avoid Characters

SYMBOL DESCRIPTION

! exclamation point

" double quotes

# number sign

$ dollar sign

% percent sign

& ampersand

' single quote

* asterisk

+ plus sign

, comma

- minus sign - hyphen

. period

/ slash

: colon

; semicolon

< less than sign

= equal sign

> greater than sign

? question mark

[ opening bracket

\ backslash

] closing bracket

^ caret - circumflex

{ opening brace

| vertical bar

} closing brace

421/457

2.5. Appendix

2.5.1. List of Feature Id

No  Feature Id  Description 

1  FTR411  Telepon Pospaid Inquiry 

2  FTR412  Telepon Postpaid Payment 

3  FTR413  Internet Speedy Inquiry 

4  FTR414  Internet Speedy Payment 

5  FTR415  Prudential Premi Pertama Payment 

6  FTR416  Prudential Premi Lanjutan Inquiry 

7  FTR417  Prudential Premi Lanjutan Payment 

8  FTR418  Prudential Top Up Premi Inquiry 

9  FTR419  Prudential Top Up Premi Payment 

10  FTR420  Prudential Biaya Cetak Ulang Polis Inquiry 

11  FTR421  Prudential Biaya Cetak Ulang Polis Payment 

12  FTR422  Prudential Biaya Perubahan Polis Inquiry 

13  FTR423  Prudential Biaya Perubahan Polis Payment 

14  FTR424  Prudential Biaya Cetak Kartu Inquiry 

15  FTR425  Prudential Biaya Cetak Kartu Payment 

16  FTR426  Zakat Dan Qurban Payment 

17  FTR500  TV Berlangganan Firstmedia Inquiry 

18  FTR427  TV Berlangganan Firstmedia Payment 

19  FTR428  TV Berlangganan INDOVISION/OKE/TREN/TOP Inquiry 

20  FTR429  TV Berlangganan INDOVISION/OKE/TREN/TOP Payment 

21  FTR430  Credit Card BNI Inquiry 

22  FTR431  Credit Card BNI Payment 

23  FTR432  Credit Card Non‐BNI Payment 

24  FTR433  Personal Loan Person Payment 

25  FTR434  Tiket Penerbangan Inquiry 

26  FTR435  Tiket Penerbangan Payment 

27  FTR437  BNI Life Inquiry 

28  FTR438  BNI Life Payment 

29  FTR439  Telkom Inquiry 

30  FTR440  Telkom Payment 

31  FTR442  BPJS Inquiry 

422/457

32  FTR443  BPJS Payment 

33  FTR310  Check Account 

34  FTR301  Check Account  Details  

35  FTR311  Agent Registration 

36  FTR320   Cash Deposit 

37  FTR321   Cash Withdrawal 

38  FTR322  Account Opening 

39  FTR325  Get Agent Approved 

40  FTR309  Get Temporary Agent List 

41  FTR327  Get Transaction List 

42  FTR324  Get One Transaction 

43  FTR329  Transfer Ke BNI Payment 

44  FTR330  Transfer Ke Non‐BNI Inquiry 

45  FTR331  Transfer Ke Non‐BNI Payment 

46  FTR332  Create OTP 

47  FTR333  Transfer BNI Inquiry 

48  FTR450  Multifince Adira Inquiry 

49  FTR451  Multifince Adira Payment 

50  FTR452  Multifinance FIF Inquiry 

51  FTR453  Multifinance FIF Payment 

52  FTR454  Multifinance OTO Kredit Inquiry 

53  FTR455  Multifinance OTO Kredit Payment 

54  FTR456  Multifinance SMS Finance Inquiry 

55  FTR457  Multifinance SMS Finance Payment 

56  FTR458  Multifinance NSC Finance Inquiry 

57  FTR459  Multifinance NSC Finance Payment 

58  FTR460  Multifinance KreditPlus Inquiry 

59  FTR461  Multifinance KreditPlus Payment 

60  FTR462  Multifinance ACC Finance Inquiry 

61  FTR463  Multifinance ACC Finance Payment 

62  FTR473  Tiket KAI Inquiry 

63  FTR474  Tiket KAI Payment 

64  FTR475  SBMPTN Inquiry 

65  FTR476  SBMPTN Payment 

66  FTR477  UM PTKIN Inquiry 

423/457

67  FTR478  UM PTKIN Payment 

68  FTR479  PDAM Inquiry 

69  FTR480  PDAM Payment 

70  FTR481  Asuransi Bumiputera Inquiry 

71  FTR482  Asuransi Bumiputera Payment 

72  FTR490  PLN Prabayar Inquiry 

73  FTR491  PLN Prabayar Payment 

74  FTR492  PLN Prabayar Manual Advice 

75  FTR493  PLN Pascabayar Inquiry 

76  FTR494  PLN Pascabayar Payment 

77  FTR495  PLN Non Taglis Inquiry 

78  FTR496  PLN Non Taglis Payment 

79  FTR497  Top Up Go‐PAY Inquiry 

80  FTR498  Top Up Go‐PAY Payment 

81  FTR446  TOP UP BNI‐TAPCASH 

82  FTR444  BPJS TK BPU Inquiry  

83  FTR445  BPJS TK BPU Payment 

84  FTR447  BPJS TK PU Inquiry 

85  FTR448  BPJS TK PU Payment 

86  FTR924  Inquiry UnikQu 

87  FTR932  Cash In 

88  FTR510  Asuransi Mikro Inquiry 

89  FTR511  Asuransi Mikro Payment 

90  FTR512  Asuransi Mikro Cetak Ulang 

91  FTR601  Remittance Search 

92  FTR602  Remittance Inquiry 

93  FTR603  Remittance Payment 

94  FTR513  Railink Inquiry 

95  FTR514  Railink Payment 

96  FTR515  Asuransi Jiwasraya Inquiry 

97  FTR516  Asuransi Jiwasraya Payment 

98  FTR519  Transvision Inquiry 

99  FTR520  Transvision Payment 

100  FTR471  Top Up GSM New (All Provider) 

101  FTR521  Paket Data (All Provider) 

424/457

102  FTR517  Tax Inquiry 

103  FTR518  Tax Payment 

2.5.2. Biller PDAM

provider_id  provider_name  biller_code  pdam_type  admin_fee_flag 

AETRA  AETRA  1302  NON_AGGREGATOR  1 

PALYJA  PALYJA  1301  NON_AGGREGATOR  0 

PDAM_SEMARANG  PDAM SEMARANG  1303  NON_AGGREGATOR  1 

PDAM_MANADO  PDAM MANADO  1304  NON_AGGREGATOR  0 

PDAM_BOGOR  PDAM BOGOR  1305  NON_AGGREGATOR  1 

PDAM_SURABAYA  PDAM SURABAYA  1306  NON_AGGREGATOR  0 

PDAM_BANJARMASIN 

PDAM BANJARMASIN  1307  NON_AGGREGATOR  1 

PDAM_KABBOGOR  PDAM KAB BOGOR  1308  NON_AGGREGATOR  1 

PDAM_BALIKPAPAN  PDAM BALIKPAPAN  1309  NON_AGGREGATOR  1 

PDAM_MITRACOMM PDAM  KOTA  SOLO (KOTA SURAKARTA) 

131001  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  BANYUMAS (TIRTA SATRIA) 

131002  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  CILACAP  (TIRTA WIJAYA) 

131003  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  PURWOREJO (TIRTA PERWITASARI) 

131004  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  DEPOK  (TIRTA ASASTA) 

131005  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  PALEMBANG (TIRTA MUSI) 

131006  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  KOTA  MALANG (TIRTA DHARMA) 

131007  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  SIDOARJO (DELTA TIRTA) 

131008  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  BANDAR LAMPUNG (WAY RILAU) 

131009  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  SAMARINDA (TIRTA KENCANA) 

131010  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM INTAN BANJAR  131011  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  KAB  BANDUNG (TIRTA RAHARJA) 

131012  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM PAYAKUMBUH  131013  AGGREGATOR  0 

PDAM_MITRACOMM PDAM MATARAM  (GIRI MENANG) 

131014  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM KOTA PADANG  131015  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  PADANG PANJANG 

131016  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM WONOSOBO  131017  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM ATB BATAM  131018  AGGREGATOR  0 

425/457

PDAM_MITRACOMM  PDAM PROBOLINGGO  131019  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM JAYAPURA  131020  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  BARABAI  (HULU SUNGAI TENGAH) 

131021  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM BANGKA BARAT  131022  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM MAKASAR  131023  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM BALANGAN  131024  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM MAMUJU  131025  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM PONTIANAK  131026  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM DENPASAR  131027  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM ATS PALEMBANG  131028  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM TANAH DATAR  131029  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM SAMPIT  131030  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM BUKIT TINGGI  131031  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM KAB SOLOK  131032  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM BERAU  131035  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM BOJONEGORO  131036  AGGREGATOR  0 

PDAM_MITRACOMM  PDAM KLATEN  131035  AGGREGATOR  0 

PDAM_MITRACOMM PDAM  POLEWALI  (WAI TIPALAYO) 

131036  AGGREGATOR  0 

PDAM_SMT  PDAM CIANJUR  131101  AGGREGATOR  0 

PDAM_SMT  PDAM KAB INDRAMAYU  131102  AGGREGATOR  0 

PDAM_SMT  PDAM TASIK MALAYA  131104  AGGREGATOR  0 

PDAM_SMT  PDAM SUBANG  131105  AGGREGATOR  0 

PDAM_SMT  PDAM KOTA SUKABUMI  131106  AGGREGATOR  0 

PDAM_SMT  PDAM GRESIK  131107  AGGREGATOR  0 

PDAM_SMT  PDAM PASURUAN  131108  AGGREGATOR  0 

PDAM_SMT  PDAM KAB SUKABUMI  131109  AGGREGATOR  0 

PDAM_DJI  PDAM KAB BOYOLALI  131403  AGGREGATOR  0 

PDAM_DJI  PDAM KAB MALANG  131406  AGGREGATOR  0 

PDAM_DJI PDAM  KAB KARANGANYAR 

131407  AGGREGATOR  0 

PDAM_DJI  PDAM KAB KEBUMEN  131408  AGGREGATOR  0 

PDAM_DJI  PDAM KAB KUDUS  131410  AGGREGATOR  0 

PDAM_DJI PDAM  KAB  PATI  (TIRTA BENING) 

131413  AGGREGATOR  0 

PDAM_DJI PDAM  KOTA MAGELANG 

131416  AGGREGATOR  0 

PDAM_DJI  PDAM KAB SITUBONDO  131419  AGGREGATOR  0 

PDAM_DJI  PDAM KAB SUKOHARJO  131422  AGGREGATOR  0 

PDAM_DJI  PDAM KOTA MADIUN  131426  AGGREGATOR  0 

PDAM_DJI  PDAM KAB JEPARA  131427  AGGREGATOR  0 

PDAM_DJI PDAM  KAB BANYUWANGI 

131428  AGGREGATOR  0 

426/457

PDAM_DJI  PDAM KAB JEMBER  131429  AGGREGATOR  0 

PDAM_DJI  PDAM KAB JOMBANG  131430  AGGREGATOR  0 

PDAM_DJI  PDAM KAB GARUT  131431  AGGREGATOR  0 

PDAM_DJI PDAM  KOTA PEKALONGAN 

131432  AGGREGATOR  0 

PDAM_DJI  PDAM PONOROGO  131433  AGGREGATOR  0 

PDAM_BANDUNG  PDAM BANDUNG  77  NON_AGGREGATOR  1 

PDAM_BSD  IPL BSD  8101  IPL/PAM_BSD  0 

PDAM_FORTUNA  PDAM Tirtandi  131201  AGGREGATOR  0 

PDAM_FORTUNA  PDAM KOTA SOLOK  131202  AGGREGATOR  0 

2.5.3. List Bank Non BNI

[

{

"KODE_BANK":"002",

"NAMA_BANK":"BANKBRI"

},

{

"KODE_BANK":"008",

"NAMA_BANK":"BANKMANDIRI"

},

{

"KODE_BANK":"009",

"NAMA_BANK":"BANKBNI"

},

{

"KODE_BANK":"011",

"NAMA_BANK":"BANKDANAMON"

},

{

"KODE_BANK":"013",

"NAMA_BANK":"BANKPERMATA"

},

{

"KODE_BANK":"014",

"NAMA_BANK":"BANKCENTRALASIA"

},

{

427/457

"KODE_BANK":"016",

"NAMA_BANK":"BANKBII"

},

{

"KODE_BANK":"019",

"NAMA_BANK":"BANKPANIN"

},

{

"KODE_BANK":"020",

"NAMA_BANK":"BANKANK"

},

{

"KODE_BANK":"022",

"NAMA_BANK":"BANKCIMBNIAGA"

},

{

"KODE_BANK":"023",

"NAMA_BANK":"BANKUOBBUANA"

},

{

"KODE_BANK":"028",

"NAMA_BANK":"BANKOCBCNISP"

},

{

"KODE_BANK":"031",

"NAMA_BANK":"BANKCITIBANK"

},

{

"KODE_BANK":"036",

"NAMA_BANK":"BANKWINDUKENTJANAINTERNATIONAL"

},

{

"KODE_BANK":"037",

"NAMA_BANK":"BANKARTHAGRAHA"

},

{

428/457

"KODE_BANK":"041",

"NAMA_BANK":"BANKHSBC"

},

{

"KODE_BANK":"042",

"NAMA_BANK":"THEBANKOFTOKYO‐MITSUBISHIUFJ"

},

{

"KODE_BANK":"046",

"NAMA_BANK":"BANKDBS"

},

{

"KODE_BANK":"050",

"NAMA_BANK":"BANKSTANDARDCHARTERED"

},

{

"KODE_BANK":"052",

"NAMA_BANK":"BANKANZ‐RBS"

},

{

"KODE_BANK":"054",

"NAMA_BANK":"BANKCAPITAL"

},

{

"KODE_BANK":"061",

"NAMA_BANK":"BANKANZ"

},

{

"KODE_BANK":"076",

"NAMA_BANK":"BANKBUMIARTA"

},

{

"KODE_BANK":"087",

"NAMA_BANK":"BANKEKONOMIRAHARJA"

},

{

429/457

"KODE_BANK":"088",

"NAMA_BANK":"BANKANTARDAERAH"

},

{

"KODE_BANK":"089",

"NAMA_BANK":"BANKRABOBANK"

},

{

"KODE_BANK":"095",

"NAMA_BANK":"BANKJTRUSTINDONESIA"

},

{

"KODE_BANK":"097",

"NAMA_BANK":"BANKMAYAPADA"

},

{

"KODE_BANK":"110",

"NAMA_BANK":"BANKJABAR"

},

{

"KODE_BANK":"111",

"NAMA_BANK":"BANKDKI"

},

{

"KODE_BANK":"112",

"NAMA_BANK":"BPDDIY"

},

{

"KODE_BANK":"113",

"NAMA_BANK":"BANKJATENG"

},

{

"KODE_BANK":"114",

"NAMA_BANK":"BANKJATIM"

},

{

430/457

"KODE_BANK":"115",

"NAMA_BANK":"BPDJATIM"

},

{

"KODE_BANK":"116",

"NAMA_BANK":"BPDACEH"

},

{

"KODE_BANK":"117",

"NAMA_BANK":"BANKSUMUT"

},

{

"KODE_BANK":"118",

"NAMA_BANK":"BANKNAGARI"

},

{

"KODE_BANK":"119",

"NAMA_BANK":"BANKRIAU"

},

{

"KODE_BANK":"120",

"NAMA_BANK":"BANKSUMSELBABEL"

},

{

"KODE_BANK":"121",

"NAMA_BANK":"BANKLAMPUNG"

},

{

"KODE_BANK":"122",

"NAMA_BANK":"BPDKALSEL"

},

{

"KODE_BANK":"123",

"NAMA_BANK":"BPDKALBAR"

},

{

431/457

"KODE_BANK":"124",

"NAMA_BANK":"BPDKALTIM"

},

{

"KODE_BANK":"125",

"NAMA_BANK":"BPDKALTENG"

},

{

"KODE_BANK":"126",

"NAMA_BANK":"BPDSULSEL"

},

{

"KODE_BANK":"127",

"NAMA_BANK":"BPDSULUT"

},

{

"KODE_BANK":"128",

"NAMA_BANK":"BPDNTB"

},

{

"KODE_BANK":"129",

"NAMA_BANK":"BPDBALI"

},

{

"KODE_BANK":"130",

"NAMA_BANK":"BANKNTT"

},

{

"KODE_BANK":"131",

"NAMA_BANK":"BANKMALUKU"

},

{

"KODE_BANK":"132",

"NAMA_BANK":"BPDPAPUA"

},

{

432/457

"KODE_BANK":"133",

"NAMA_BANK":"BANKBENGKULU"

},

{

"KODE_BANK":"134",

"NAMA_BANK":"BANKSULTENG"

},

{

"KODE_BANK":"135",

"NAMA_BANK":"BPDSULTRA"

},

{

"KODE_BANK":"146",

"NAMA_BANK":"BANKSWADESI"

},

{

"KODE_BANK":"147",

"NAMA_BANK":"BANKMUAMALAT"

},

{

"KODE_BANK":"151",

"NAMA_BANK":"BANKMESTIKA"

},

{

"KODE_BANK":"153",

"NAMA_BANK":"BANKSINARMAS"

},

{

"KODE_BANK":"157",

"NAMA_BANK":"BANKMASPION"

},

{

"KODE_BANK":"161",

"NAMA_BANK":"BANKGANESHA"

},

{

433/457

"KODE_BANK":"167",

"NAMA_BANK":"BANKKESAWAN"

},

{

"KODE_BANK":"200",

"NAMA_BANK":"BANKBTN"

},

{

"KODE_BANK":"212",

"NAMA_BANK":"BANKSAUDARA"

},

{

"KODE_BANK":"213",

"NAMA_BANK":"BANKBTPN"

},

{

"KODE_BANK":"422",

"NAMA_BANK":"BANKBRISYARIAH"

},

{

"KODE_BANK":"426",

"NAMA_BANK":"BANKMEGA"

},

{

"KODE_BANK":"441",

"NAMA_BANK":"BANKBUKOPIN"

},

{

"KODE_BANK":"451",

"NAMA_BANK":"BANKSYARIAHMANDIRI"

},

{

"KODE_BANK":"472",

"NAMA_BANK":"BANKJASAJAKARTA"

},

{

434/457

"KODE_BANK":"484",

"NAMA_BANK":"BANKHANA"

},

{

"KODE_BANK":"485",

"NAMA_BANK":"BANKBUMIPUTERA"

},

{

"KODE_BANK":"494",

"NAMA_BANK":"BANKAGRO"

},

{

"KODE_BANK":"498",

"NAMA_BANK":"BANKSBIINDONESIA(INDOMONEX)"

},

{

"KODE_BANK":"501",

"NAMA_BANK":"BANKROYAL"

},

{

"KODE_BANK":"506",

"NAMA_BANK":"BANKMEGASYARIAH"

},

{

"KODE_BANK":"513",

"NAMA_BANK":"BANKINA"

},

{

"KODE_BANK":"523",

"NAMA_BANK":"BANKSAHABATSAMPOERNA"

},

{

"KODE_BANK":"535",

"NAMA_BANK":"BANKBKE"

},

{

435/457

"KODE_BANK":"536",

"NAMA_BANK":"BANKBCASYARIAH"

},

{

"KODE_BANK":"542",

"NAMA_BANK":"BANKARTOS"

},

{

"KODE_BANK":"553",

"NAMA_BANK":"BANKMAYORA"

},

{

"KODE_BANK":"555",

"NAMA_BANK":"BANKINDEX"

},

{

"KODE_BANK":"558",

"NAMA_BANK":"BANKPUNDI"

},

{

"KODE_BANK":"566",

"NAMA_BANK":"BANKVICTORIAINTERNATIONAL"

},

{

"KODE_BANK":"688",

"NAMA_BANK":"BPRKS"

},

{

"KODE_BANK":"911",

"NAMA_BANK":"TCASH"

},

{

"KODE_BANK":"945",

"NAMA_BANK":"BANKAGRIS"

},

{

436/457

"KODE_BANK":"949",

"NAMA_BANK":"BANKCHINATRUSTINDONESIA"

},

{

"KODE_BANK":"950",

"NAMA_BANK":"BANKCOMMONWEALTH"

}

]

2.5.4. List Denom of Top Up GSM

provider_id  denom  harga_jual 

AS 

5000 6500

10000 11500

25000 25375

40000 39950

50000 50000

100000 98500

150000 149000

200000 199500

300000 298500

500000 495500

1000000 987000

FREN 

5000 6000

10000 11000

20000 20150

50000 50100

60000 59950

100000 99900

150000 149000

200000 198000

300000 297000

500000 495000

INDOSAT_PREPAID

5000 6000

10000 11000

25000 24975

30000 30000

50000 49400

100000 98000

150000 149000

437/457

200000 195000

250000 244000

500000 480000

1000000 980000

THREE 

5000 6000

10000 11000

25000 25125

50000 50250

100000 100000

150000 150250

200000 199500

300000 300500

500000 500500

XL_REG 

5000 6500

10000 11500

25000 25000

50000 50000

100000 99500

150000 150000

200000 200000

300000 300000

500000 500000

1000000 1000000

2.5.5. List Job Code

'01' => 'Pegawai Negeri',  

'02' => 'Pegawai Swasta',  

'03' => 'Pegawai BUMN/BUMD',  

'04' => 'TNI/Polri',  

'05' => 'Pengusaha',  

'06' => 'Pedagang',  

'07' => 'Petani/Nelayan',  

'08' => 'Pelajar/Mahasiswa',  

'09' => 'Ibu Rumah Tangga',  

'10' => 'Tidak Bekerja',  

'11' => 'Karyawan/Karyawati',  

'12' => 'Wiraswasta', 

'13' => 'Pejabat Negara',  

'14' => 'Akuntan',  

'15' => 'Pengacara/Notaris',  

'16' => 'Profesi',  

'17' => 'Pensiunan',  

'18' => 'Dosen/Guru Swasta',  

'19' => 'Dosen/Guru Negeri',  

'20' => 'Dokter',  

'21' => 'Pegawai BNI',  

'22' => 'Unit Afiliasi BNI',  

'99' => 'Lain‐lain' 

 

438/457

2.5.6. List Job Code for Agent Registration

'01' => 'Pegawai Negeri',  

'02' => 'Pegawai Swasta',  

'03' => 'Pegawai BUMN/BUMD',  

'04' => 'TNI/Polri',  

'05' => 'Pengusaha',  

'06' => 'Pedagang',  

'07' => 'Petani/Nelayan',  

'08' => 'Pelajar/Mahasiswa',  

'09' => 'Ibu Rumah Tangga',  

'10' => 'Tidak Bekerja',  

'11' => 'Karyawan/Karyawati',  

'12' => 'Wiraswasta', 

'13' => 'Pejabat Negara',  

'14' => 'Akuntan',  

'15' => 'Pengacara/Notaris',  

'16' => 'Profesi',  

'17' => 'Pensiunan',  

'18' => 'Dosen/Guru Swasta',  

'19' => 'Dosen/Guru Negeri',  

'20' => 'Dokter',  

'21' => 'Pegawai BNI',  

'22' => 'Unit Afiliasi BNI',  

'99' => 'Lain‐lain' 

 

2.5.7. BNI Branch Code

Branch Code  Branch Name 

001  KCU Jakarta Kota 

002  KCU Bandung 

003  KCU Jambi 

004  KCU Yogyakarta 

005  KCU Banda Aceh 

006  KCU Medan 

007  KCU Makassar 

008  KCU Pekanbaru 

009  KCU Padang 

010  KCU Palembang 

011  KCU Surakarta 

012  KCU Sibolga 

013  KCU Semarang 

014  KCU Surabaya 

015  KCU Banjarmasin 

017  KCU Kramat 

018  KCU Manado 

019  KCU Cirebon 

020  KCU Tanjungpinang 

021  KCU Magelang 

022  KCU Melawai Raya 

023  KCU Pontianak 

024  KCU Tanjung Priok 

439/457

026  KCU Tasikmalaya 

027  KCU Rengat 

028  KCU Purwokerto 

030  KCU Jember 

032  KCU Gunung Sitoli 

034  KCU Denpasar 

035  KCU Sampit 

037  KCU Jatinegara 

038  KCU Mataram 

039  KCU Gorontalo 

040  KCU Meulaboh 

041  KCU Ambon 

042  KCU Tanjung Perak 

043  KCU Kudus 

044  KCU Cilacap 

045  KCU Tembilahan 

046  KCU Serang 

048  KCU Kuala Tungkal 

049  KCU Balikpapan 

050  KCU Lhokseumawe 

051  KCU Tanjung Balai Karimun 

053  KCU Kawasan Industri Medan (KIM) 

055  KCU Bukittinggi 

057  KCU Pekalongan 

059  KCU Dumai 

060  KCU Dukuh Bawah 

061  KCU Bogor 

062  KCU Singaraja 

063  KCU Senayan 

064  KCU Tanjung Balai Asahan 

066  KCU Sumbawa Besar 

067  KCU Selat Panjang 

068  KCU Parigi 

069  KCU Majalaya 

070  KCU Harmoni 

072  KCU Wonosobo 

073  KCU Kebumen 

074  KCU Sukabumi 

076  KCU Pasar Mayestik 

080  KCU Kendari 

081  KCU Tangerang 

082  KCU Situbondo 

440/457

083  KCU Sumenep 

084  KCU Purbalingga 

085  KCU Banjar 

088  KCU Padang Sidempuan 

089  KCU Gambir 

090  KCU Langsa 

091  KCU Banyuwangi 

093  KCU Pematangsiantar 

094  KCU Menteng 

095  KCU Karawang 

096  KCU Temanggung 

097  KCU Ternate 

098  KCU Madura 

100  KCU Pare‐pare 

101  KCU Sengkang 

102  KCU Garut 

103  KCU Cianjur 

105  KCU Bireuen 

106  KCU Kotamobagu 

108  KCU Ketapang 

109  KCU Probolinggo 

111  KCU Musi Palembang 

113  KCU Kediri 

116  KCU Kotabumi 

117  KCU Bojonegoro 

118  KCU Indramayu 

119  KCU Madiun 

120  KCU Tebet 

121  KCU Malang 

123  KCU Jombang 

124  KCU Mojokerto 

125  KCU Cilegon 

128  KCU Kota Baru Pulau Laut 

130  KCU Pecenongan 

131  KCU Kuningan 

133  KCU luwuk 

135  KCU Pangkalpinang 

137  KCU Salatiga 

138  KCU Purworejo 

139  KCU Bitung 

140  KCU Payakumbuh 

142  KCU Tanjungkarang 

441/457

145  KCU Pati 

146  KCU Jepara 

148  KCU Sigli 

151  KCU Singkawang 

155  KCU Banjarbaru 

156  KCU Balige 

168  KCU Bau ‐ bau 

169  KCU Tegal 

172  KCU Roa Malaka 

178  KCU Sungai Penuh 

179  KCU Purwakarta 

180  KCU Sumedang 

181  KCU Bekasi 

182  KCU Subang 

183  KCU Blitar 

184  KCU Samarinda 

185  KCU Tebing Tinggi 

188  KCU Tahuna 

190  KCU Bima 

191  KCU Wonogiri 

193  KCU Kabanjahe 

197  KCU Toli ‐ Toli 

200  KCU Pangkalanbun 

203  KCU Palopo 

204  KCU Lubuklinggau 

207  KCU Klaten 

216  KCU Pasuruan 

217  KCU Polewali 

221  KCU Nunukan 

222  KCU palu 

223  KCU Bengkulu 

224  KCU Gresik 

225  KCU Tarakan 

227  KCU Slamet Riyadi Solo 

228  KCU Universitas Gajah Mada 

229  KCU Kupang 

230  KCU Sidoarjo 

234  KCU Tanjung Redeb 

236  KCU Perguruan Tinggi Bandung 

237  KCU Daan Mogot 

240  KCU Kuala Tanjung 

242  KCU Tulungagung 

442/457

243  KCU Rawamangun 

244  KCU Karangayu 

245  KCU Batam 

248  KCU Mattoangin 

251  KCU Fatmawati 

252  KCU Cepu 

253  KCU Brawijaya 

255  KCU Graha Pangeran Surabaya 

257  KCU Barabai 

259  KCU Jakarta Pusat 

261  KCU Universitas Diponegoro Semarang 

265  KCU USU Medan 

268  KCU Jayapura 

269  KCU Jalan Perintis Kemerdekaan 

273  KCU UI Depok 

276  KCU Tuban 

278  KCU Palangkaraya 

279  KCU Sorong 

280  KCU Bangko 

282  KCU Rantau Prapat 

284  KCU Ende 

285  KCU Margonda 

288  KCU Ponorogo 

289  KCU Metro 

290  KCU Maumere 

292  KCU Lumajang 

293  KCU Kayu Agung 

294  KCU Prabumulih 

295  KCU Baturaja 

297  KCU Bontang 

298  KCU Manokwari 

299  KCU Biak 

300  KCU Merauke 

301  KCU Bulukumba 

302  KCU renon 

303  KCU Muara Bungo 

304  KCU Solok 

306  KCU Muara Teweh 

307  KCU Mamuju 

308  KCU Sintang 

309  KCU Kelapa Gading 

310  KCU BSD 

443/457

311  KCU Jababeka 

312  KCU kendal 

313  KCU CIBINONG 

314  KCU BOYOLALI 

315  KCU PACITAN 

2.5.8. BI Area Code

Code  Area Type  District 

101  Kab  TANGERANG 

102  Kab  BEKASI 

103  Kab  PURWAKARTA 

104  Kab  SERANG 

105  Kab  PANDEGLANG 

106  Kab  KARAWANG 

107  Kab  LEBAK 

108  Kab  BOGOR 

109  Kab  SUKABUMI 

110  Kab  CIANJUR 

111  Kab  BANDUNG 

112  Kab  SUMEDANG 

113  Kab  TASIKMALAYA 

114  Kab  GARUT 

115  Kab  CIAMIS 

116  Kab  CIREBON 

117  Kab  KUNINGAN 

118  Kab  INDRAMAYU 

119  Kab  MAJALENGKA 

121  Kab  SUBANG 

180  Kota  BANJAR 

190  Kota  CILEGON 

191  Kota  BANDUNG 

192  Kota  BOGOR 

193  Kab  SUKABUMI 

194  Kota  CIREBON 

195  Kota  TASIKMALAYA 

196  Kota  CIMAHI 

197  Kota  DEPOK 

198  Kota  BEKASI 

199  Kota  TANGERANG 

391  Kota  JAKARTA PUSAT 

392  Kota  JAKARTA UTARA 

393  Kota  JAKARTA BARAT 

444/457

394  Kota  JAKARTA SELATAN 

395  Kota  JAKARTA TIMUR 

501  Kab  BANTUL 

502  Kab  SLEMAN 

503  Kab  GUNUNG KIDUL 

504  Kab  KULON PROGO 

591  Kota  YOGYAKARTA 

901  Kab  SEMARANG 

902  Kab  KENDAL 

903  Kab  DEMAK 

904  Kab  GROBOGAN 

905  Kab  PEKALONGAN 

906  Kab  TEGAL 

907  Kab  BREBES 

908  Kab  PATI 

909  Kab  KUDUS 

910  Kab  PEMALANG 

911  Kab  JEPARA 

912  Kab  REMBANG 

913  Kab  BLORA 

914  Kab  BANYUMAS 

915  Kab  CILACAP 

916  Kab  PURBALINGGA 

917  Kab  BANJARNEGARA 

918  Kab  MAGELANG 

919  Kab  TEMANGGUNG 

920  Kab  WONOSOBO 

921  Kab  PURWOREJO 

922  Kab  KEBUMEN 

923  Kab  KLATEN 

924  Kab  BOYOLALI 

925  Kab  SRAGEN 

926  Kab  SUKOHARJO 

927  Kab  KARANGANYAR 

928  Kab  WONOGIRI 

929  Kab  BATANG 

991  Kota  SEMARANG 

992  Kota  SALATIGA 

993  Kota  PEKALONGAN 

994  Kota  TEGAL 

995  Kota  MAGELANG 

996  Kota  SURAKARTA 

445/457

997  Kota  KLATEN 

998  Kota  CILACAP 

999  Kota  PURWOKERTO 

1201  Kab  GRESIK 

1202  Kab  SIDOARJO 

1203  Kab  MOJOKERTO 

1204  Kab  JOMBANG 

1205  Kab  SAMPANG 

1206  Kab  PAMEKASAN 

1207  Kab  SUMENEP 

1208  Kab  BANGKALAN 

1209  Kab  BONDOWOSO 

1211  Kab  BANYUWANGI 

1212  Kab  JEMBER 

1213  Kab  MALANG 

1214  Kab  PASURUAN 

1215  Kab  PROBOLINGGO 

1216  Kab  LUMAJANG 

1217  Kab  KEDIRI 

1218  Kab  NGANJUK 

1219  Kab  TULUNGAGUNG 

1220  Kab  TRENGGALEK 

1221  Kab  BLITAR 

1222  Kab  MADIUN 

1223  Kab  NGAWI 

1224  Kab  MAGETAN 

1225  Kab  PONOROGO 

1226  Kab  PACITAN 

1227  Kab  BOJONEGORO 

1228  Kab  TUBAN 

1229  Kab  LAMONGAN 

1230  Kab  SITUBONDO 

1291  Kota  SURABAYA 

1292  Kota  MOJOKERTO 

1293  Kota  MALANG 

1294  Kota  PASURUAN 

1295  Kota  PROBOLINGGO 

1296  Kota  BLITAR 

1297  Kota  KEDIRI 

1298  Kota  MADIUN 

1299  Kota  JEMBER 

2301  Kab  BENGKULU SELATAN 

446/457

2302  Kab  BENGKULU UTARA 

2303  Kab  REJANG LEBONG 

2391  Kota  BENGKULU 

3101  Kab  BATANGHARI 

3102  Kab  TANJUNG JABUNG 

3103  Kab  MUARA BUNGO‐TEBO 

3104  Kab  SAROLANGUN 

3105  Kab  KERINCI 

3106  Kab  MUARA JAMBI 

3107  Kab  TANJUNG JABUNG BARAT 

3108  Kab  TANJUNG JABUNG TIMUR 

3109  Kab  TEBO 

3110  Kab  BUNGO 

3111  Kab  MERANGIN 

3191  Kota  JAMBI 

3201  Kab  ACEH BESAR 

3202  Kab  PIDIE 

3203  Kab  ACEH UTARA 

3204  Kab  ACEH TIMUR 

3205  Kab  ACEH SELATAN 

3206  Kab  ACEH BARAT 

3207  Kab  ACEH TENGAH 

3208  Kab  ACEH TENGGARA 

3209  Kab  ACEH SINGKIL 

3210  Kab  ACEH JEUMPA 

3291  Kota  BANDA ACEH 

3292  Kota  SABANG 

3293  Kota  LHOKSEUMAWE 

3294  Kota  LANGSA 

3295  Kota  SIMEULUE 

3301  Kab  DELI SERDANG 

3302  Kab  LANGKAT 

3303  Kab  KARO 

3304  Kab  SIMALUNGUN 

3305  Kab  LABUHAN BATU 

3306  Kab  ASAHAN 

3307  Kab  DAIRI 

3308  Kab  TAPANULI UTARA 

3309  Kab  TAPANULI TENGAH 

3310  Kab  TAPANULI SELATAN 

3311  Kab  NIAS 

3312  Kota  RANTAU PRAPAT 

447/457

3313  Kab  TOBA SAMOSIR 

3314  Kab  MANDAILING NATAL 

3391  Kota  TEBING TINGGI 

3392  Kota  BINJAI 

3393  Kota  PEMATANG SIANTAR 

3394  Kota  TANJUNG BALAI 

3395  Kota  SIBOLGA 

3396  Kota  MEDAN 

3398  Kota  KISARAN 

3399  Kota  PADANG SIDEMPUAN 

3401  Kab  AGAM 

3402  Kab  PASAMAN 

3403  Kab  LIMAPULUH KOTO 

3404  Kab  SOLOK 

3405  Kab  PADANG PARIAMAN 

3406  Kab  PESISIR SELATAN 

3407  Kab  TANAH DATAR 

3408  Kab  SAWAHLUNTO SIJUNJUNG 

3409  Kab  MENTAWAI 

3491  Kota  BUKITTINGGI 

3492  Kota  PADANG 

3493  Kota  SAWAHLUNTO 

3494  Kota  PADANGPANJANG 

3495  Kota  SOLOK 

3496  Kota  PAYAKUMBUH 

3497  Kota  PARIAMAN 

3501  Kab  KAMPAR 

3502  Kab  BENGKALIS 

3503  Kab  RIAU KEPULAUAN 

3504  Kab  INDRAGIRI HULU 

3505  Kab  INDRAGIRI HILIR 

3506  Kab  KARIMUN 

3507  Kab  NATUNA 

3508  Kab  ROKAN HULU 

3509  Kab  ROKAN HILIR 

3510  Kab  PALALAWAN 

3511  Kab  SIAK 

3512  Kab  KUANTAN SINGINGI 

3591  Kota  PEKANBARU 

3592  Kota  DUMAI 

3593  Kota  TANJUNGPINANG 

3594  Kota  PULAU BATAM 

448/457

3604  Kab  BELITUNG 

3605  Kab  BANGKA 

3606  Kab  MUSI BANYUASIN 

3607  Kab  OGAN KOMERING ULU 

3608  Kab  MUARA ENIM 

3609  Kab  LAHAT 

3610  Kab  MUSI RAWAS 

3611  Kab  OGAN KOMERING ILIR 

3691  Kota  PALEMBANG 

3692  Kota  PANGKAL PINANG 

3693  Kota  LUBUKLINGGAU 

3694  Kota  PRABUMULIH 

3695  Kota  BATURAJA 

3697  Kota  PAGAR ALAM 

3901  Kab  LAMPUNG SELATAN 

3902  Kab  LAMPUNG TENGAH 

3903  Kab  LAMPUNG UTARA 

3904  Kab  LAMPUNG BARAT 

3905  Kab  TULANG BAWANG 

3906  Kab  TANGGAMUS 

3907  Kab  LAMPUNG TIMUR 

3908  Kab  WAY KANAN 

3991  Kota  BANDAR LAMPUNG 

3992  Kota  METRO 

5101  Kab  BANJAR 

5102  Kab  TANAH LAUT 

5103  Kab  TAPIN 

5104  Kab  HULU SUNGAI SELATAN 

5105  Kota  HULU SUNGAI TENGAH 

5106  Kab  HULU SUNGAI UTARA 

5107  Kab  BARITO KUALA 

5108  Kab  KOTA BARU 

5109  Kab  TABALONG 

5191  Kota  BANJARMASIN 

5192  Kota  BANJARBARU 

5301  Kab  PONTIANAK 

5302  Kab  SAMBAS 

5303  Kab  KETAPANG 

5304  Kab  SANGGAU 

5305  Kab  SINTANG 

5306  Kab  KAPUAS HULU 

5307  Kab  BENGKAYANG 

449/457

5308  Kab  LANDAK 

5391  Kota  PONTIANA 

5392  Kota  SINGKAWANG 

5401  Kab  KUTAI 

5402  Kab  BERAU 

5403  Kab  TANAH PASIR 

5404  Kab  BULUNGAN 

5405  Kab  KUTAI BARAT 

5406  Kab  KUTAI TIMUR 

5407  Kab  BULUNGAN SELATAN 

5408  Kab  BULUNGAN UTARA 

5491  Kota  SAMARINDA 

5492  Kota  BALIKPAPAN 

5493  Kota  TARAKAN 

5494  Kota  BONTANG 

5801  Kab  KAPUAS 

5803  Kab  KOTAWARINGIN BARAT 

5804  Kab  KOTAWARINGIN TIMUR 

5806  Kab  BARITO SELATAN 

5808  Kab  BARITO UTARA 

5892  Kota  PALANGKARAYA 

6001  Kab  DONGGALA 

6002  Kab  POSO 

6003  Kab  BANGGAI 

6004  Kab  TOLI‐TOLI 

6005  Kab  BANGGAI KEPULAUAN 

6006  Kab  MOROWALI 

6007  Kab  BUOL 

6091  Kota  PALU 

6101  Kab  PINRANG 

6102  Kab  GOWA 

6103  Kab  WAJO 

6104  Kab  MAMUJU 

6105  Kab  BONE 

6106  Kab  TANA TORAJA 

6107  Kab  MAROS 

6108  Kab  MAJENE 

6109  Kab  LUWU 

6110  Kab  SINJAI 

6111  Kab  BULUKUMBA 

6112  Kab  BANTAENG 

6113  Kab  JENEPONTO 

450/457

6114  Kab  SELAYAR 

6115  Kab  TAKALAR 

6116  Kab  BARRU 

6117  Kab  SIDENRENG RAPPANG 

6118  Kab  PANGKAJENE KEPULAUAN 

6119  Kab  SOPPENG 

6120  Kab  POLEWALI MAMASA 

6121  Kab  ENREKANG 

6122  Kab  LUWU SELATAN 

6191  Kota  MAKASSAR 

6192  Kota  PARE‐PARE 

6193  Kota  PALOPO 

6194  Kota  WATAMPONE 

6201  Kab  GORONTALO 

6202  Kab  MINAHASA 

6203  Kab  BOLAANG MONGONDOW 

6204  Kab  SANGIHE TALAUD 

6206  Kab  BUALEMO 

6291  Kota  MANADO 

6292  Kota  GORONTALO 

6293  Kota  BITUNG 

6901  Kab  BUTON 

6902  Kab  KENDARI 

6903  Kab  MUNA 

6904  Kab  KOLAKA 

6990  Kota  BAU‐BAU 

6991  Kota  KENDARI 

7101  Kab  LOMBOK BARAT 

7102  Kab  LOMBOK TENGAH 

7103  Kab  LOMBOK TIMUR 

7104  Kab  SUMBAWA 

7105  Kab  BIMA 

7106  Kab  DOMPU 

7191  Kota  MATARAM 

7201  Kab  BULELENG 

7202  Kab  JEMBRANA 

7203  Kab  TABANAN 

7204  Kab  BADUNG 

7205  Kab  GIANYAR 

7206  Kab  KLUNGKUNG 

7207  Kab  BANGLI 

7208  Kab  KARANGASEM 

451/457

7291  Kota  DENPASAR 

7401  Kab  KUPANG 

7402  Kab  TIMOR‐TENGAH SELATAN 

7403  Kab  TIMOR‐TENGAH UTARA 

7404  Kab  BELU 

7405  Kab  ALOR 

7406  Kab  FLORES TIMUR 

7407  Kab  SIKKA 

7408  Kab  ENDE 

7409  Kab  NGADA 

7410  Kab  MANGGARAI 

7411  Kab  SUMBA TIMUR 

7412  Kab  SUMBA BARAT 

7491  Kota  KUPANG 

8101  Kab  MALUKU TENGAH 

8102  Kab  MALUKU TENGGARA 

8191  Kota  AMBON 

8193  Kota  HALMAHERA TENGAH 

8201  Kab  JAYAPURA 

8202  Kab  BIAK NUMFOR 

8204  Kab  SORONG 

8205  Kab  FAK‐FAK 

8209  Kab  MANOKWARI 

8210  Kab  YAPEN‐WAROPEN 

8211  Kab  MERAUKE 

8212  Kab  PANIAI 

8213  Kab  JAYAWIJAYA 

8214  Kab  NABIRE 

8215  Kab  MIMIKA 

8216  Kab  PUNCAK JAYA 

8291  Kota  JAYAPURA 

8292  Kota  PALU 

8301  Kab  MALUKU UTARA 

8302  Kab  HALMAHERA TENGAH 

8390  Kota  TERNATE 

9999  Kota  DI LUAR INDONESIA 

2.5.9. List Product of BNI Life Micro Insurance

Product Code  Product Name  Plan Code  Plan Name 

AMLP  BNI Life Pandai AMLPA1  Plan A (Rp.25.000 – berlaku 12 bulan) 

AMLPA2  Plan A (Rp.17.500 – berlaku 6 bulan) 

452/457

AMLPA3  Plan A (Rp.10.000 – berlaku 3 bulan) 

AMLPB1  Plan B (Rp.37.500 – berlaku 12 bulan) 

AMLPB2  Plan B (Rp.26.500 – berlaku 6 bulan) 

AMLPB3  Plan B (Rp.15.000 – berlaku 3 bulan) 

AMLPC1  Plan C (Rp.50.000 – berlaku 12 bulan) 

AMLPC2  Plan C (Rp.35.000 – berlaku 6 bulan) 

AMLPC3  Plan C (Rp.20.000 – berlaku 3 bulan) 

AMPP  BNI Life Pandai + 

AMPPA1  Rp.50.000 ‐ berlaku 12 bulan 

AMPPA2  Rp.35.000 ‐ berlaku 6 bulan 

AMPPA3  Rp.20.000 ‐ berlaku 3 bulan 

2.5.10. List Product of Internet Package

Provider  Package Name Package Code 

Package Amount  

INDOSAT_DATA 

Indosat Data Paket Freedom M / 1GB + 1GB (4G) Free Talk SMS  OIDM  51900

Indosat Data Paket Freedom L / 3GB + 3GB (4G) Free Talk SMS  OIDL  90000

Indosat Data Paket Freedom XL / 5GB + 5GB (4G) Free Talk SMS  OIDXL  119200

Indosat Data Paket Freedom XXL / 10GB + 10GB (4G) Free Talk SMS  OIDXXL  149000

Freedom Internet Plus 1GB, 30Hr  OIDSA  36000

Freedom Internet Plus 2GB, 30Hr  OIDSF  54000

Freedom Internet Plus 4GB, 30Hr  OIDSB  68000

Freedom Internet Plus 5GB, 30Hr  OIDSC  117000

Indosat Data Paket Extra 2GB  OIDX2  37000

Indosat Data Paket Extra 4GB  OIDX4  53000

Indosat Data Paket Extra 6GB  OIDX6  71000

Indosat Roaming Umroh/Haji Internet 20 Hari  OIHJ20I  349900

Indosat Roaming Umroh/Haji Complete 20 Hari  OIHJ20C  449900

Indosat Roaming Haji Internet 40 Hari  OIHJ40I  549900

Indosat Roaming Haji Voice & SMS 40 Hari  OIHJ40VS  199900

Indosat Roaming Haji Complete 40 Hari  OIHJ40C  649900

Unlimited internet,nelpon & sms  OIUNS20  20000

Freedom Data Roaming 3hr AsiaAustralia MOBO  OIR3AA  250000

Freedom Data Roaming 5hr AsiaAustralia MOBO  OIR5AA  300000

Freedom Data Roaming 7hr AsiaAustralia MOBO  OIR7AA  450000

Freedom Data Roaming 3hr AmerikaEropa MOBO  OIR3AE  550000

Freedom Data Roaming 5hr AmerikaEropa MOBO  OIR5AE  900000

453/457

Freedom Data Roaming 7hr AmerikaEropa MOBO  OIR7AE  1250000

Package Data Roaming 49K Singapore  OIR49SP  55000

Package Data Roaming 25K Singapore  OIR25SP  35000

Package Data Roaming 25K Malaysia  OIR25ML  35000

Package Data Roaming 49K Malaysia  OIR49ML  55000

Package Unlimited 220K Umroh MC  OIRUHJ  245000

Package Internet 1GB Umroh MC  OIRIHJ  199000

Package Telpon & SMS Umroh MC  OIRTSHJ  200000

Package Komplit Umroh MC  OIRKPHJ  375000

Internet 1GB, 7 hari  OII1GB  8000

Internet Unlimited + 1GB, 30 hari  OIU1GB  19800

Internet Unlimited + 2GB, 30 hari  OIU2GB  33950

Internet Unlimited + 3GB, 30 hari  OIU3GB  48500

Internet Unlimited + 7GB, 30 hari  OIU7GB  67900

Internet Unlimited + 10GB, 30 hari  OIU10GB  90000

Internet Unlimited + 15GB, 30 hari  OIU15GB  108000

Internet Unlimited Jumbo, 30 hari  OIUJ  165000

Yellow 1GB 1Hr  OIY1H  1000

Yellow 1GB 3Hr  OIY3H  2500

Yellow 1GB 7Hr  OIY7H  7000

Yellow 1GB 10Hr  OIY10H  8500

Yellow 1GB 15Hr  OIY15H  12000

SMART_DATA 

Kuota 24 Jam 1.25GB, Kuota Malam 1.75GB, Chat Sepuasnya, 7 hari  OSMI1  10000

Kuota 24 Jam 2GB, Kuota Malam 2GB, Chat Sepuasnya, 14 hari  OSMI2  20000

Kuota 24 Jam 4GB, Kuota Malam 4GB, Chat Sepuasnya, 14 hari  OSMI3  30000

Kuota 24 Jam 8GB, Kuota Malam 8GB, Chat Sepuasnya, 30 hari  OSMI4  60000

Kuota 24 Jam 15GB, Kuota Malam 15GB, Chat Sepuasnya, 30 hari  OSMI5  100000

Kuota 24 Jam 22.5GB, Kuota Malam  22.5GB, Chat Sepuasnya, 30 hari  OSMI6  150000

Kuota 24 Jam 30GB, Kuota Malam 30GB, Chat Sepuasnya, 30 hari  OSMI7  200000

TELKOMSEL_DATA 

Telkomsel 25 Data  OTSD25  25000

Telkomsel 25 Data + Game Max  OTSDG25  25000

Telkomsel 50 Data  OTSD50  50000

Data 12GB + 2GB video  OTSD100  100000

Data 35GB + 2GB Video  OTSD200  200000

TRI_DATA  Three Data Roaming Tri Ibadah 40 Hari  OTRDI40D  250000

454/457

Three Data Roaming Trip SEA Pass Combo 1 Hari (Malaysia, Singapore, Thailand)  OTRDSC1D  45000

Three Data Roaming Trip SEA Pass Combo 3 Hari (Malaysia, Singapore, Thailand)  OTRDSC3D  120000

Three Data Roaming Trip SEA Pass Combo 7 Hari (Malaysia, Singapore, Thailand)  OTRDSC7D  220000

Three Data Roaming Trip SEA Pass 1 Hari (Singapore)  OTRDS1D  20000

Three Data Roaming Trip SEA Pass 3 Hari (Singapore)  OTRDS3D  45000

Three Data Roaming Trip SEA Pass 7 Hari (Singapore)  OTRDS7D  75000

Three Data Roaming Trip Aero Pass 5 Hari (Aus, NZ, Eu)  OTRDA5D  400000

Three Data Roaming Trip Aero Pass 10 Hari (Aus, NZ, Eu)  OTRDA10D  750000

Three Data Roaming Tri Ibadah 10 Hari  OTRDI10D  125000

Mixed Kuota++ 1,25GB  OTR125GB  34000

Mixed Kuota++ 2,25GB  OTR225GB  51000

Mixed Super 24GB  OTRD24GB  90000

Mixed Super 30GB  OTRD30GB  100000

Mixed Combo 38GB + 30 Menit, 8GB (all network) + 30GB (4G) + 30 Menit all operator, 30Hr  OTRDV38GB  125000

Mixed Combo 2GB + 20 Menit, 2GB (all network) + 20 Menit all operator, 30 Hr  OTRV2GB  35000

Mixed Small 3,75GB, 1,75GB (all network) + 2GB (4G), 14 Hr  OTR375GB  25000

Mixed Small 5GB, 1GB (24jam) + 4GB (12mlm ‐ 9pagi) all network, 1 Hr  OTRIS5GB1H  5000

Mixed Small 2,75GB, 0,75GB (all network) + 2GB (4G), 3 Hr  OTRIS2GB3H  10000

Mixed Small 3GB all network, 24jam, 3Hr  OTRIS3GB3H  20000

100GB All Network 2G/3G/4G, 100% main quota (7 Days Validity)  OTR100GB7H 89000

Three Data Mixed Super 10GB (2GB all  network ‐ 8GB 4G), 30hari  OTRD10GB  50000

Three Data Mixed Super 2GB all  network /  30GB (1GB per day 4G)  OTRDV32GB  60000

XL_DATA 

XL Data HotRod 800MB, 30hr, Rp30rb  OXLHR30  30000

XL Data HotRod 3GB, 30hr, Rp60rb  OXLHR60  60000

XL Data HotRod 6GB, 30hr, Rp100rb  OXLHR100  100000

XL Data HotRod 8GB, 30hr, Rp130rb  OXLHR130  130000

XL Data HotRod 12GB, 30hr, Rp180rb  OXLHR180  180000

XL Data HotRod 16GB, 30hr, Rp220rb   OXLHR220  220000

XL Data Xtra Combo 5GB (2G/3G/4G) + 5GB (Youtube), 20Mnt (Anynet), 30hr  OXLXC59  59000

XL Data Xtra Combo 10GB (2G/3G/4G) + 10GB (Youtube), 40Mnt (Anynet), 30hr  OXLXC89  89000

XL Data Xtra Combo 15GB (2G/3G/4G) + 15GB (Youtube), 60Mnt (Anynet), 30hr  OXLXC129  129000

455/457

XL Data Xtra Combo 20GB (2G/3G/4G) + 20GB (Youtube), 100Mnt (Anynet), 30hr  OXLXC179  179000

XL Data Xtra Combo 35GB (2G/3G/4G) + 35GB (Youtube), 140Mnt (Anynet), 30hr  OXLXC239  239000

XL Data 12 Bulan XTRA Combo 12X 6GB, 12bln  OXL12XC59  588000

XL Data 12 Bulan XTRA Combo 12X 12GB, 12bln  OXL12XC89  868000

XL Data 12 Bulan XTRA Combo 12X 18GB, 12bln  OXL12XC129  1248000

XL Data 12 Bulan XTRA Combo 12X 30GB, 12bln  OXL12XC179  1628000

XL Data 12 Bulan XTRA Combo 12X 42GB, 12bln  OXL12XC239  2168000

XL Data COMBO ROAMING S ‐ 25 SMS/ 25 Menit/ Internet Unlimited  OXLCR250  250000

XL Data COMBO ROAMING M ‐ 40 SMS/ 40 Menit/ Internet Unlimited  OXLCR300  300000

XL Data COMBO ROAMING L ‐ 50 SMS/ 50 Menit/ Internet Unlimited  OXLCR450  450000

Umroh Combo S, 10hr, 200rb  OXLUCS  200000

Umroh Combo M, 10hr, 300rb  OXLUCM  300000

Umroh Combo L, 15hr, 450rb  OXLUCL  450000

XL Pass 1 Day  OXLP1D  85000

XL Pass 3 Days  OXLP3D  150000

XL Pass 7 Days  OXLP7D  200000

XL Pass 30 Days  OXLP30D  600000

Combo Umroh & Haji 10hr  OXLCUH10  299000

Combo Umroh & Haji 20hr  OXLCUH20  399000

Combo Umroh & Haji 40hr  OXLCUH40  549000

Nelp & SMS Umroh & Haji 10hr  OXLNSUH10  149000

Nelp & SMS Umroh & Haji 20hr  OXLNSUH20  179000

Nelp & SMS Umroh & Haji 40hr  OXLNSUH40  199000

Internet Umroh & Haji 10hr  OXLIUH10  199000

Internet Umroh & Haji 20hr  OXLIUH20  249000

Internet Umroh & Haji 40hr  OXLIUH40  379000

XL Data Xtra Combo 5GB (2G/3G/4G) + 5GB (Youtube), 20Mnt (Anynet)/bln (12 bln)  OXL12XCA  599000

XL Data Xtra Combo 10GB (2G/3G/4G) + 10GB (Youtube), 30Mnt (Anynet)/bln (12 bln)  OXL12XCB  799000

XL Data Xtra Combo 15GB (2G/3G/4G) + 15GB (Youtube), 40Mnt (Anynet)/bln (12 bln)  OXL12XCC  999000

XL Data Xtra Combo 20GB (2G/3G/4G) + 20GB (Youtube), 60Mnt (Anynet)/bln (12 bln)  OXL12XCD  1299000

XL Data Xtra Combo 35GB (2G/3G/4G) + 35GB (Youtube), 90Mnt (Anynet)/bln (12 bln)  OXL12XCE  1399000

 XL XmartPlan 10GB (internet 3GB + Iflix 7GB) + Bundling with device  OXLXP10GB  200000

456/457

 XL XmartPlan 20GB (internet 7GB + Iflix 13GB) + Bundling with device  OXLXP20GB  400000

 XL XmartPlan 30GB (internet 12GB + Iflix 18GB) + Bundling with device  OXLXP30GB  600000

AnyNet 300Mnt, 90hr  OXLAN300  100000

AnyNet 500Mnt, 90hr  OXLAN500  150000

 Xtra Kuota 30GB, 30Hr  OXLXK30GB  11000

AnyNet 400Mnt, 7hr  OXLAN400  12000

AnyNet 500Mnt, 30hr  OXLAN500B  140000

AnyNet 150Mnt, 30hr  OXLAN150  40000

AnyNet 250Mnt, 30hr  OXLAN250  60000

AnyNet 325Mnt, 30hr  OXLAN325  70000

XTRA Bicara Nelpon,SMS,Internet, 30hr  OXLXB1  35000

XTRA Bicara Nelpon+Internet, 30hr  OXLXB2  30000

 XmartPlan 10GB, 12bln  OXLXP12A  1200000

 XmartPlan 20GB, 12bln  OXLXP12B  2400000

 XmartPlan 30GB, 12bln  OXLXP12C  3600000

Paket BRONET2GB 24Jam,60hr,Rp28800  OAX30  28800

Paket BRONET3GB 24Jam,60hr,Rp39800  OAX40  39800

Paket BRONET5GB 24Jam,60hr,Rp59800  OAX60  59800

BB IRIT FUN,30hr,Rp49900  OAX50  49900

BB IRIT FUN,90hr,Rp69900  OAX70  69900

BRONET 24Jam, 1GB, 30hr  OAB1GB  19900

BRONET 24Jam, 2GB, 30hr  OAB2GB  29900

BRONET 24Jam, 3GB, 30hr  OAB3GB  39900

BRONET 24Jam, 5GB, 30hr  OAB5GB  59900

BRONET 24Jam, 8GB, 30hr  OAB8GB  82900

BRONET 4G OWSEM, 1GB + 1GB (4G), 30hr  OABO1GB  23900

BRONET 4G OWSEM, 1GB + 3GB (4G), 30hr  OABO3GB  38900

BRONET 4G OWSEM, 1GB + 6GB (4G), 30hr  OABO6GB  61900

BRONET 4G OWSEM, 1GB + 9GB (4G), 30hr  OABO9GB  80900

2.5.11. List of Tax Payment Type

Tipe Pembayaran  Daerah  ProviderId  BillerCode 

PBB     PBB    

Pajak Daerah Lainnya 

Jakarta  PAJAKDAERAH    

Bekasi  BPHTB  2101 

Majalengka  BPHTB  2102 

457/457


Recommended