Booking
Confirmed or in-progress reservation as returned by book/detail/list
(proto BookingDetail). Nested under booking in book/detail responses,
or under bookings[] in list. Wire shape is status + reference + billing
- price + remarks + rooms — not hotel/holder/stay fields.
Reservation lifecycle enum from the aggregator contract (proto
BookStatusType). Use these values for UX and polling — not informal
labels such as CONFIRMED / PENDING.
Possible values: [BOOK_STATUS_TYPE_OK, BOOK_STATUS_TYPE_KO, BOOK_STATUS_TYPE_ON_REQUEST, BOOK_STATUS_TYPE_CANCELLED, BOOK_STATUS_TYPE_UNKNOWN, BOOK_STATUS_TYPE_PENDING_COMMIT]
BOOK_STATUS_TYPE_OKreference object
Booking identifiers (proto Reference)
Bundleport booking identifier; store for detail, list, and cancel
Your own reference echoed from the book request; use for idempotency
checks and support (e.g. list by clientReference).
Provider/supplier booking reference
Hotel confirmation at booking level when the provider sets it.
The aggregator forwards this field when present. Some providers still
leave it empty and only populate rooms[].confirmationReference —
prefer room-level when this is blank.
Provider code used for billing (proto field name on aggregator)
exampleprice object
Price information. Three independent prices coexist: provider cost (net), provider retail (gross/suggested), and the org selling price (markupGross). The org margin configured per connection is applied on top of the provider gross, never on net. When no margin is configured, markupGross equals the provider gross.
Provider cost (what the agency pays the supplier).
Currency code
Provider binding flag. When true the provider gross/suggested is the minimum selling price and must be respected (cannot be sold below it).
Provider suggested retail / minimum selling price (preserved from provider, not overwritten by markup).
Provider retail price before any org markup (falls back to net when the provider does not send a suggested price).
Customer selling price = provider gross + org margin. Equals the provider gross when no margin is configured.
Provider net cost plus the org margin amount (mandatory field).
Currency of the markup (usually same as currency)
Indicates if the markup price must be respected (mandatory field).
Org margin amount applied on provider gross (markupGross - gross).
Effective margin percentage applied on provider gross.
Type of margin applied - FIXED or PERCENTAGE
remarks object[]
Booking remarks as type/value pairs (proto TypeValue)
Remark type
Remark value
rooms object[]
Booked rooms in the response shape (proto BookingDetailRoom).
Do not confuse with request BookRoom (occupancy + paxes).
Occupancy reference from the original search
Room code
Room description
Hotel confirmation reference for this room. Often the populated
confirmation even when reference.confirmationReference is empty.
HTL-3650-102-18690172{
"status": "BOOK_STATUS_TYPE_OK",
"reference": {
"bookingID": "string",
"clientReference": "string",
"providerReference": "string",
"confirmationReference": "string"
},
"billingProviderCode": "example",
"price": {
"net": 0,
"currency": "string",
"binding": true,
"suggested": 0,
"gross": 0,
"markupGross": 0,
"markupNet": 0,
"markupCurrency": "string",
"markupBinding": true,
"marginAmount": 0,
"marginPercent": 0,
"marginType": "string"
},
"remarks": [
{
"type": "string",
"value": "string"
}
],
"rooms": [
{
"occupancyRefId": 0,
"code": "string",
"description": "string",
"confirmationReference": "HTL-3650-102-18690172"
}
]
}