1. Overview

This API is use to Refund the transaction.

2. API Specification

HTTP Method

POST

Endpoint

/open/bi/private/v1.0/debit/refund

SNAP Service Code

58

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 yyyy-MM-ddTHH:mm:ssS

2022-09-28T13:00:00+07:00

4

X-CLIENT-KEY

String

32

M

Merchant ID. Provided by Bank.

000580000134

5

X-EXTERNAL-ID

String

36

M

Merchant unique request ID. Must be unique per day.

6

CHANNEL-ID

String

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

originalPartnerReferenceNo

String

M

22

Merchant payment reference number. Should be use the partnerReferenceNo value from previous Payment execution.

originalReferenceNo

String

M

22

BNC transaction reference. The value retrieved from Payment response, referenceNo field.

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.

partnerRefundNo

String

M

22

Merchant refund reference number.

refundAmount

Object

M

For hold amount of refund.

-> value

String

M

14

Amount value to refund.

-> currency

String

M

3

Currency of previous payment.

reason

String

M

255

Merchant or user reason to refund.

additionalInfo

Object

M

-> token

String

M

32

Merchant user bankCardToken when binding.

3.2.1 Sample Request Body

{
    "merchantId": "000580000134",
    "originalPartnerReferenceNo": "230332344123777023",
    "originalReferenceNo": "300260184546832551937",
    "partnerRefundNo": "23033234412388800512",
    "refundAmount": {
        "value": "101200",
        "currency": "IDR"
    },
    "reason": "Customer complain",
    "additionalInfo": {
        "token": "7c9176b97f5641fbb9f88d44ab3a63ba"
    }
}

4. Response

4.1 Response Body

Name

Type

M/O

Length

Description

originalReferenceNo

String

M

22

BNC transaction reference.

originalPartnerReferenceNo

String

M

22

Merchant payment reference number.

partnerRefundNo

String

M

22

Merchant refund reference number.

refundNo

String

M

22

BNC system refund reference number.

refundTime

String

M

25

Refund request time.

refundAmount

Object

M

The transaction monetary information.

-> currency

String

M

3

The transaction currency.

-> value

Double

M

14

The transaction amount.

additionalInfo

Object

M

-> token

String

M

32

Merchant user bankCardToken when binding.

-> traceId

String

M

32

BNC trace ID. Used for tracing in case problem happens

responseMessage

String

M

200

The message corresponding to the response code.

responseCode

String

M

7

The BI Snap standard of response code.

4.1.1 Sample Response Body

Success:

{
    "originalReferenceNo": "3001578338119420256257",
    "refundNo": "3001578339470892113920",
    "refundTime": "2022-10-07T18:00:28+07:00",
    "additionalInfo": {
        "token": "7777882",
        "traceId": "2537b798210996d8a9008acf0302086c"
    },
    "originalPartnerReferenceNo": "U22100600016",
    "responseMessage": "Successful",
    "partnerRefundNo": "UF22100700002",
    "refundAmount": {
        "currency": "IDR",
        "value": "600000.00"
    },
    "responseCode": "2005800"
}

Fail:

 

Error Code

Error Message

Description

1

4035815

Transaction not permitted

The refund request already proceed or transaction already refunded.

2

4045801

Transaction not found

The transaction is not found.

3

4035802

Exceeds Transaction Amount Limit

The requested amount is exceed from transaction amount.

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

Bank Neo Commerce terdaftar dan diawasi oleh OJK
Bank Neo Commerce merupakan peserta penjamin LPS
All Rights Reserved. PT Bank Neo Commerce 2025