Skip to main content

Reversal Transaction

Process

Merchant calls the Reversal API to cancel an Authorized transaction that has not been captured yet, in order to release the held amount for the customer.

API Information

Method: POST

URL:

Request

Main Parameters Table

No.Field NameData TypeRequiredDescription
1request_idString(100)Unique request ID
2request_timeString(20)Request send time. Format: YYYY-MM-DD H:i:s
3master_merchant_codeString(50)Unique Master Merchant identifier
4sub_merchant_codeString(50)Unique Sub Merchant identifier
5order_codeString(50)Baokim order code from Authentication step
6reasonString(255)Cancellation reason
7extendObjectExtended data

Example Request

{
"request_id": "MERCHANT050015588AXE014",
"request_time":" 2020-08-11 14:41:00 ",
"master_merchant_code":"MASTER_MERCHANT",
"sub_merchant_code":"SUB_MERCHANT",

"order_code": "VLAD_1753867524",
"reason":"yêu cầu hủy đơn trả góp",
"extend": {
"billing": {
"firstname": "A",
"lastname": "NGUYEN VAN",
"address": "313 Truong Chinh, Dong Da",
"city": "HANOI",
"state": null,
"country": "VN",
"email": "[email protected]",
"phone": "0394899999",
"postal_code": "100000",
}
}
}

Response

Main Parameters Table

No.Field NameData TypeRequiredDescription
1codeNumber(3)Baokim error code
2messageString(200)Baokim error message
3dataObjectData returned by Baokim

Data Information

No.Field NameData TypeRequiredDescription
1order_codeStringBaokim order code
2reversal_statusNumberReversal status: 0 = Pending, 1 = Reversed, 2 = Fail
3statusNumberOverall order status
4extendObjectExtended data

Example Response

{
"code": 0,
"message": "Success",
"data": {
"order_code": "VLAD_1753867524",
"reversal_status": 1,
"status": 1,
"extend": {}
}
}

Error Code Table

Error CodeDescription
100Success
11Failed
101Baokim system error
104OAuth authentication error
105Signature authentication error
422Validation error: RequestId invalid
422Validation error: RequestTime invalid
422Validation error: PartnerCode invalid
422Card_data invalid
422Amount invalid
301Order not found by order_code
302Card issue (does not exist, expired)
303Card declined
304Insufficient card balance
305User cancelled transaction
306Incorrect OTP
308Transaction has not completed Authentication
309Transaction has not completed Authorization
310Transaction already reversed — cannot capture
311Transaction already captured — cannot reverse
313Bank-side processing error