NAV Navbar
cURL

Introduction

Welcome to Branchless HUB API Documentation, use our documentation to access All Branchless HUB API endpoints which helps you to access many financial related services.

Our main core service is RESTFUL API with JSON Request and Response

Authentication

To access Branchless HUB API, there are several authentication method could be used, differs on the environments of your choice.

Environments

There are 2 API Environments to access Branchless API

Environment Description
DEV / Sandbox. Sandbox Environment enables your application to access Branchless HUB Services with limited Hits and hit charges not applied in this environment
PROD / Live. Live environment enables your application to access Branchless HUB Services according to your pricing plan and charges may apply in this environment

There will be 2 different API URL for each environment

Environment Description
DEV / Sandbox. https://api.vasdev.co.id:8066/branchless
PROD / Live.

Depends on your development, the sandbox mode could be customized to your needs accordingly, please contact our Technical Support for further information.

Credentials

Access to Branchless HUB API would require these basic requirements:

Credential Description
username BranchlessID Web Portal login Username, used with password to create token access
password BranchlessID Web Portal login Password, used with username to create token access
project_id Identification number of your project, find Project ID inside the Project Summary or click here.
feature_id Identification number of the feature you're going to use, find the Feature ID you need in this document, or simply click here for example.

Method

Following is the diagram for authentication method using Get Token :

Authentication Method Flow

Get Token

Sample Request:

curl 
--location --request POST "https://api.vasdev.co.id:8066/branchless/oauth/token" \
  --header "Content-Type: application/x-www-form-urlencoded" \
  --data "username=example@email.com&password=3x4mpl3p455w0rd&grant_type=password&client_id=null&client_secret=null"

Sample Response:

{
  "token_type": "bearer",
  "access_token": "8f36cd059acbcbc3da0c55170ece1e3ea6ee5114",
  "expires_in": 3600
}

POST https://API_URL/oauth/token

In order to access Branchless HUB Services API, first every applications must request a token using the credential mentioned before.

Headers

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

Body

username example@email.com
password 3x4mpl3p455w0rd
grant_type password
client_id null
client_secret null

Check Token

Sample Request:

curl
--location --request POST "https://api.vasdev.co.id:8066/branchless/oauth/check" \
--header "Authorization: Bearer fa0de9c810fb7ebd46214db27a9cf0677797a6be"

Sample Response:

{
  "code": true,
  "message": "Auth success!",
  "data": [
    {
      "user_name": "Redy Apriyadi",
      "user_email": "redy.apriyadi@branchless.id"
    }
  ]
}

POST https://API_URL/oauth/check

Branchless HUB API provides check token to ensure the token you'll use is valid and good to go

Headers

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

Comm-HUB- Introduction

HTTP Request

All HTTP Request for Community HUB use the same endpoint as seen below:

POST https://API_URL/comm

Differs on the payload, specifically on the feature ID and Data, please refer to Feature List. to see the sample.

About

Community HUB focuses on community-base financial services, give access to Basic Saving Account, Transactional such as ePayment and Money Transfer service. Community HUB based on PT. Bank Negara Indonesia Banking services, to use this HUB you are prompted to adhere with PT. Bank Negara Indonesia Terms and Conditions on using these services.

For more information, please visit Bank Term's & Condition

System Flow

Community HUB API system depicted on this diagram below.

Community HUB System Flow

Comm-HUB- Feature List

There are several features within service groups of Community HUB in which described below.

Payment Service

Feature ID Service Group Feature Name
BLC001 Payment PDAM Inquiry
BLC002 Payment PDAM Payment
BLC003 Payment BPJS KS VA Inquiry
BLC004 Payment BPJS KS VA Payment
BLC005 Payment BPJS TK BPU Inquiry
BLC006 Payment BPJS TK BPU Payment
BLC007 Payment Kartu Kredit BNI Inquiry
BLC008 Payment Kartu Kredit BNI Payment

PDAM Inquiry

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC001",
    "data": {
        "reffNum": "20170607110019000991100059",
        "clientId":"IBOC",
        "providerId":"PDAM_BOGOR",
        "pdam_type": "NON_AGGREGATOR",
        "adminFeeFlag": "1",
        "billingId":"130454454"
    }
}

Sample Response:

{
    "error": false,
    "ket": "PDAM_BOGOR",
    "billingId": "130454454",
    "customerName": "JAELANI",
    "flag": "02",
    "billRepeatCount": "1",
    "kandatelNum": "",
    "langCode": " 1",
    "billerCode": "1305",
    "adminFee": 2500,
    "billDate": [
        "201305"
    ],
    "billAmount": [
        "000000150000"
    ],
    "kubikasi": 500,
    "amount": "150000",
    "response": "<flag>02</flag><billRepeatCount>1</billRepeatCount><adminFee>2500</adminFee><langCode> 1</langCode><billDate1>201305</billDate1><billAmount1>000000150000</billAmount1><kubikasi1>00001000-00001500</kubikasi1><billDate2></billDate2><billAmount2></billAmount2><kubikasi2></kubikasi2><billDate3></billDate3><billAmount3></billAmount3><kubikasi3></kubikasi3><billDate4></billDate4><billAmount4></billAmount4><kubikasi4></kubikasi4><billDate5></billDate5><billAmount5></billAmount5><kubikasi5></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": "MEI13",
    "nominalTagihan": 150000,
    "penalti": 0,
    "totalTagihan": 152500
}
Feature ID Feature Name
BLC001 PDAM Inquiry

Description

PDAM Inquiry feature used to get PDAM Payment status information to your system

Request Parameters

Key Type Mandatory Description
clientId String Yes Default IBOC
data.providerId String Yes Provider id, value refer to mapping on table PDAM column “provider_id” (According to the chosen PDAM).
data.adminFeeFlag String Yes Admin fee flag, value refer to mapping on table PDAM column “admin_fee_flag” (According to the chosen PDAM).
data.pdam_type String Yes Type of PDAM, value refer to mapping on table PDAM column “pdam_type” (According to the chosen PDAM).
data.billingId String Yes Customer number.
a) PDAM Aggregator : 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 table PDAM column “biller_code” (According to the chosen PDAM).
Example:
- Customer no input by customer: 123456
- biller code: 131001
- billingId: 01123456.

b) PDAM Non Aggregator : billingId send as per customer input on screen.

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
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.

PDAM provider List

provider_id provider_name biller_code pdam_type admin_fee_flag
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
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
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

PDAM Payment

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC002",
    "data": {
        "reffNum": "20170607110019000991100059",
        "clientId":"IBOC",
        "providerId":"PDAM_BOGOR",
        "billingId":"130454454",
        "customerName":"SRIYANTO",
        "response":
        "<flag>02</flag><billRepeatCount>1</billRepeatCount><adminFee>2500</adminFee><langCode> 1</langCode><billDate1>201305</billDate1><billAmount1>000000150000</billAmount1><kubikasi1>00001000-00001500</kubikasi1><billDate2></billDate2><billAmount2></billAmount2><kubikasi2></kubikasi2><billDate3></billDate3><billAmount3></billAmount3><kubikasi3></kubikasi3><billDate4></billDate4><billAmount4></billAmount4><kubikasi4></kubikasi4><billDate5></billDate5><billAmount5></billAmount5><kubikasi5></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":"MEI13",
        "penalti":"0",
        "namaPerusahaan": "PDAM_BOGOR",
        "kubikasi": "500",
        "amount": "150000",
        "billRepeatCount":"1",
        "adminFee":"2500",
        "nominalTagihan":"152500",
        "totalTagihan":"152500",
        "pin_transaksi":"123456",
        "accountNum":"4447",
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "69",
    "status": "success",
    "data": {
        "error": false,
        "ket": "PDAM_BOGOR",
        "reffNum": "20170607110019000991100059",
        "journal": "957530789   ",
        "financialJournal": "579603",
        "amount": "150000",
        "billingId": "130454454",
        "billReffNum": "132R94610001",
        "customerName": "SRIYANTO",
        "accountNum": "4447",
        "bl_th": "MEI13",
        "penalti": "0",
        "kubikasi": "500",
        "nominalTagihan": "152500",
        "totalTagihan": "152500",
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": {
        "noRek": "4447",
        "customerName": "SRIYANTO",
        "adminFee": "5000",
        "namaPerusahaan": "PDAM_BOGOR",
        "time": "2017-11-28T15:58:40+07:00"
    }
}
Feature ID Feature Name
BLC002 PDAM Payment

Description

PDAM Payment feature used to execute payment of PDAM Billing

Request Parameters

Key Type Mandatory Description
data.clientId String Yes Default IBOC.
data.providerId String Yes Provider id, value refer to mapping on table PDAM column “provider_id” (According to the chosen PDAM).
data.billRepeatCount String Yes Bill repeat count. Same value as Inquiry response.
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 table PDAM column “provider_id (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.

Billing amount to be paid can use the totalTagihan parameter.

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
trxType String Yes Transaction type. “69” is for PDAM payment.
status String Yes Connection status with 3 rd parties.
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.
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 reference 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.

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nomor Pelanggan String Yes Customer number. Same value as data.billingId. 130454454
Nama String Yes Customer name. Same value as data.customerName. SRIYANTO
Periode Tagihan String Yes Billing period. Same value as data.bl_th. MEI13
Nominal Tagihan String Yes Nominal bill. Same value as data.nominalTagihan. 152500
Pemakaian String Yes Total usage. Same value as data.kubikasi. 500 m3
Penalti String Yes Transaction penalty. Same value as data.penalti. 0
Jurnal Bank String Yes Journal number. Same value as data.journal. 957530789
Biaya Admin String Yes Bank admin fee. Same value as inquiry's admin fee. 2500
Total Bayar String Yes Total bill payment. Same value as data.totalTagihan. 152500

BPJS KS VA Inquiry

Sample Request:

{  
    "project_id": 1,
    "feature_id": "BLC003",
    "data":{  
        "reffNum": "20170607110019000991100021",
        "billingId":"8888801260835541",
        "numberOfMonthsOfBills":"1"
    }
}

Sample Response:

{
    "error": false,
    "PAYMENT_TYPE": "BPJS_KESEHATAN_VA",
    "CHANNEL": "AGENT",
    "MCP_ID": "BPJS_KESEHATAN_VA",
    "h_billingId": "8888801016622015",
    "h_numberOfMonthsOfBills": "1",
    "h_customerName": "DRS.TULUS WIDJAJADAHE",
    "h_branchCode": "0101",
    "h_branchName": "BANDA ACEH",
    "h_currency": "IDR",
    "h_totalBills": "153000",
    "c_fee": "0",
    "h_memberNumber": "0001835276297",
    "h_totalMember": "6",
    "h_detailBillingId": "8888801016622015|8888801835276308|8888801835276319|8888801835276321|8888801835276332|8888801835276343",
    "h_detailPremi": "55500.0|25500.0|25500.0|25500.0|25500.0|25500.0",
    "h_detailName": "DRS.TULUS WIDJAJADAHE|INDRIYANI|INDAH PRAWITA HAPSARI|SHANTI KUSUMO HANDARI|ANGGA PRATAMA ADYAKSA|AGUNG KHOSSYAQI",
    "h_inquiryTransId": "20171129T151336N000164J0000421348R217SRAVI0",
    "h_transactionId":"D5CB49F92F6A7347",
    "biaya_loket": "2500"
}
Feature ID Feature Name
BLC003 BPJS KS VA Inquiry

Description

BPJS KS VA Inquiry used to get Billing Statement for BPJS Kesehatan using Virtual Account Number

Request Parameters

Key Type Mandatory Description Example
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

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description Example
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/billingId.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
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

BPJS KS VA Payment

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC004",
    "data": {  
        "pin_transaksi":"123456",
        "accountNum":"4447",
        "reffNum":"20170607110019000991100059",
        "PAYMENT_TYPE":"BPJS_KESEHATAN_VA",
        "CHANNEL":"AGENT",
        "MCP_ID":"BPJS_KESEHATAN_VA",
        "h_billingId":"8888801260835541",
        "h_numberOfMonthsOfBills":"1",
        "h_customerName":"SEPTIA HANNY",
        "h_branchCode":"1501",
        "h_branchName":"MALUKU",
        "h_currency":"IDR",
        "h_totalBills":"25500",
        "c_fee":"5000",
        "h_memberNumber":"0001260835323",
        "h_totalMember":"1",
        "h_amountPaid":"0",
        "c_payMethod":"2",
        "c_dbAccountNum":"4447",
        "h_totalAmount":30500,
        "h_detailBillingId":"8888801260835541",
        "h_detailPremi":"25500.0",
        "h_detailName":"SEPTIA HANNY",
        "h_inquiryTransId":"20171129T151336N000164J0000421348R217SRAVI0",
        "h_transactionId":"D5CB49F92F6A7347",
        "c_description":"ok",
        "biaya_loket": "2500",
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "101",
    "status": "success",
    "data": {
        "error": false,
        "ket": "vabpjsPayment",
        "PAYMENT_TYPE": "BPJS_KESEHATAN_VA",
        "CHANNEL": "AGENT",
        "MCP_ID": "BPJS_KESEHATAN_VA",
        "h_billingId": "8888801260835541",
        "h_numberOfMonthsOfBills": "1",
        "h_customerName": "SEPTIA HANNY",
        "h_branchCode": "1501",
        "h_branchName": "MALUKU",
        "h_currency": "IDR",
        "h_totalBills": "25500",
        "h_amountPaid": "0",
        "status": "SUKSES",
        "c_fee": "5000",
        "h_totalAmount": "30500",
        "c_payMethod": "2",
        "c_dbAccountNum": "4447",
        "c_description": "ok",
        "h_memberNumber": "0001260835323",
        "h_totalMember": "1",
        "trxNum": "580255",
        "accountNumber": "4447",
        "trxTime": "15:28:36",
        "journal": "580255",
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": 0,
        "noRek": "4447",
        "nominal": "25500",
        "time": "2017-11-29T15:26:34+07:00"
    }
}
Feature ID Feature Name
BLC004 BPJS KS VA Payment

Description

BPJS KS VA Payment used to execute payment of BPJS Kesehatan Billing and get the required receipt for the customer

Request Parameters

Key Type Mandatory Description Example
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 values of data.h_totalBills and data.c_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

Billing amount to be paid can use the summary from h_totalBills, c_fee, and biaya_loket parameter.

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
data.errorNum String Yes Error number, if transaction success value = “”.
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.status String Yes Transaction status. Same value as Parameter Status
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 values of data.h_totalBills and data.c_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.
data.trxNum String Yes Transaction Number. Same value as Inquiry response.
data.accountNumber String Yes Account Number.
data.trxTime String Yes Transaction Time
data.journal String Yes Journal Number
result.kode_loket String Yes Agent’s code.
result.kd_lkt String Yes Kode loket.
result.nama String Yes Agent name.
result.alamat String Yes Agent address.
CustomerData.biaya_adm String Yes Admin fee.
CustomerData.noRek String Yes Agent account number.
CustomerData.nominal String Yes Transaction amount.
CustomerData.time String Yes Date and time transaction.

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nomor VA String Yes BPJS participant VA/billing Id. Same value as data.h_billingId. 8888801260835541
ID Transaksi String Yes Transaction id. Same value as data.h_transactionId. F2716E555226D493
Nama String Yes BPJS participant name. Same value as data.h_customerName. SEPTIA HANNY
Jumlah Bulan String Yes Transaction months. Same value as data.h_numberOfMonthsOfBills. 1 bulan
Cabang String Yes BPJS Branch name. Same value as data.h_branchName. MALUKU
Narasi/Deskripsi String Yes Transaction description. Same value as data.c_description. ok
Jumlah Peserta String Yes Number of family member. Same value as data.h_totalMember. 1
Status String Yes Transaction status. Same value as data.status. SUKSES
Jurnal Bank String Yes Journal number. Same value as data.journal. 580255
Total Iuran String Yes Transaction total bills. Same value as data.h_totalBills. 80000
Admin Bank String Yes Admin fee. Same value as data.c_fee. 0
Biaya Loket String Yes Loket fee. Same value as data.biaya_loket. 2500
Jumlah Bayar String Yes Total bills. Sum of payment's data.h_totalBills, data.c_fee, and data.biaya_loket. 82500

BPJS TK BPU Inquiry

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC005",
    "data": {
        "reffNum": "20170607110019000991100021",
        "billingId1": "3174042905850005",
        "numberOfMonthsOfBills": "1"
    }
}

Sample Response:

{
    "error": false,
    "ket": "Pembayaran BPJS TK Individu (BPU)",
    "h_billingNum": "3174042905850005",
    "h_requestId": "API182807000204299",
    "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
}
Feature ID Feature Name
BLC005 BPJS TK BPU Inquiry

Description

BPJS TK BPU Inquiry used to get BIlling statement of BPJS Ketenagakerjaan Bukan Penerima Upah (BPU)

Request Parameters

Key Type Mandatory Description
data.billingId1 String Yes Customer’s billing Id.
data.numberOfMonthOfBills String Yes Number of months of bills, with options 1,3,6 and 12.

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
error String Yes Transaction status : a) false : success b) 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.
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 biaya_loket.

BPJS TK BPU Payment

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC006",
    "data": {
        "pin_transaksi": "123456",
        "reffNum": "20170607110019000991100059",
        "h_billingNum": "3174042905850005",
        "h_requestId": "API182807000204299",
        "h_expiredDate": "07-10-2017",
        "h_effectiveDate": "13-10-2017",
        "h_activeDate": "13-06-2017",
        "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",
        "accountNum": "4447",
        "c_description": "",
        "biaya_loket": "2500",
        "c_totalPay": 3229200,
        "total_amount": 3231700,
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "114",
    "status": "success",
    "data": {
        "error": false,
        "ket": "Pembayaran BPJS TK Individu (BPU)",
        "h_billingNum": "3174042905850005",
        "h_requestId": "API182807000204299",
        "h_expiredDate": "07-10-2017",
        "h_effectiveDate": "13-10-2017",
        "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": "4447",
        "c_description": "",
        "c_fee": "0",
        "journal": "580490",
        "h_institutionId": "BPJS KETENAGAKERJAAN INDIVIDU (BPU)",
        "h_billingPeriod": "12",
        "transactionDateTime": "29-11-2017 18:45:39",
        "accountNumber": "4447",
        "reffNum": "20170607110019000991100059",
        "biaya_loket": "2500",
        "total_amount": 3231700,
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": "0",
        "noRek": "4447",
        "nominal": 3229200,
        "time": "2017-11-29T18:43:38+07:00"
    }
}

Sample Response Error

{
    "trxType": "114",
    "status": "success",
    "data": {
        "error": true,
        "errorNum": "9805",
        "message": "(SOA) FAILED TO PARSE SOAP MESSAGE",
        "reffNum": "20170607110019000991100059",
        "biaya_loket": "2500",
        "total_amount": 3231700,
        "ori_errorNum": "9805",
        "ori_message": "(SOA) FAILED TO PARSE SOAP MESSAGE"
    },
    "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": {
        "noRek": "4447",
        "nominal": 3229200,
        "time": "2017-11-29T18:52:28+07:00"
    }
}
Feature ID Feature Name
BLC006 BPJS TK BPU Payment

Description

BPJS TK BPU Payment used to execute payment of BPJS Ketenagakerjaan Bukan Penerima Upah (BPU)

Request Parameters

Key Type Mandatory Description
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.
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.c_description String Yes Description.
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 biaya_loket. Same value as Inquiry response.

Billing amount to be paid can use the summary from h_totalBPJSTK, c_fee, and biaya_loket parameter or it could be taken directly from total_amount parameter.

Some of the parameter used static key which could be seen here.

Response Parameters

Key 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 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 biaya_loket. 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.

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nomor Referensi String Yes reference number. Same value as data.reffNum. 20170607110019000991100021
Nomor Peserta String Yes BPJS participant number. Same value as data.h_billingNum. 8888801260835541
Nama String Yes BPJS participant name. Same value as data.h_companyName. TEGUH PRASETYO UTOMO
Kode Iuran String Yes BPJS contribution code. Same value as data.h_contributionCode. 900000013621
Program String Yes BPJS program. Same value as data.h_program. JKK,JKM
Periode String Yes Billing period. Same value as data.h_billingPeriod. 12
Tanggal Efektif String Yes Effective date. Same value as data.h_effectiveDate. 13-10-2017
Tanggal Akhir String Yes Expired date. Same value as data.h_expiredDate. 07-10-2017
Total Iuran String Yes Total contributions amount. Same value as data.h_totalBPJSTK. 3229200
Admin Bank String Yes Transaction fee. Same value as data.c_fee. 0
Biaya Loket String Yes Counter Fee. Same value as data.biaya_loket. 2500
Total pembayaran String Yes Total payment. Same of data.h_totalBPJSTK, data.c_fee, and data.biaya_loket. 3231700
Jurnal Bank String Yes Journal number. Same value as data.journal. 580490

Kartu Kredit BNI Inquiry

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC007",
    "data": {
        "reffNum": "20170607110019000991100059",
        "clientId": "IBOC",
        "cardNum": "4365830000003401"
    }
}

Sample Response:

{
    "error": false,
    "ket": "Credit Card BNI Inquiry",
    "cardNum": "4365830000003401",
    "statementDate": "08092013",
    "dueDate": "09092013",
    "cardHolder": "01RPATCH CX2087",
    "cardlinkFlag": "02",
    "lastBillAmountSign": "-",
    "lastBillAmount": "8777797",
    "minPayment": "0",
    "minPayment1": "00000000",
    "minPayment2": "000000",
    "status": "2"
}

Sample Response Error

{
    "error": true,
    "errorNum": "12",
    "message": "Invalid transaction"
}
Feature ID Feature Name
BLC007 Kartu Kredit BNI Inquiry

Description

Kartu Kredit BNI Inquiry feature is used to get Billing statement of BNI Credit Card

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to tabel.
data.clientId String Yes Default "IBOC".
data.reffNum String Yes Reference number which is combination of transaction date, random number, agent’s counter code. mapping-reffnum.
data.cardNum String Yes Nomor kartu kredit yang dibayarkan.

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
error String Yes Transaction status :

false : success
true : failed.
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.

Kartu Kredit BNI Payment

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC008",
  "data": {
        "clientId": "IBOC",
        "reffNum": "20170607110019000991100059",
        "cardNum": "4365830000003401",
        "accountNum": "4447",
        "amount": "60000",
        "pin_transaksi": "123456",
        "stan":"123451234561234"
    }
}

Sample Response:

{
    "trxType": "41",
    "status": "success",
    "data": {
        "error": false,
        "ket": "Credit Card BNI",
        "financialJournal": "593381",
        "journal": "947170693   ",
        "cardNum": "4365830000003401",
        "accountNum": "4447",
        "amount": "60000",
        "app_id":"IPAY",
        "stan":"123451234561234"
    },
    "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": 0,
        "nominal": "60000",
        "time": "2017-12-06T08:48:49+07:00"
    }
}

Sample Response Error

{
    "trxType": "41",
    "status": "success",
    "data": {
        "error": true,
        "errorNum": "12",
        "message": "Invalid transaction"
    },
    "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": 0,
        "nominal": "60000",
        "time": "2017-12-06T08:54:46+07:00"
    }
}
Feature ID Feature Name
BLC008 Kartu Kredit BNI Payment

Description

Kartu Kredit BNI payment feature is used to execute payment of BNI Credit Card Billing

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List.
data.clientId String Yes Default “IBOC”.
data.reffNum String Yes Reference number which is combination of transaction date, random number, agent’s counter code. mapping-reffnum.
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.

Some of the parameter used static key which could be seen here.

Response Parameters

Key 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.financialJournal String Yes Transaction’s financial journal.
data.cardNum String Yes Customer BNI credit card number.
data.accountNum String Yes Agent’s account number. Same value as 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.

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Rabu, 06 Desember 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 08:54:46 WIB
Nomor Jurnal String Yes Journal number. Same value as data.journal. 947170693
Nomor Kartu String Yes Customer number. Same value as data.cardNum. 4365830000003401
Jumlah Tagihan String Yes Payment amount. Same value as data.amount. 60000
Biaya Admin String Yes Bank admin fee. Same value as customerData.biaya_adm. 0
Total Bayar String Yes Total bill payment. Same value as data.amount. 60000

Purchase Service

Feature ID Service Group Feature Name
BLC009 Purchase Top Up GSM
BLC010 Purchase Top Up BNI-Tapcash

Top Up GSM

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC009",
    "data": {
        "pin_transaksi": "123456",
        "clientId": "IBOC",
        "reffNum": "20170607110019000991100059",
        "msisdn": "081284123123",
        "providerId": "AS",
        "accountNum": "4447",
        "amount": "50000",
        "stan":"1706071100199919"
    }
}

Sample Response (Denom Kecil)

{
    "trxType": "10",
    "status": "success",
    "data": {
        "error": false,
        "ket": "AS",
        "journal": "957220410   ",
        "financialJournal": "590279",
        "msisdn": "081284123123",
        "productCode": "BNI_TS10",
        "accountNum": "4447",
        "amount": "10000",
        "c_fee": "1500",
        "reffNum": "20170607110019000991100059",
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": "1500",
        "noHP": "081284123123",
        "nominal": "10000",
        "time": "2017-12-05T08:57:36+07:00"
    }
}

Sample Response (Denom Besar)

{
{
    "trxType": "10",
    "status": "success",
    "data": {
        "error": false,
        "ket": "AS",
        "journal": "957220410   ",
        "financialJournal": "590279",
        "msisdn": "081284123123",
        "providerId": "AS",
        "accountNum": "4447",
        "amount": "50000",
        "windowPeriod": "00000100",
        "reffNum": "20170607110019000991100059",
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": "1500",
        "noHP": "081284123123",
        "nominal": "50000",
        "time": "2017-12-05T08:57:36+07:00"
    }
}
Feature ID Feature Name
BLC009 Top Up GSM

Description

Top Up GMS feature is used to purchase GSM Credit

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to tabel.
data.clientId String Yes Default “IBOC”.
data.reffNum String Yes Reference number which is combination of [transaction date] . [random number] . [agent’s counter code]
data.windowPeriod String Yes Window period.
data.msisdn String Yes Mobile Phone Number.
data.providerId String Yes Note Provider id.
data.amount String Yes Nominal top up(denom). List of Denom refer to tabel.
data.accountNum String Yes Agent’s account number.
data.pin_transaksi String Yes Agent’s transaction pin.

Some of the parameter used static key which could be seen here.

Response Parameters

Key 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.
data.journal String Yes Transaction’s journal.
data.msisdn String Yes Mobile Phone number. Same value as payment request.
data.providerId String Yes Note Provider id. Same value as request
data.accountNum String Yes Agent’s account number. Same value as request.
data.amount String Yes Operator amount.
data.financialJournal 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.

Provider Operator and Amount

No. Operator ProviderID Nominal Harga
1 Telkomsel AS 5000 6500
10000 11500
25000 26500
50000 51500
100000 101500
150000 151500
200000 201500
300000 301500
500000 501500
1000000 1001500
2. Indosat INDOSAT_PREPAID 5000 6000
10000 11000
25000 25000
50000 50000
100000 100000
150000 150000
3. XL/AXIS XL_REG 5000 6500
10000 11500
25000 25000
50000 50000
100000 100000
200000 200000
4. Tri THREE 5000 6000
10000 11000
30000 30000
50000 50000
100000 100000
150000 150000
300000 300000
500000 500000
5. Smartfren FREN 5000 6000
10000 11000
25000 25000
50000 50000
100000 100000
150000 150000
200000 200000
300000 300000
500000 500000

Note

Billing amount to be paid can use the summary from data.amount and CustomerData.biaya_adm parameter taken from response field.

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nomor Referensi String Yes reference/journal number. Same value as data.journal. 957220410
Nomor Handphone String Yes Handphone number. Same value as data.msisdn. 081284123123
Nominal String Yes Nominal bill. Same value as data.amount 50000
Harga String Yes Total payment. Sum of CustomerData.biaya_adm and data.amount. 51500
Jurnal Bank String Yes Financial journal. Same value as data.financialJournal. 278157
Status String Yes Transaction status. Same value as status. SUKSES

Top Up BNI-Tapcash

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC010",
    "data": {
        "clientId": "IBOC",
        "reffNum": "20170607110019000991100059",
        "providerId": "BNI-TAPCASH",
        "tapcashNum": "7546130000012501",
        "amount": "100000",
        "accountNum": "4447",
        "pin_transaksi": "123456",
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "112",
    "status": "success",
    "data": {
        "error": false,
        "ket": "Top Up Tapcash",
        "providerId": "BNI-TAPCASH",
        "journal": "941210737   ",
        "financialJournal": "593434",
        "tapcashNum": "7546130000012501",
        "accountNum": "4447",
        "voucherNum": "061217593434",
        "amount": "100000",
        "biaya_loket": "1500",
        "reffNum": "20170607110019000991100059",
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": 0,
        "no Tapcash": "7546130000012501",
        "nominal": "100000",
        "time": "2017-12-06T09:42:56+07:00"
    }
}

Sample Response Error

{
    "trxType": "112",
    "status": "success",
    "data": {
        "error": true,
        "errorNum": "D0",
        "ori_errorNum": "D0",
        "message": "Nomor pelanggan/billing/handphone/tagihan/kode bayar/kartu tidak ditemukan, pastikan nomor yang Anda masukkan sudah benar. (RC D0)"
    },
    "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": 0,
        "no Tapcash": "98765432111",
        "nominal": "100000",
        "time": "2017-12-06T09:49:38+07:00"
    }
}
Feature ID Feature Name
BLC010 Top Up BNI Tapcash

Description

Top Up BNI Tapcash feature is used to top up Card Based eMoney Account of BNI Tapcash Product

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to tabel.
data.reffNum String Yes Reference number which is combination of [transaction date] . [random number] . [agent’s counter code]
data.providerId String Yes Default "BNI‐TAPCASH".
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.

Some of the parameter used static key which could be seen here.

Billing amount to be paid can use the summary from amount and biaya_loket parameter by Rp. 1500,-

Response Parameters

Key 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 reference number. Same value as request
data.biaya_loket String Yes Counter Fee
data.errorNum String Yes Transaction 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 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

On payment success, the subscriber could update their TapCash Balance via BNI ATM or using BNI TapCash Go Application using Mobile Phone with NFC features. BNI TapCash Go could be downloaded via Google Playstore.

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nomor Referensi String Yes Transaction’s reference number. data.reffNum 20171206094252661142100059
No. Kartu Tapcash String Yes BNI TapCash number. Same values as data.tapcashNum 7546130000012501
Nominal String Yes Transfer amount. Same value as CustomerData.nominal. 100000
Biaya Loket String Yes Admin fee. Same value as data.biaya_loket. 1500
Total Pembayaran String Yes Total transfer. Sum of data.amount and data.biaya_loket. 101500
Jurnal Bank String Yes Transaction’s financial journal. Same Value as data.financialJournal 593434

Transfer Service

Feature ID Service Group Feature Name
BLC011 Transfer Transfer BNI Inquiry
BLC012 Transfer Transfer BNI Payment
BLC013 Transfer Transfer Non BNI Inquiry
BLC014 Transfer Transfer Non BNI Payment
BLC015 Transfer Check Account
BLC016 Transfer Check Account Detail

Transfer BNI Inquiry

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC011",
    "data": {
        "clientId": "IBOC",
        "reffNum": "20170607110019000991100059",
        "providerId": "BNI-TAPCASH",
        "tapcashNum": "7546130000012501",
        "amount": "100000",
        "accountNum": "4447",
        "pin_transaksi": "123456",
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "112",
    "status": "success",
    "data": {
        "error": false,
        "ket": "Top Up Tapcash",
        "providerId": "BNI-TAPCASH",
        "journal": "941210737   ",
        "financialJournal": "593434",
        "tapcashNum": "7546130000012501",
        "accountNum": "4447",
        "voucherNum": "061217593434",
        "amount": "100000",
        "biaya_loket": "1500",
        "reffNum": "20170607110019000991100059",
        "errorNum": "",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": 0,
        "no Tapcash": "7546130000012501",
        "nominal": "100000",
        "time": "2017-12-06T09:42:56+07:00"
    }
}

Sample Response Error

{
    "error": true,
    "errorNum": "0108",
    "message": "NO SUCH ACCOUNT",
    "biaya_loket": "1000"
}
Feature ID Feature Name
BLC011 Transfer BNI Inquiry

Description

Transfer BNI Inquiry feature is used get information of BNI Account Information for money wiring purpose.

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List.
data.customerAccountNum String Yes Transfer destination account (BNI Account).

Some of the parameter used static key which could be seen here.

Before transfer process, please use Check Account service provided here

Response Parameters

Key Type Mandatory Description
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
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_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
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
errorNum String Yes Transaction’s error number
message String Yes Transaction’s error message

Transfer BNI Payment

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC012",
    "data": {
        "pin_transaksi": "12345",
        "clientId": "ALC999100059",
        "clientAccountNum": "4447",
        "requestId": "212121212",
        "reffNum": "2017060711001900099290122",
        "requestTime": "2017-11-29T18:12:00.431+07:00",
        "customerAccountNum": "116724773",
        "d_name" : "Bpk ANDI  ANDI",
        "amount": "10000",
        "biaya_loket": "1000",
        "date":"2017-11-29",
        "trxType":"transfer",
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "3",
    "status": "success",
    "data": {
        "error": false,
        "transactionJournal": "900250",
        "biaya_loket": "1000",
        "app_id":"IPAY",
        "stan":"1706071100199919"
    },
    "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": {
        "noRek": "116724773",
        "namaNasabah": "Bpk ANDI  ANDI",
        "noHP": null,
        "nominal": "10000",
        "time": "2017-11-29T13:46:52+07:00"
    }
}

Sample Response Error

{
    "trxType": "3",
    "status": "success",
    "data": {
        "error": true,
        "errorNum": "8015",
        "message": "Invalid check digit ",
        "biaya_loket": "1000"
    },
    "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": {
        "noRek": "1234",
        "namaNasabah": "Bpk ANDI  ANDI",
        "noHP": null,
        "nominal": "10000",
        "time": "2017-11-29T14:22:26+07:00"
    }
}
Feature ID Feature Name
BLC012 Transfer BNI Payment

Description

Transfer BNI Payment feature is used to execute money wiring / transfer between BNI Account.

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List.
data.pin_transaksi String Yes Agent’s transaction pin
data.clientId String Yes BNI Agent code. Combination of kode_mitra, kode_cabang, and kode_loket
data.clientAccountNum String Yes BNI Agent account number
data.requestId String Yes Request ID, unique number (Numeric)
data.requestTime String Yes Transaction’s time.
data.customerAccountNum String Yes Transfer destination account (BNI Account)
data.d_name String Yes Name of the destination account owner.
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"

Some of the parameter used static key which could be seen here.

Request Note

Response Parameters

Key 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.biaya_loket String Yes Counter fee. Same value as Payment request
data.transactionJournal String Yes Transaction’s journal 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
result.kode_mitra String Yes Agent’s mitra code
result.alamat String Yes Agent’s address
CustomerData.noRek String Yes Transfer destination 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

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nama Nasabah String Yes Name of the destination account owner. Same value as CustomerData.namaNasabah. ARDHA HERDIYANTO
Nomor Rekening String Yes Account destination. Same value as CustomerData.noRek. 152010300293553
Nominal String Yes Transfer amount. Same value as CustomerData.nominal. 10000
No Jurnal String Yes Transaction journal. Same value as data.transactionJournal. 900250
Biaya Loket String Yes Admin fee. Same value as data.biaya_loket. 1000
Total Bayar String Yes Total transfer. Sum of CustomerData.nominal and data.biaya_loket. 11000

Transfer Non BNI Inquiry

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC013",
    "data": {  
        "destinationBankCode":"147",
        "destinationAccountNum":"1212121",
        "accountNum":"434767431",
        "userChannelId":"IPYAG00005"
    }
}

Sample Response:

{
    "error": false,
    "ket": "Transfer Antar Bank",
    "destinationAccountNum": "1212121",
    "destinationAccountName": "EVI SURYANINGSIH",
    "destinationBankName": "BANK MUAMALAT",
    "retrievalReffNum": "100000197294",
    "accountName": "",
    "customerReffNum": "788444579",
    "destinationBankCode": "147",
    "userChannelId": "IPYAG00005",
    "responseCode": "00"
    "biaya_adm":"6500"
}
Feature ID Feature Name
BLC013 Transfer non BNI Inquiry

Description

Transfer BNI Inquiry feature is used get information of Other Bank Account Information for money wiring purpose.

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List
data.destinationBankCode String Yes Account destination Bank Code.

List of the bank code refer to Daftar Kode Bank dan Nama Bank field KODE_BANK
data.destinationAccountNum String Yes Account destination. (Non BNI Account)
data.accountNum String Yes Agent’s account number
data.userChannelId String Yes Agent’s user id or Agent’s code (concat of value kode_mitra, kode_cabang, kode_loket)

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
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 reference number
accountName String Yes Agent’s account name
customerReffNum String Yes Customer reference number
destinationBankCode String Yes Account destination Bank Code. Same value as Inquiry request
userChannelId String Yes Agent’s user id or Agent’s code (concat of value kode_mitra, kode_cabang, kode_loket). Same value as Inquiry request
responseCode String Yes Transaction response code
Data.biaya_adm String Yes Admin fee

List of Bank Codes & Names

Kode Bank Nama Bank
945 BANK AGRIS
494 BANK AGRO
020 BANK ANK
088 BANK ANTARDAERAH
061 BANK ANZ
052 BANK ANZ-RBS
037 BANK ARTHA GRAHA
542 BANK ARTOS
536 BANK BCA SYARIAH
133 BANK BENGKULU
016 BANK BII
535 BANK BKE
002 BANK BRI
422 BANK BRI SYARIAH
200 BANK BTN
213 BANK BTPN
441 BANK BUKOPIN
076 BANK BUMI ARTA
485 BANK BUMIPUTERA
054 BANK CAPITAL
014 BANK CENTRAL ASIA
949 BANK CHINATRUST INDONESIA
022 BANK CIMB NIAGA
031 BANK CITIBANK
950 BANK COMMONWEALTH
011 BANK DANAMON
046 BANK DBS
111 BANK DKI
087 BANK EKONOMI RAHARJA
161 BANK GANESHA
484 BANK HANA
041 BANK HSBC
513 BANK INA
555 BANK INDEX
110 BANK JABAR
472 BANK JASA JAKARTA
113 BANK JATENG
114 BANK JATIM
167 BANK KESAWAN
121 BANK LAMPUNG
131 BANK MALUKU
008 BANK MANDIRI
157 BANK MASPION
097 BANK MAYAPADA
553 BANK MAYORA
426 BANK MEGA
506 BANK MEGA SYARIAH
151 BANK MESTIKA
147 BANK MUAMALAT
095 BANK MUTIARA
118 BANK NAGARI
130 BANK NTT
028 BANK OCBC NISP
019 BANK PANIN
013 BANK PERMATA
558 BANK PUNDI
089 BANK RABOBANK
119 BANK RIAU
501 BANK ROYAL
523 BANK SAHABAT SAMPOERNA
212 BANK SAUDARA
498 BANK SBI INDONESIA (INDOMONEX)
153 BANK SINARMAS
050 BANK STANDARD CHARTERED
134 BANK SULTENG
120 BANK SUMSEL BABEL
117 BANK SUMUT
146 BANK SWADESI
451 BANK SYARIAH MANDIRI
023 BANK UOB BUANA
566 BANK VICTORIA INTERNATIONAL
036 BANK WINDU KENTJANA INTERNATIONAL
116 BPD ACEH
129 BPD BALI
112 BPD DIY
115 BPD JATIM
123 BPD KALBAR
122 BPD KALSEL
125 BPD KALTENG
124 BPD KALTIM
128 BPD NTB
132 BPD PAPUA
126 BPD SULSEL
135 BPD SULTRA
127 BPD SULUT
688 BPR KS
911 TCASH
042 THE BANK OF TOKYO-MITSUBISHI UFJ

Transfer Non BNI Payment

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC014",
    "data": {  
        "pin_transaksi":"12345",
        "destinationBankCode":"147",
        "destinationBankName":"BANK MUAMALAT",
        "destinationAccountNum":"1212121",
        "destinationAccountName":"ALBERT ENSTEIN BUDI UTOMO",
        "userChannelId":"IPYAG00005",
        "customerReffNum":"788444579",
        "amount":"20000",
        "accountNum":"116724773",
        "date":"2015-04-09",
        "biaya_adm":"6500",
        "stan":"1706071100199919"
    }
}

Sample Response:

{
    "trxType": "4",
    "status": "success",
    "data": {
        "error": false,
        "ket": "Transfer Antar Bank",
        "destinationAccountNum": "152010300293553",
        "destinationAccountName": "ARDHA HERDIYANTO",
        "customerReffNum": "678888293",
        "destinationBankName": "BANK MUAMALAT",
        "retrievalReffNum": "150003552167",
        "accountName": "BPK BUDI SUKOCO",
        "responseCode": "00",
        "app_id":"IPAY",
        "stan":"1706071100199919"   
    },
    "result": {
        "kode_loket": "IPY01400005",
        "kd_lkt": "00005",
        "nama": "Agung",
        "kode_cabang": "014",
        "kode_mitra": "IPY",
        "alamat": "123 Jatikalang Krian Sidoarjo Jawa Timur 60252"
    },
    "CustomerData": {
        "biaya_adm": "6500",
        "nominal": "10000",
        "time": "2016-04-28T10:14:46+07:00"
    }
}
Feature ID Feature Name
BLC014 Transfer non BNI Payment

Description

Transfer non BNI Payment feature is used to execute money wiring / transfer from BNI Account to other Bank Account.

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List
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 reference 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

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
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 reference 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

List of Bank Codes & Names

Kode Bank Nama Bank
945 BANK AGRIS
494 BANK AGRO
020 BANK ANK
088 BANK ANTARDAERAH
061 BANK ANZ
052 BANK ANZ-RBS
037 BANK ARTHA GRAHA
542 BANK ARTOS
536 BANK BCA SYARIAH
133 BANK BENGKULU
016 BANK BII
535 BANK BKE
002 BANK BRI
422 BANK BRI SYARIAH
200 BANK BTN
213 BANK BTPN
441 BANK BUKOPIN
076 BANK BUMI ARTA
485 BANK BUMIPUTERA
054 BANK CAPITAL
014 BANK CENTRAL ASIA
949 BANK CHINATRUST INDONESIA
022 BANK CIMB NIAGA
031 BANK CITIBANK
950 BANK COMMONWEALTH
011 BANK DANAMON
046 BANK DBS
111 BANK DKI
087 BANK EKONOMI RAHARJA
161 BANK GANESHA
484 BANK HANA
041 BANK HSBC
513 BANK INA
555 BANK INDEX
110 BANK JABAR
472 BANK JASA JAKARTA
113 BANK JATENG
114 BANK JATIM
167 BANK KESAWAN
121 BANK LAMPUNG
131 BANK MALUKU
008 BANK MANDIRI
157 BANK MASPION
097 BANK MAYAPADA
553 BANK MAYORA
426 BANK MEGA
506 BANK MEGA SYARIAH
151 BANK MESTIKA
147 BANK MUAMALAT
095 BANK MUTIARA
118 BANK NAGARI
130 BANK NTT
028 BANK OCBC NISP
019 BANK PANIN
013 BANK PERMATA
558 BANK PUNDI
089 BANK RABOBANK
119 BANK RIAU
501 BANK ROYAL
523 BANK SAHABAT SAMPOERNA
212 BANK SAUDARA
498 BANK SBI INDONESIA (INDOMONEX)
153 BANK SINARMAS
050 BANK STANDARD CHARTERED
134 BANK SULTENG
120 BANK SUMSEL BABEL
117 BANK SUMUT
146 BANK SWADESI
451 BANK SYARIAH MANDIRI
023 BANK UOB BUANA
566 BANK VICTORIA INTERNATIONAL
036 BANK WINDU KENTJANA INTERNATIONAL
116 BPD ACEH
129 BPD BALI
112 BPD DIY
115 BPD JATIM
123 BPD KALBAR
122 BPD KALSEL
125 BPD KALTENG
124 BPD KALTIM
128 BPD NTB
132 BPD PAPUA
126 BPD SULSEL
135 BPD SULTRA
127 BPD SULUT
688 BPR KS
911 TCASH
042 THE BANK OF TOKYO-MITSUBISHI UFJ

Customer Receipt

Name Type Mandatory Description Example
Tanggal Transaksi String Yes Date transaction. Parse value from CustomerData.time. Kamis, 19 November 2017
Waktu Transaksi String Yes Time transaction. Parse value from CustomerData.time. 14:37:18 WIB
Nama Nasabah String Yes Name of the destination account owner. Same value as data.destinationAccountName. ARDHA HERDIYANTO
Nomor Rekening String Yes Account destination. (Non BNI Account). Same value as data.destinationAccountNum. 152010300293553
Nama Bank String Yes Account destination Bank name. Same value as data.destinationBankName. BANK MUAMALAT
Nominal String Yes Transfer amount. Same value as CustomerData.nominal. 10000
Biaya Admin String Yes Admin fee. Same value as CustomerData.biaya_adm. 6500
Total Nominal String Yes Total transfer. Sum of CustomerData.nominal and CustomerData.biaya_adm. 16500

Check Account

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC015",
    "data": {
        "systemId": "AGENT",
        "accountNum": "4447",
        "options": "8"
    }
}

Sample Response:

{
    "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_currentBalance": "498.923.712,00",
    "d_availableBalance": "498.923.712,00",
    "d_openDate": "2010-05-31",
    "d_address1": "JALAN",
    "d_address3": "DESA",
    "d_postCode": "13890",
    "d_homePhone": "",
    "d_mobilePhone": "081000000000",
    "d_address1AA": "JALAN",
    "d_address2AA": "",
    "d_address3AA": "DESA",
    "d_address4AA": "DANAU KERINCI",
    "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": "2,5000"
}
Feature ID Feature Name
BLC015 Check Account

Description

Check Account feature is used to get information about a specific BNI Account

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List
data.systemId String Yes Default “AGENT”
data.accountNum String Yes Account number
data.options String Yes Default “8”

Some of the parameter used static key which could be seen here.

Response Parameters

Key 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_currentBalance String Yes Account’s current balance
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

Check Account Detail

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC016",
    "data": {
        "accountNum": "9880055500000048"
    }
}

Sample Response:

{
    "error": false,
    "ket": "checkAccount 9880055500000048 ",
    "d_accountCurrency": "IDR",
    "d_status": "STOP",
    "d_branchNum": "0259",
    "d_accountType": "BNI TAPLUS",
    "d_accountTypeCode": "2000",
    "d_accountSubcatCode": "0001",
    "d_metodeHitungBunga": "DDCV",
    "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.785.044.078,00",
    "d_danaBelumEfektif": "              0,00",
    "d_nominalBelumDicetak": "     95.954.205,00-",
    "d_bungaPerProvitHariIni": "            ,00000",
    "d_saldoBuku": "  2.880.998.283,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_siklusRekeningKoran": "",
    "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_perubahanTerakhirRekeningIni": "99/99/9999",
    "d_nominalBungaOverdraft": "            ,00000",
    "d_tprRate": "  000000",
    "d_nomorSertifikat": "",
    "d_provitAvailable": "0",
    "d_userIdPembukaRekening": ""
}
Feature ID Feature Name
BLC016 Check Account Details

Description

Check Account Details feature is used to get more detailed information about a specific BNI Account

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List
data.accountNum String Yes Account number

Some of the parameter used static key which could be seen here.

Response Parameters

Key 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
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
data.d_siklusRekeningKoran 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
data.d_tanggalProsesBukaRekening String Yes Opening account process date
data.d_kodeKlafikasiGl String Yes GI classiffication code
data.d_perubahanTerakhirRekeningIni 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

Management Service

Feature ID Service Group Feature Name
BLC017 Management Get Transaksi
BLC018 Management Get One Transaksi
BLC019 Management Get Agent Approved

Get Transaksi

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC017",
    "data": {
        "dari": "2017-10-01",
        "sampai": "2017-11-30"
    }
}

Sample Response:

{
    "code": "1",
    "data": [
        {
            "transaksi_id": 934167,
            "no_jurnal": "580686",
            "biller_type": "PLN_NON_TAGLIS",
            "biller_code": "01070000",
            "biller_name": "",
            "no_rekening": "",
            "datetime": "2017-11-30T06:10:15.000Z",
            "via": null,
            "nominal": "Rp. 50000",
            "kode_outlet": "ALC999100059",
            "trxtype_id": "PLN Non Taglis"
        },
        {
            "transaksi_id": 934145,
            "no_jurnal": "580596",
            "biller_type": "PLN_NON_TAGLIS",
            "biller_code": "01070000",
            "biller_name": "",
            "no_rekening": "",
            "datetime": "2017-11-30T03:56:39.000Z",
            "via": null,
            "nominal": "Rp. 0",
            "kode_outlet": "ALC999100059",
            "trxtype_id": "PLN Non Taglis"
        },
        {
            "transaksi_id": 934144,
            "no_jurnal": "580593",
            "biller_type": "PLN_NON_TAGLIS",
            "biller_code": "01070000",
            "biller_name": "",
            "no_rekening": "",
            "datetime": "2017-11-30T03:54:52.000Z",
            "via": null,
            "nominal": "Rp. 0",
            "kode_outlet": "ALC999100059",
            "trxtype_id": "PLN Non Taglis"
        }
    ]
}

Sample Response Error:

{
    "code": "1",
    "data": []
}
Feature ID Feature Name
BLC017 Get Transaksi

Description

Get Transaksi features is used to get all successful transaction information from the community HUB

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List.
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.

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
code String Yes Default “1” means process successfull.
data.transaksi_id String Yes Transaction id.
data.no_journal 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.
data.datetime String Yes Transaction’s datetime.
data.via String Yes Default null.
data.nominal String Yes Transaction’s nominal.
data.kode_outlet String Yes Agent Code.
data.trxtype_id String Yes Transaction’s type.

Get One Transaksi

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC018",
    "data": {
        "transaksi_id": "934128"
    }
}

Sample Response:

{
    "code": "1",
    "data": [
        {
            "trxtype_id": "114",
            "kode_mitra": "ALC",
            "kode_cabang": "999",
            "kode_loket": "100059",
            "biller_name": "TEGUH PRASETYO UTOMO",
            "keterangan": {
                "trxType": "114",
                "status": "success",
                "data": {
                    "error": false,
                    "ket": "Pembayaran BPJS TK Individu (BPU)",
                    "h_billingNum": "3174042905850005",
                    "h_requestId": "API182807000204299",
                    "h_expiredDate": "07-10-2017",
                    "h_effectiveDate": "13-10-2017",
                    "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": "4447",
                    "c_description": "",
                    "c_fee": "0",
                    "journal": "580490",
                    "h_institutionId": "BPJS KETENAGAKERJAAN INDIVIDU (BPU)",
                    "h_billingPeriod": "12",
                    "transactionDateTime": "29-11-2017 18:45:39",
                    "accountNumber": "4447",
                    "reffNum": "20170607110019000991100059",
                    "biaya_loket": "2500",
                    "total_amount": 3231700,
                    "errorNum": ""
                },
                "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": "0",
                    "noRek": "4447",
                    "nominal": 3229200,
                    "time": "2017-11-29T18:43:38+07:00"
                }
            }
        }
    ]
}

Sample Response Error:

{
    "code": "-1",
    "data": []
}
Feature ID Feature Name
BLC018 Get One Transaksi

Description

Get One Transaksi features is used to get single successful transaction information from the community HUB

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List.
data.transaksi_id String Yes Transaction id

Some of the parameter used static key which could be seen here.

Response Parameters

Key Type Mandatory Description
code String Yes Default “1” means process successfull
data.trxtype_id String Yes Type Request id.
data.kode_mitra String Yes Code for MITRA which is registered in BNI H2H system. This code is part of the agent code.

Agent Code : ABC999123456
kode_mitra is “ABC”.
data.kode_cabang String Yes BNI branch code. This code is part of the agent code.

Agent Code : ABC999123456
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.

Agent Code : ABC999123456
kode_loket is “123456”.
data.biller_name String Yes Biller Name.
keterangan.trxtype String Yes Type Request.

Get Agent Approved

Sample Request:

{
    "project_id": 1,
    "feature_id": "BLC019",
    "data": {
        "start_date": "2017-09-01",
        "end_date": "2017-12-01",
        "search": "",
        "voffset": "0",
        "vlimit": "5"
    }
}

Sample Response:

{
    "code": "1",
    "message": "found",
    "data": [
        {
            "kode_agen": "ALCundefined100057",
            "kode_mitra": "ALC",
            "kode_cabang": "undefined",
            "kode_loket": "100057",
            "nama": "Dian Novanti",
            "no_ktp": "3511111199700001",
            "no_npwp": "999666610000001",
            "jenis_pekerjaan": "24",
            "alamat_jalan": "Jl Melati",
            "alamat_rt_perum": "05/01",
            "alamat_propinsi": "Jawa Timur",
            "alamat_kabupaten_kota": " Kab Sidoarjo",
            "alamat_kecamatan": "Gedangan",
            "alamat_kelurahan": "Punggul",
            "kodepos": "61254",
            "no_tlp_rmh": "03199998888",
            "no_tlp_hp": "087852177666",
            "email": "n.u.rafniaulia.fb@gmail.com",
            "keterangan": "SYSTEM pada 2017-11-27 16:02:18",
            "status": "1",
            "username": "ALCAG100057"
        },
        {
            "kode_agen": "ALC999100058",
            "kode_mitra": "ALC",
            "kode_cabang": "999",
            "kode_loket": "100058",
            "nama": "Dian Novianti",
            "no_ktp": "9999999999999999",
            "no_npwp": "999999999999999",
            "jenis_pekerjaan": "24",
            "alamat_jalan": "Sidoarjo",
            "alamat_rt_perum": "01/02",
            "alamat_propinsi": "Jawa Timur",
            "alamat_kabupaten_kota": "Kab|Sidoarjo",
            "alamat_kecamatan": "Balongbendo",
            "alamat_kelurahan": "Bakalan Wringinpitu",
            "kodepos": "61263",
            "no_tlp_rmh": "0987654321",
            "no_tlp_hp": "098765432123",
            "email": "dian@co.id",
            "keterangan": "SYSTEM pada 2017-11-27 17:14:00",
            "status": "1",
            "username": "ALCAG100058"
        }
    ],
    "count": 2
}

Sample Response Error:

{
    "code": "1",
    "message": "Not found",
    "data": [],
    "count": 0
}
Feature ID Feature Name
BLC019 Get Agent Approval

Description

Get Agent Approval features is used to get specific information from registered agents

Request Parameters

Key Type Mandatory Description
feature_id String Yes Feature Id, refer to Feature List.
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

Some of the parameter used static key which could be seen here.

Response Parameters

Key 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. This code is part of the agent code.

Agent Code : ABC999123456
kode_mitra is "ABC".
data.kode_cabang String Yes BNI branch code. This code is part of the agent code.

Agent Code : ABC999123456
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.

Agent Code : ABC999123456
kode_loket is “123456”.
data.nama String Yes Name of agent approved.
data.no_ktp String Yes Identity card number of agent approved.
data.no_npwp String Yes NPWP number of agent approved.
data.jenis_pekerjaan String Yes Type of work of agent approved, refer to tabel.
data.alamat_jalan String Yes Street address of agent approved.
data.alamat_rt_perum String Yes Neighbourhood (RT) address of agent approved.
data.alamat_kelurahan String Yes Urban village address of agent approved.
data.alamat_kecamatan String Yes Sub-district address of agent approved.
data.alamat_kabupaten_kota String Yes District address of agent approved.
data.alamat_propinsi String Yes Province address of agent approved.
data.kodepos String Yes Zip Code of agent approved.
data.no_tlp_rmh String Yes Phone number of agent approved.
data.no_tlp_hp String Yes Handphone number of agent approved.
data.email String Yes Email address of agent approved.
data.keterangan String Yes Approved by & datetime.
data.status String Yes Default “0”.
data.username String Yes Username of agent approved.
count String Yes Number of records.

Comm-HUB- Supporting Information

Static Key Table

Key Type Description Example
project_id Number Identification number of your project, find Project ID inside the Project Summary. 1
feature_id String Transactional Feature Code. Please refer to this tabel. VSC441
data String Transaction Request Body payload. Please refer to the right pane of this documentation. Differs on each product
reffNum String Unique Numbers sent on request. Please refer to this part for ReffNum mapping. 2017060711001900099190122
clientId String Default IBOC. IBOC
accountNum String Agent account number 4447
stan String Unique Numbers sent on Transaction. Please refer to this part for Stan Numbering Rules. 1706071100190122
va String Virtual Account Number 085785432441

Field Mapping on Request:

ReffNum and Stan Mapping

ReffNum Mapping

reffNum = tanggal_transaksi (Transaction Date): [yyyymmddhhiisszzzzz] + random_angka (Random Numbers) :[0-9] + kode_loket

Note:

  1. tanggal_transaksi: length 19 digits
    • yyyy: Year 4 digits (eg. 2017)
    • mm: Month 2 digits (eg. 06)
    • dd: Day of month 2 digits (eg. 07)
    • hh: Hours 2 digits (eg. 11)
    • ii: Minutes 2 digits (eg. 00)
    • ss: Seconds 2 digits (eg. 19)
    • zzzzz: Miliseconds 5 digits (eg. 00099)
  2. random_angka: length 1 digit (eg. 2)
  3. kode_loket: length 5-6 digits (eg. 90122)

Sample:

reffNum = **2017060711001900099290122**

Stan Mapping

stan = tanggal_transaksi: [yymmddhhiisszz] + random_angka:[0-9][0-9]

Information:

  1. tanggal_transaksi: length 14 digits
    • yy: Year 2 digits (eg. 17)
    • mm: Month 2 digits (eg. 06)
    • dd: Day of month 2 digits (eg. 07)
    • hh: Hours 2 digits (eg. 11)
    • ii: Minutes 2 digits (eg. 00)
    • ss: Seconds 2 digits (eg. 19)
    • zz: Miliseconds 2 digits (eg. 99)
  2. random_angka: random number 2 digits (eg. 19)

Sample:
stan = 1706071100199919

ADB-HUB-Introduction

HTTP Request

All HTTP Request for Autodebet HUB use the same endpoint as seen below:

POST https://API_URL/autodb

Differs on the payload, specifically on the feature ID and Data, please refer to Feature List. to see the sample.

About

Autodebet HUB focuses on automated execution of transaction of the subscriber account in designated time in specified amount. Autodebet HUB based on PT. Bank Negara Indonesia Banking Services, to use this HUB you are prompted to adhere with PT. Bank Negara Indonesia Terms and Conditions on using these services.

For more information, please visit Bank Term's & Condition

System Flow

Autodebet HUB API system depicted on this diagram below.

Autodebet HUB System Flow

ADB-HUB-Feature List

There are several features within service groups of Autodebet HUB in which described below.

Feature ID Service Group Feature Name
BLA001 Payment Get Transaction Type
BLA002 Payment Inquiry Billing ID
BLA003 Payment Get Subscriber
BLA004 Payment Get Transaction Report
BLA005 Payment Register New Subscriber
BLA006 Payment Bulk Register Subscriber
BLA007 Payment Bulk Update Subscriber

Get Transaction Type

Sample Request:

curl --location --request GET "%7Burl%7D/api/task-type" \
  --header "Authorization: Bearer {access_token}"

Sample Response:

{
 "code": "00",
 "message": "Fetch subscribers",
 "data": {
 "total": 253,
 "per_page": 10,
 "current_page": 1,
 "last_page": 26,
 "next_page_url": "https://autodb.vasdev.co.id/api/task-type?page=2",
 "prev_page_url": null,
 "from": 1,
 "to": 10,
 "data": [
 {
 "id": 31,
 "name": "Uat paymenr",
 "option_simsem": "opr",
 "payment_type": "bill_payment",
 "retry_1": "",
 "retry_2": "",
 "retry_3": ""
 }
 }
}


Feature ID Feature Name
BLA001 Get Transaction Type

Description

This service is used to select transaction type whenever registering new B2C subscriber.

Request Parameters

Key Type Mandatory Description
task-type String Yes Type of the transaction

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message
data String Yes Response Data
data.total Integer Yes Number of submited subscribers
data.current_page Integer Yes Number of successfull submited
subscribers
data.last_page Integer Yes Number of failed submited
subscribers
data.next_page_url URL Yes Url for next page data
data.prev_page_url URL Yes URL for previous page data
data.from String Integer First index of data
data.to String Integer Last index of data
data.data String Array Subscriber data array

Task Type Data

Key Type Mandatory Description
id Integer Yes Transaction type id. Use this value
to set the subscriber payment type
name String Yes Payment Name
option_simsem String Yes Current selected “simsem” option
payment_type String Yes Payment type (transfer or

payment) | | retry_1 | Integer | Yes | 1st retry date | | retry_2 | Integer | Yes | 2nd retry date | | retry_3 | Integer | Yes | 3rd retry date |

Inquiry Billing ID

Sample Request:

{
"id_tipe_transaksi ":2 ,
 "id_pelanggan":123456
}

Sample Response:

{
 "code": "00",
 "message": "Success checkAccount",
 "token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjgxZmEwMmE4"
 "customer_data": {
 "kodeDivre ": "02",
 "kodeDatel":0006",
 "customerID": "003112332312",
 "cusomterName": " Sdri TEST1 TEST3",
 "npwp": 1234565432123456
 }
}

Feature ID Feature Name
BLA002 Inquiry Billing ID

Description

Get information of billing detail. This service is only for transaction whic the type is “payment”

Request Parameters

Key Type Mandatory Description
id_tipe_transaksi Integer Yes Transaction type ID that obtained from GET TRANSACTION TYPE (3.10) service.
id_pelanggan Integer Yes Customer billing id

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message
token String Yes Inquiry token for register validation
expired Timestamp Yes Token expired time
customer_data JSON Yes Contains customer informations. Items may differ depend on transaction type.

Get Subscriber

Sample Request:

curl --location --request GET "%7Burl%7D/api/subscriber" \
  --header "Authorization: Bearer {access_token}"

Sample Response:

{
 "code": "00",
 "message": "Fetch subscribers",
 "data": {
 "total": 5,
 "per_page": 10,
 "current_page": 1,
 "last_page": 1,
 "next_page_url": null,
 "prev_page_url": null,
 "from": 1,
 "to": 5,
 "data": [
 {
 "id": 105,
 "account_debited": "5050404076",
 "to_account": "",
 "nominal": 0,
 "execution_date": "25",
 "no_member": "0020048511",
 "email": "ahmad.rinaldi@docotel.com",
 "hp": "",
 "notifikasi": "email",
 "end_date": "2018-09-26",
 "registration_branch": "null",
 "narasi_1": "nar 1",
 "narasi_2": "nar 2",
 "narasi_3": "nar 3",
 "approver": "UATPA00001",
 "rejected_by": null,
 "status": 1,
 "transaction_type_id": 31,
 "created_at": "2019-01-17 15:28:51",
 "updated_at": "2019-01-17 15:38:35",
 "ip_address": "127.0.0.1",
 "company_name": "Uat paymenr",
 "transaction_name": "Uat paymenr",
 "payment_type": "bill_payment",
 "created_by": "UATPA_ADMIN",
 "id_encrypt": "eyJpdiI6IjBDaXgxU0QyYVwvbUNhVT=="
 },
 {
 "id": 103,
 "account_debited": "5050404076",
 "to_account": "",
 "nominal": 0,
 "execution_date": "25",
 "no_member": "0020048523",
 "email": "ahmad.rinaldi@docotel.com",
 "hp": "",
 "notifikasi": "email",
 "end_date": "2018-09-26",
 "registration_branch": "null",
 "kode_cabang": "nul",
 "cif": null,
 "narasi_1": "nar 1",
 "narasi_2": "nar 2",
 "narasi_3": "nar 3",
 "approver": "UATPA00001",
 "rejected_by": null,
 "task_id": null,
 "status": 1,
 "transaction_type_id": 31,
 "created_at": "2019-01-17 15:08:00",
 "updated_at": "2019-01-17 15:38:35",
 "ip_address": "127.0.0.1",
 "company_name": "Uat paymenr",
 "transaction_name": "Uat paymenr",
 "payment_type": "bill_payment",
 "created_by": "UATPA_ADMIN",
 "id_encrypt": "eyJpdiI6Ikp1TlQ0b1pZNTh=="
 },
 ]
 }
}

Feature ID Feature Name
BLA003 Get Subscriber

Description

Register multiple subscriber using excel file

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message
data String Yes Response Data
data.total Integer Yes Number of submited subscribers
data.current_page Integer Yes Number of successfull submited
subscribers
data.last_page Integer Yes Number of failed submited
subscribers
data.next_page_url URL Yes Url for next page data
data.prev_page_url URL Yes URL for previous page data
data.from String Integer First index of data
data.to String Integer Last index of data
data.data String Array Subscriber data array

Subscriber Data Array

Key Type Mandatory Description
id String Yes Subscriber ID
account_debited String Yes Subcriber debited account
to_account String Yes Destination account
nominal integer Yes Debited amount
execution_date String Yes Autodebet execution date
no_member String Yes Biller member identification
email String Yes Subscriber email
hp String Yes Subscriber phone number
notifikasi String Yes Selected notification type
end_date String Yes Autodebet end date
registration_branch String Yes Subscriber registration branch code
narasi_1, narasi_2, narasi_3 String Yes Subscriber custom naration
approver String Yes Approver username
rejected_by String Yes Rejector username
status String Yes Autodebet activation status
transaction_type_id String Yes Transcation type id
created_at Date String Yes Created timestamp
updated_at Date String Yes Last update timestamp
Ip_address String Yes Registration ip address
company_name String Yes Biller name
transaction_name String Yes Transaction name
payment_type String Yes Payment type
created_by String Yes Uploader username
id_encrypted String Yes Encrypted subscriber id for access, update, or delete subscriber

Get Transaction Report

Sample Request:

curl --location --request GET "%7Burl%7D/api/report/success?start_date=2019-01-06&end_date=2019-10-07&keyword=ini%20search" \
  --header "Authorization: Bearer {access_token}"

Sample Response:

[{
"id": 32,
"transaction_type_id": 2,
"task_id": "20180403103342",
"customer_id": "-",
"company_id": 2,
"account_debited": "112323432",
"phone_notif": "null",
"email_notif": "null",
"subtotal": "378000.000",
"adm_surcharge": "3000.000",
"total_charge": "381000.000",
"rc_id": 0,
"created_at": "2018-04-05 11:19:51",
"updated_at": "2018-04-05 13:29:20",
"action_by": 100,
"ip_address": "192.168.1.1",
"narasi_1": "Bagus Fibrianto",
"narasi_2": "INLKEIN1212",
"narasi_3": "1682471",
"rc_message": "",
"payment_due_id": 0,
"payment_type": "transfer",
"transaction_name": "Makan Bakso",
"account_credited": "644564234334"
},
]

Feature ID Feature Name
BLA004 Get Transaction Report

Description

Get successfull or failed transaction report

Request Parameters

Key Type Mandatory Description
start_date Date (Y-m-d) Yes Report start date filter
end_date Date (Y-m-d) Yes Report end date filter
keyword String Yes Report search keyword

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message
data String Yes Response Data
data.total Integer Yes Number of submited subscribers
data.current_page Integer Yes Number of successfull submited
subscribers
data.last_page Integer Yes Number of failed submited
subscribers
data.next_page_url URL Yes Url for next page data
data.prev_page_url URL Yes URL for previous page data
data.from String Integer First index of data
data.to String Integer Last index of data
data.data String Array Transaction report data array

Transaction Report Data Array

Key Type Mandatory Description
account_credited String Yes Credited bank account number
account_debited String Yes Debited bank account number
action_by Integer Yes Inputer id
adm_surecharge Decimal (3 digits scale) Yes Admin fee
company_id Integer Yes Company id
created_at Datetime (Y-m-d H:i:s) Yes Data creation timestamp
customer_id String Yes Customer billing number
email_notif String Yes Customer email address
id String Integer Report id
ip_address String Yes Inputer ip address
narasi_1 String Yes Optional information 1
narasi_2 String Yes Optional information 2
narasi_3 String Yes Optional information 3
payment String Yes Payment type
payment_due_id String Yes Payment id
payment_type String Yes Payment type
phone_notif String Yes Customer phone number
rc_id Integer Yes Core banking response code
rc_message String Yes Core banking response message
subtotal Decimal (3 digits Scale) Yes Billing amount
task_id String Yes Transaction task id
total_charge Decimal (3 digits Scale) Yes Total billing (subtotal + adm_surecharge)
transaction_name String Yes Transaction name
transaction_type_id Integer Yes Transaction type id

Register New Subscriber

Sample Request:

curl --location --request POST "%7Burl%7D/api/subscriber/store" \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer {access_token}" \
  --data "task_type=13&customer_id=0020048595&account_debited=5050404076&execution_date=25&phonenum_notif=081294216027&email_notif=bagus.fibri@vascomm.co.i&notification_type=email&registration_branch=&end_date=2018-09-26&narasi_1=Ini%20narasi%201&narasi_2=ini%20narasi%202&narasi_3=ini%20narasi%203&nominal=200000"

Sample Response:

{
 "code": "00",
 "message": "Subscriber has been saved",
 "customer_id": 97
}

Feature ID Feature Name
BLA005 Register New Subscriber

Description

Register single new subsriber

Request Parameters

Key Type Mandatory Description
task_id Integer Yes Task type from biller’s registration
customer_id Integer Yes Billing ID for bill payment transactions. Mandatory for bill payment transaction, optional for transfer trasaction
account_debited Integer Yes Debited account number
to_account Integer Yes Credited account number. Only works for account to account payment type
nominal Integer Yes Billing ammount
execution_date Integer Yes Date when debit process will be executed
phonenum_notif Integer Yes Phone number which used to send notification report to debited user
email_notif String Yes Email address which used to send notification report to debited user
notification_type String Yes Selections of which notification type will be use. Either phone, email or both.
registration_branch String Yes Registration branch code
end_date Date (YYYYMMDD) Yes Date when the auto this account’s auto debit process will end
token String Yes Inquiry token
narasi_1 String Yes Free optional data (max 25 character)
narasi_2 String Yes Free optional data (max 25 character)
narasi_3 String Yes Free optional data (max 25 character)

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message

Bulk Register Subscriber

Sample Request:

curl --location --request POST "%7Burl%7D/api/subscriber/bulk" \
  --header "Authorization: Bearer {access_token}" \
  --header "Content-Type: multipart/form-data" \
  --form "file=@" \
  --form "task_type=15"

Sample Response:

{
 "code": "00",
 "message": "Bulk registration of subscribers is completed",
 "data": {
 "total": 3,
 "success": 3,
 "failed": 0,
 "stored_info": [
 {
 "5_121200294001": "Transaction Name => Telkom Group Customer
ID => 121200294001 => Stored!"
 },
 {
 "5_121200294002": "Transaction Name => Telkom Group Customer
ID => 121200294002 => Stored!"
 },
 {
 "5_121200294003": "Transaction Name => Telkom Group Customer
ID => 121200294003 => Stored!"
 }
 ]
 }
}


Feature ID Feature Name
BLA006 Bulk Register Subscriber

Description

Register multiple subscriber using excel file

Request Parameters

Key Type Mandatory Description
file Excel 97-2003 Yes Excel file that contains subscribers data
task_type integer Yes Transaction type id from get transaction list result

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message
data String Yes Response data
data.total Integer Yes Number of submited subscribers
data.success Integer Yes Number of successfull submited subscribers
data.failed Integer Yes Number of failed submited subscribers
data.stored_info Array Yes Information for every submited
subscriber

Bulk Update Subscribe

Sample Request:

curl --location --request POST "%7Burl%7D/api/subscriber/bulk-update" \
  --header "Authorization: Bearer {access_token}" \
  --header "Content-Type: multipart/form-data" \
  --form "file=@" \
  --form "task_type=12"

Sample Response:

{
 "code": "00",
 "message": "Bulk registration of subscribers is completed",
 "data": {
 "total": 3,
 "success": 3,
 "failed": 0,
 "stored_info": [
 {
 "5_121200294001": "Transaction Name => Telkom Group Customer
ID => 121200294001 => Stored!"
 },
 {
 "5_121200294002": "Transaction Name => Telkom Group Customer
ID => 121200294002 => Stored!"
 },
 {
 "5_121200294003": "Transaction Name => Telkom Group Customer
ID => 121200294003 => Stored!"
 }
 ]
 }
}
Feature ID Feature Name
BLA007 Bulk Update Subscriber

Description

Bulk Update subscriber information

Request Parameters

Key Type Mandatory Description
file Excel 97-2003 Yes Excel file that contains subscribers data
task_type integer Yes Transaction type id from get transaction list result

Response Parameters

Key Type Mandatory Description
code integer Yes Response Code
message String Yes Response Message
data String Yes Response data
data.total Integer Yes Number of submited subscribers
data.success Integer Yes Number of successfull submited subscribers
data.failed Integer Yes Number of failed submited subscribers
data.stored_info Array Yes Information for every submited
subscriber

Simulation Process

To ensure your code is working well, you can simulate the hit process on the Sandbox Environment by following these steps:

Pre-Requisite

There are several things to prepare:

  1. API Tools - We recommend the use of POSTMAN, download here
  2. Regards the API Tools, we provide you with ready to use API DOCS, could be downloaded from here
  3. Internet Connections - Please make sure your development platform could connect to the Sandbox Environment. URL shown here
  4. Credentials provided from the Branchless Admin is the key for your apps to access our Sandbox API, please make sure you have all the credentials needed as mentioned here

Biller Simulator List

To use some of our Services on Sandbox API, there are several simulator that is available for now and we are on the process to make all the simulator available for you :)

Here are the list of the simulators and credentials you could use on the sandbox API:

Biller Biller Number
PDAM 08212101131001
Top Up GSM 085612345678
BPJS KS VA 6666602018608749
BPJS TK BPU 3174042905850005
BNI-Tapcash 7546130000012535
Transfer BNI Inquiry 114451183
Transfer BNI Payment Anything
Credit Card BNI Anything

Note

These biller number could only be used on the Sandbox API, if there is any problem accessing one of these biller number, please contact our Customer Service or create a new ticket and let us know.

Finalize your App

There will be several steps to finalize your app for PROD Environment, to ensure your application meet with our standards and BNI Banking Standards, therefore you have to adhere with these test process.

System Integration Test

System Integration Test (SIT) is final test result using components or units that interacts within software. The purpose of SIT is to ensure the request and response adhere to the determined specifications. Our Quality Assurance Team would guide you trough the SIT process.

Preparations

There are several things to prepare before SIT begin:

  1. API Tools as mentioned before
  2. Credentials used to access Community HUB
  3. Billing Numbers provided
  4. Endpoint API Documentation

SIT Process would be guided real-time with our Quality Assurance Team:

  1. Please do contact our Technical Support to make appointments on when the SIT begins
  2. Our Team would be available trough Sunday - Friday from 9AM to 5PM GMT+7
  3. Several methods to contact us real-time, you could use Google Hangout, Google Meetups, or by any means necessary you propose to us (as long as it's not prohibited/forbidden to use by the local laws)
  4. Make sure your internet connections smooth as the wind and we are good to go

Process

The process of SIT as follows:

  1. HUB Partner would send request trough API Testing Tools as mentioned on the document, using the billing numbers provided in the Biller Simulator List until you get the response you will need.
  2. HUB Partner would send the Request and Response to our Quality Assurance to ensure the result adhere to the specifications.
  3. HUB Partner are required to inquire the Application Script Test to our Quality Assurance Team.
  4. Our Quality Assurance would guide you from the very start of the SIT process until it is finished.
  5. Definition of Done would be determined from HUB Partner Test Script and the parameters of "DONE" would be agreed upon both parties.

User Acceptance Test

User Acceptance Test (UAT) is the end of the App testing on the Sandbox API. The purpose of UAT is to ensure the request and response are adhere to your application's level of needs. Our Quality Assurance Team would guide you trough the UAT process.

Preparations

There are several things to prepare before UAT begin:

  1. An App you have alerady develop using the Community HUB API
  2. Billing Numbers provided

UAT Process would be guided real-time with our Quality Assurance Team:

  1. Please do contact our Technical Support to make appointments on when the UAT begins
  2. Our Team would be available trough Sunday - Friday from 9AM to 5PM GMT+7
  3. Several methods to contact us real-time, you could use Google Hangout, Google Meetups, or by any means necessary you propose to us (as long as it's not prohibited/forbidden to use by the local laws)
  4. Make sure your internet connections smooth as the wind and we are good to go
  5. For UAT process, we suggest the parties included on the testing includes your Business Teams to ensure everything is up to your business needs.

Process

The process of UAT as follows:

  1. HUB Partner would try to run all the feature on the app
  2. HUB Partner are required to provide our QA team with screenshots of the app interface during the testing process before and after the data was input, transaction status, and also the receipt interface
  3. Our QA Team will check and document all of your screenshots to ensure everything is up to the specifications
  4. HUB Partner would provide our QA team with the app Script Test from A to Z of the testing process which is related with the Community HUB API
  5. Definition of Done would be determined from HUB Partners Test Script and the parameters of "DONE" would be agreed upon both parties.

Post Implementation Review

Post Implementation Review (PIR) is an evaluation method for all the app features that enters the PROD Environment. The purpose of PIR Test is to ensure every single feature you have already tested on SIT and UAT runs well on the PROD Environment. Our Quality Assurance Team would guide you trough the PIR process.

Preparations

There are several things to prepare before UAT begin:

  1. An App you have alerady develop on PROD / LIVE Environment
  2. Production Credential
  3. Billing Number from the respective Billers you use

PIR Process would be guided real-time with our Quality Assurance Team:

  1. Please do contact our Technical Support to make appointments on when the PIR begins
  2. Our Team would be available trough Sunday - Friday from 9AM to 5PM GMT+7
  3. Several methods to contact us real-time, you could use Google Hangout, Google Meetups, or by any means necessary you propose to us (as long as it's not prohibited/forbidden to use by the local laws)
  4. Make sure your internet connections smooth as the wind and we are good to go
  5. For PIR process, we suggest the parties included on the testing includes your Business Teams to ensure everything is up to your business needs.
  6. Make sure your deposits / accounts are not empty, in real-time, all the transactions done on PIR Testing is happened in real-life environment, do please make sure to tread carefully during the PIR Process

Process

The process of PIR as follows:

  1. HUB Partner would try to run all the feature on the app
  2. HUB Partner are required to provide our QA team with screenshots of the app interface during the testing process before and after the data was input, transaction status, and also the receipt interface
  3. Our QA Team will check and document all of your screenshots to ensure everything is up to the specifications
  4. HUB Partner would provide our QA team with the app Script Test from A to Z of the testing process which is related with the Community HUB API
  5. Definition of Done would be determined from HUB Partners Test Script and the parameters of "DONE" would be agreed upon both parties.