Skip to main content

Checkout Confirm Endpoint

Confirms the checkout and creates the hotel booking.

  • Endpoint: /api/v1/unified-booking/checkout/confirm
  • Method: POST

Headers

HeaderValueRequiredDescription
Partner-Access-TokenBase64 StringYesYour encrypted AES-256 time-sensitive token.
X-CurrencyCurrency CodeYesRequested currency code, e.g. THB or MMK.
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes

Payload Parameters

ParameterTypeRequiredDescription
buyerObjectYesBuyer/contact information.
productsArrayYesProducts to confirm. Use the same product structure as checkout.
products.guestsArrayYesGuest information grouped by room. Each item is an array of guests for one room.
payment_methodStringYesPayment method. Example: pay_later.
payment_optionStringYesPayment option. Example: pay_later.

Sample Payload

{
"buyer": {
"first_name": "Alex",
"last_name": "Doe",
"nationality": "MM",
"phone_code": "66",
"phone_number": "800000001",
"email": "buyer@example.com"
},
"products": [
{
"guests": [
[
{
"first_name": "John",
"last_name": "Doe",
"email": "guest@example.com",
"mobile_phone_code": "66",
"mobile_phone_number": "800000000",
"type": "ADU",
"nationality_code": "TH"
}
]
],
"order_note": "test",
"hotel_code": "757293",
"hotel_name": "Best Western Sukhumvit 20",
"rate_code": "v2067864075593089035_7200_2|TH",
"check_in": "2026-06-27",
"check_out": "2026-06-28",
"rooms": 1,
"adults": 2,
"children": 0,
"children_ages": [],
"country_code": "TH",
"product_type": "pd11"
}
],
"payment_method": "pay_later",
"payment_option": "pay_later"
}

Guest Grouping

The guests value must be grouped by room. For one room, send one nested guest array:

Guest type values:

ValueDescription
ADUAdult guest.
CHDChild guest.
"guests": [
[
{
"first_name": "John",
"last_name": "Doe",
"email": "guest@example.com",
"mobile_phone_code": "66",
"mobile_phone_number": "800000000",
"type": "ADU",
"nationality_code": "TH"
}
]
]

For two rooms, send two nested guest arrays:

"guests": [
[
{
"first_name": "John",
"last_name": "Doe",
"email": "guest@example.com",
"mobile_phone_code": "66",
"mobile_phone_number": "800000000",
"type": "ADU",
"nationality_code": "TH"
}
],
[
{
"first_name": "Jane",
"last_name": "Smith",
"email": "guest2@example.com",
"mobile_phone_code": "66",
"mobile_phone_number": "800000000",
"type": "ADU",
"nationality_code": "TH"
}
]
]

Sample Response

{
"result": 1,
"message": "Booking processed successfully",
"data": {
"invoice_no": "7992370634757",
"booking_number": "650E23E81BFC54D8",
"grand_total": 1543.75,
"currency_code": "THB"
}
}

Next Step

After booking success, call the Payment Request API to complete payment.