Chuyển tới nội dung chính

Tra cứu giao dịch

Quy trình​

Mô tả:

  • Merchant gọi API để lấy thông tin đầy đủ và trạng thái hiện tại của đơn hàng.
  • Response trả về cấu trúc steps gồm toàn bộ lịch sử: authentication, authorize, capture, refund, reversal, void.

Thông tin API​

Method: GET

Request​

(Tham số đối tác gửi lên)

Bảng tham số chính​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1request_idString(100)✅ID duy nhất của request từ Merchant sang Baokim
2request_timeString(20)✅Thời gian gửi request. Format: YYYY-MM-DD H:i:s
3merchant_codeString(50)✅Mã định danh duy nhất của Merchant
4order_codeString(50)✅Mã đơn hàng Baokim trả về tại bước Authentication

Ví dụ Request​

{
"request_id": "MERCHANT050015588AXE014",
"request_time": "2020-08-11 14:41:00",
"merchant_code": "MERCHANT",
"order_code": "VLAD_1753867524"
}

Response​

(Tham số Baokim trả về)

Bảng tham số chính​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1codeNumber(3)✅Mã lỗi của Baokim
2messageString(200)✅Thông báo mã lỗi
3dataObject✅Dữ liệu Baokim trả về

Thông tin data​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1order_codeNumber✅Mã đơn hàng Baokim
2amountNumber✅Số tiền của đơn hàng
3statusNumber✅Trạng thái đơn hàng
4created_atDatetime✅Thời gian tạo đơn hàng
5updated_atDatetime✅Thời gian cập nhật đơn hàng
6stepsObject✅Thông tin từng bước xử lý

Thông tin steps​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1authenticationObject✅Thông tin bước Authentication
2authorizeArray✅Mảng object các lần Authorize
3captureArray✅Mảng object các lần Capture
4refundArray❌Mảng object các lần Refund
5reversalArray❌Mảng object các lần Reversal
6voidArray❌Mảng object các lần Void

Thông tin steps.authentication​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1authen_statusNumber✅Trạng thái xác thực thẻ: 0-Chờ xác thực / 1-Đã xác thực / 2-Thất bại / 3-Bypass (3DS off)
2authen_amountNumber✅Số tiền authentication
3request_timeString(20)✅Thời gian gửi request. Format: YYYY-MM-DD H:i:s
4url_successString(255)✅URL redirect khi xác thực thành công
5url_failString(255)✅URL redirect khi xác thực thất bại
6off_3dsNumber❌0-Không tắt 3DS / 1-Tắt 3DS
73ds_urlString(255)✅Link xác thực 3DS
8extendObject❌Dữ liệu mở rộng

Thông tin từng object trong steps.authorize​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1authorize_statusNumber✅Trạng thái authorization: 0-Pending / 1-Authorized / 2-Fail
2authorize_amountNumber✅Số tiền authorize
3request_timeString(20)✅Thời gian gửi request
4authorize_typeNumber✅Loại authorize: 1-Authorize / 2-Incremental Authorize
5auth_codeString(50)✅Mã authorize do Ngân hàng trả về
6descriptionString(255)❌Mô tả giao dịch Authorize
7extendObject❌Dữ liệu mở rộng

Thông tin từng object trong steps.capture​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1capture_statusNumber✅Trạng thái capture: 0-Pending / 1-Captured / 2-Partial Captured / 3-Fail
2bank_codeString(50)✅Mã ngân hàng
3capture_typeNumber✅Loại capture: 1-Capture / 2-Partial Capture
4capture_amountNumber✅Số tiền capture
5request_timeString(20)✅Thời gian gửi request
6descriptionString(255)❌Mô tả giao dịch Capture
7extendObject❌Dữ liệu mở rộng

Thông tin từng object trong steps.refund​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1refund_statusNumber✅Trạng thái refund: 0-Refund Pending / 1-Refunded / 2-Fail
2refund_amountNumber✅Số tiền refund
3request_timeString(20)✅Thời gian gửi request. Format: YYYY-MM-DD H:i:s
4descriptionString(255)✅Mô tả
5extendObject❌Dữ liệu mở rộng

Thông tin từng object trong steps.reversal​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1reversal_statusNumber✅Trạng thái capture: 0-Reversal Pending / 1-Reversed / 2-Fail
2descriptionString(255)✅Mô tả
3request_timeString(20)✅Thời gian gửi request. Format: YYYY-MM-DD H:i:s
4extendObject❌Dữ liệu mở rộng

Thông tin từng object trong steps.void​

STTTên trườngKiểu dữ liệuBắt buộcMô tả
1void_statusNumber✅Trạng thái void: 0-Void Pending / 1-Voided / 2-Fail
2descriptionString(255)✅Mô tả
3request_timeString(20)✅Thời gian gửi request
4extendObject❌Dữ liệu mở rộng

Ví dụ Response​

{
"code": 0,
"message": "Success",
"data": {
"order_code": "VLAD_1753867524",
"amount": 1000000,
"status": 1,
"created_at": "2020-08-11 14:41:00",
"updated_at": "2020-08-11 15:41:00",
"steps": {
"authentication": {
"authen_status": 1,
"authen_amount": 1000000,
"request_time": "2020-08-11 14:41:00",
"url_success": "https://example.com/success",
"url_fail": "https://example.com/fail",
"off_3ds": 1,
"3ds_url": "https://payment-page.baokim.vn/payment/?oid=38260&checksum=d863a2d66f76e3fc7bcfe302bfc19ff3e5253f5c",
"extend": {}
},
"authorize": [
{
"authorize_status": 1,
"authorize_amount": 1000000,
"request_time": "2020-08-11 14:41:00",
"authorize_type": 1,
"auth_code": "AUTH456789",
"description": "",
"extend": {}
}
],
"capture": [
{
"capture_status": 1,
"capture_amount": 1000000,
"request_time": "2020-08-11 14:41:00",
"bank_code": "970436",
"capture_type": 1,
"description": "",
"extend": {}
}
],
"refund": [],
"reversal": [],
"void": []
}
}
}

Error Code​

Mã lỗiMô tả
100Thành công
11Thất bại
101Lỗi hệ thống Baokim
104Lỗi xác thực OAuth
105Lỗi xác thực chữ ký
301Không tìm thấy đơn hàng theo order_code
302Thẻ có vấn đề (không tồn tại, hết hạn)
303Thẻ bị từ chối
304Thẻ không đủ số dư
305User huỷ giao dịch
306Sai mã OTP
308Giao dịch chưa thực hiện Authentication
309Giao dịch chưa thực hiện Authorize
310Giao dịch đã Reversal, không thể Capture
311Giao dịch đã Capture, không thể Reversal
313Lỗi xử lý phía ngân hàng
422Lỗi validate: RequestId không hợp lệ
422Lỗi validate: RequestTime không hợp lệ
422Lỗi validate: PartnerCode không hợp lệ
422Card_data không hợp lệ
422Amount không hợp lệ