1. Overview
The API allows merchants to bind the BNC user account to the merchant system.
2. API Specification
HTTP Method | POST |
Endpoint |
|
SNAP Service Code | 07 |
3. Request
3.1. Request Header
Parameter Name | Type | Length | Required | Description | Sample | |
|---|---|---|---|---|---|---|
| 1 | Authorization | String | 163 | M | Authorization access token. Bearer type. | Bearer eyJxxxx |
| 2 | X-SIGNATURE | String | 2048 | M | Integrity check. Using Asymmetric-Signature mechanism to get the token, encrypted with SHA256withRSA. e.g. stringToSign = <HTTP Method> + ":" + <Service Endpoint> + ":" + toLowercase(hexEncode(SHA256(minify(<Request Body>)))) + ":" + <X-TIMESTAMP> X-SIGNATURE = SHA256withRSA(PrivateKey, stringToSign) | eTCtU8YjKpwTzvOpao1g/ZQPxKzbsbVs6iTAAECB40aWoCVptjok59uHnbQemvyn3I0FHX/kreMgXMjhs/9NXYuaz3yBzk8TJ9fyYd6DbeeqDDBpTNVaC2dNjCtIjO1xi7ZJ+DLrqz7Wqwn+PwmY+0HJrbM9al5CS/WvjqFXN5FahIRxUfW8Dt3SQ0JNN/ySkz8ari/g7ygiIaLWZf3dSpACgEANiTFfi8YbAJRlMdoRPzwRups8QBdRce8yyW+RhpiEfTeV0CfLdTBiQ7r1HVCZ3V5iU2VxkKj4lXjwbEAJJm6XeEoXugUuLsOYOa8cKQ4bZ2Nxp+xFW6zd3Yk8lA== |
| 3 | X-TIMESTAMP | String | 25 | M | Timestamp request. Formatted as | 2022-09-28T13:00:00+07:00 |
| 4 | X-CLIENT-KEY | String | 32 | M | Merchant ID. Provided by Bank. |
|
| 5 | X-EXTERNAL-ID | String | 36 | M | Merchant unique request ID. Must be unique per day. | |
| 6 | CHANNEL-ID | String | 5 | M | Bank Channel ID. | 88881 |
| 7 | Content-Type | String | M | Request body format type. | application/json |
3.2 Request Body
Name | Type | M/O | Length | Description |
|---|---|---|---|---|
partnerReferenceNo | String | M | 22 | Merchant transaction reference number. Should be unique. |
merchantId | String | M | 32 | Merchant ID. Provided by BNC. |
subMerchantId | String | O | 32 | Sub Merchant ID of the Merchant. This property depends on merchant. Provided by BNC. |
platformType | String | M | 6 | Merchant allow to provide type of the platform they use such as APP, WEB, MOBILE. |
redirectUrl | String | M | 2048 | URL redirect to merchant apps |
3.2.1 Sample Request Body
{
"partnerReferenceNo": "2020102900000000000001",
"merchantId": "000580000014",
"platformType": "APP",
"redirectUrl": "https://www.merchant.com"
}
4. Response
4.1 Response Body
Name | Type | M/O | Length | Description |
|---|---|---|---|---|
partnerReferenceNo | String | M | 22 | Merchant transaction reference number. |
responseMessage | String | M | 64 | The message corresponding to the response code. |
responseCode | String | M | 32 | The BI Snap standard of response code. |
additionalInfo | Object | M | Web view information. | |
-> authorizedMerchant | String | M | 5 | Merchant validity information. |
-> webViewUrl | String | M | 200 | Web view path to start binding. |
-> traceId | String | 32 | Mandatory | BNC trace ID. Used for tracing in case problem happens |
4.1.1 Sample Response Body
Success:
{
"additionalInfo": {
"authorizedMerchant": "true",
"webViewUrl": "https://binding.bankneo.co.id?userId=12345678&merchantId=000580000014&redirectUrl=https://www.merchant.com&partnerReferenceNo=2020102900000000000001",
"maximumBinding": "false",
"traceId": "486c0dd1a42f65fb75aaa8dab39e6377"
},
"partnerReferenceNo": "2020102900000000000001",
"responseMessage": "SUCCESS",
"responseCode": "200"
}
Fail:
Error Code | Error Message | Description | |
|---|---|---|---|
| 1 | 4010700 | Invalid Merchant | Merchant not found. |
6. Reference
Field Code | Field Name | Description | |
|---|---|---|---|
| 1 | M | Mandatory | Mandatory |
| 2 | ME | Mandatory Equal | Mandatory Equal – value in the request and the response must be the same. |
| 3 | C | Conditional | Conditional |
| 4 | CE | Conditional Equal | Conditional Equal – value in the request and the response must be the same. |
| 5 | O | Optional | Optional |