Skip to main content

Webhook Card Authentication Result

(Built by Merchant)

Process

Baokim calls Merchant's webhook API to return card authentication result

API Information

Method: POST

URL: Merchant provides

Header:

  • Content-Type: application/json,
  • Signature: $signature

Baokim calls Merchant after receiving authentication result from bank.

Request

(Parameters Baokim sends to Merchant)

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
5operationString(20)AUTHENTICATION: card authentication / REFUND: refund
6order_codeString(50)Baokim order code
7total_amountNumberTotal order amount
8authen_statusNumberAuthentication status: 0 = Pending / 1 = Authenticated / 2 = Failed / 3 = Bypass (3ds off)
9statusNumberOrder status on Baokim
11save_tokenNumberShould token be saved? 0 = No (default) / 1 = Yes
10typeNumberPayment type: 1 = PaymentByCard / 2 = UCOF-CIT
12off_3dsNumber3DS disabling requested? 0 = No / 1 = Yes
13card_infoObjectCard information (only for UCOF-CIT)
14extendObjectExtended data (billing)
15created_atDatetimeOrder creation time
16updated_atDatetimeOrder update time

Extend Information

No.Field NameData TypeRequiredDescription
1billingObjectPayer information

Extend.billing Information

No.Field NameData TypeRequiredDescription
1firstnameString(255)Payer first name
2lastnameString(255)Payer last name
3addressString(500)Payer address
4cityString(50)City (Example: HANOI)
5stateString(255)State/Province
6countryString(2)Country ISO2 (Example: VN)
7emailString(255)Payer email
8phoneString(10)Phone number
9postal_codeString(6)Postal code

Card_info Information (for UCOF-CIT)

No.Field NameData TypeRequiredDescription
1tokenStringCard information encrypted per Baokim standard, required if card_token null
2card_numberString(20)Card number
3card_brandString(20)Brand: Visa / Master / JCB
4card_issue_bankNumber(1)Issuing location: 1 = Domestic, 2 = International
5card_on_usNumber(1)Same bank? 1 = Onus (same bank), 2 = Offus

Example Request

{
"request_id": "MERCHANT050015588AXE012",
"request_time": "2020-08-11 14:41:00",
"master_merchant_code": "MASTER_MERCHANT",
"sub_merchant_code": "SUB_MERCHANT",
"operation": "AUTHENTICATION",
"order_code": "VLAD_1753867524",
"total_amount": 10000000,
"authen_status": 1,
"status": 5,
"save_token": 0,
"type": 1,
"off_3ds": 0,
"card_info": {
"token": "BC151dsTTmdrSpRapya3rKYJmtu2Ue6e",
"card_number": "979202xxxxx28392",
"card_brand": "Visa",
"card_issue_bank": 1,
"card_on_us": 1
},
"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"
}
},
"created_at": "2020-08-11 14:41:00",
"updated_at": "2020-08-11 14:41:00"
}

Response

Merchant must return to Baokim

Main Parameters Table

No.Field NameData TypeRequiredDescription
1codeString(3)Confirmation code (typically 0)
2messageString(20)Message
3dataObjectResponse data if any

Example Response

{
"code": 0,
"message": "Success",
"data": null
}

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