Booking Holdings · JSON Structure
Demand Api Order Details Data Output Structure
All details for this order.
Type: object
Properties: 14
AccommodationsAirlinesCar RentalsHospitalityHotelsRestaurantsTravel
OrderDetailsDataOutput is a JSON Structure definition published by Booking Holdings, describing 14 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
id
accommodations
affiliate
booker
cars
created
commission
currency
flights
loyalty_reward
payment
price
status
updated
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/booking-holdings/refs/heads/main/json-structure/demand-api-order-details-data-output-structure.json",
"name": "OrderDetailsDataOutput",
"description": "All details for this order.",
"type": "object",
"properties": {
"id": {
"description": "The id for this order.",
"type": "string"
},
"accommodations": {
"type": "object",
"properties": {
"inventory": {
"type": "object",
"properties": {
"third_party": {
"type": "boolean",
"description": "Boolean value is \"true\" if the product is facilitated by a Booking.com partner company and \"false\" otherwise."
},
"type": {
"description": "Type of inventory - either net or sell rates.",
"type": "string",
"enum": [
"net",
"sell"
]
}
}
},
"reservation": {
"description": "This is the reservation id for the accommodation in this order.",
"type": "int64"
}
}
},
"affiliate": {
"description": "The affiliate id used for this order.",
"type": "int32"
},
"booker": {
"description": "The booker's information.",
"type": "object",
"properties": {
"address": {
"description": "The booker's address for showing the best price for that user and obeying laws regarding the display of taxes and fees.",
"type": "object",
"properties": {
"city": {
"description": "The city for this address.",
"type": [
"string",
"null"
]
},
"country": {
"description": "The country for this address.",
"type": [
"string",
"null"
]
}
}
},
"email": {
"description": "The booker's email address.",
"type": [
"string",
"null"
]
},
"language": {
"description": "A [IETF language tag code](https://en.wikipedia.org/wiki/IETF_language_tag) that uniquely identifies a supported human language or dialect. **Note:** Demand API only accepts lowercase for the language codes. Examples: \"nl\" for Dutch/Nederlands or \"en-us\" for English (US). To retrieve the full list of supported languages, call the `/common/languages` endpoint in the same Demand API version you are using.",
"type": "string",
"pattern": "^[a-z]{2}(-[a-z]{2})?$"
},
"name": {
"description": "The name of the booker.",
"type": "object",
"properties": {
"first_name": {
"type": [
"string",
"null"
]
},
"last_name": {
"type": [
"string",
"null"
]
}
}
},
"platform": {
"description": "The booker platform for showing the platform based deals and prices.",
"type": "string",
"enum": [
"app",
"desktop",
"mobile_browser",
"tablet",
"unknown"
]
},
"telephone": {
"description": "The booker's telephone number.",
"type": "string",
"nullable": true
},
"travel_purpose": {
"description": "The travel purpose of the booker.",
"type": "string",
"enum": [
"business",
"leisure",
"unknown"
]
}
}
},
"cars": {
"type": "object",
"properties": {
"reservation": {
"description": "This is the reservation id for the car in this order.",
"type": "int64"
}
}
},
"created": {
"description": "Order creation time.",
"type": "datetime"
},
"commission": {
"description": "Commission details for the partner for a given order.",
"type": "object",
"properties": {
"actual_amount": {
"description": "For accommodation: This is the final commission for this order (`null` if value is not yet available). For other travel services: It represents the estimated commission before billing and the final commission after billing.",
"nullable": true,
"type": "double"
},
"estimated_amount": {
"description": "Estimated commission amount for this order. For accommodations, it will be `null` if the final commission amount is available.",
"nullable": true,
"type": "double"
}
}
},
"currency": {
"description": "Input currency used in \"commission\" and \"price\" output fields.",
"type": "string",
"pattern": "^[A-Z]{3}$"
},
"flights": {
"type": "object",
"properties": {
"reservation": {
"description": "This is the reservation id for flight in this order.",
"type": "int64"
}
}
},
"loyalty_reward": {
"nullable": true,
"description": "Details of the loyalty rewards associated with this order.",
"type": "array",
"items": {
"type": "object",
"properties": {
"amount": {
"description": "Reward amount, in the units of the specified reward type (such as cash, mile, point, etc.).",
"type": "double"
},
"currency": {
"description": "Currency used for reward calculation.",
"nullable": true,
"type": "string",
"pattern": "^[A-Z]{3}$"
},
"eligible": {
"description": "Whether the order is eligible for the reward.",
"type": "boolean"
},
"fulfillment_at": {
"description": "Date and time at which the reward should be fulfilled.",
"type": "date"
},
"fulfillment_by": {
"description": "Mode of fulfillment of the reward.",
"type": "string",
"enum": [
"partner",
"booking.com"
]
},
"loyalty_data": {
"description": "Loyalty data associated with this loyalty reward used to fulfill reward.",
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"description": "Name of the loyalty data.",
"type": "string"
},
"value": {
"description": "Value of the loyalty data.",
"type": "string"
}
}
},
"nullable": true
},
"type": {
"description": "Type of reward.",
"type": "string",
"enum": [
"cash",
"mile",
"point",
"voucher",
"voucher_money",
"voucher_subscription",
"voucher_percentage"
]
}
}
}
},
"payment": {
"description": "The payment details of this order.",
"type": "object",
"properties": {
"accommodations": {
"description": "The accommodation specific payment details of this order.",
"type": "object",
"properties": {
"authorisation_form": {
"description": "Link to the authorisation form of the order.",
"type": "uri",
"nullable": true
},
"receipt_url": {
"description": "Link to the payment receipt of the order. `This will only be added if the payment is already charged.`",
"type": "uri",
"nullable": true
},
"reservation": {
"description": "Reservation ID for this accommodation order.",
"type": "int64"
}
},
"nullable": true
},
"method": {
"description": "The payment method of this order.",
"type": "string",
"enum": [
"airplus",
"card",
"wallet"
]
},
"paid": {
"description": "The paid transactions for this order.",
"nullable": true,
"type": "array",
"items": {
"type": "object",
"properties": {
"amount": {
"description": "Amount of the transaction.",
"type": "double"
},
"at": {
"description": "Time of the transaction.",
"type": "datetime"
},
"transaction_currency": {
"description": "Currency in which the transaction took place.",
"type": "string"
}
}
}
},
"pending": {
"description": "The pending transactions for this order.",
"nullable": true,
"type": "array",
"items": {
"type": "object",
"properties": {
"amount": {
"description": "Amount of the transaction.",
"type": "double"
},
"at": {
"description": "Time of the transaction.",
"type": "datetime"
},
"transaction_currency": {
"description": "Currency in which the transaction took place.",
"type": "string"
}
}
}
},
"timing": {
"description": "The payment timing of this order.",
"type": "string",
"enum": [
"pay_at_the_property",
"pay_online_later",
"pay_online_now"
]
}
}
},
"price": {
"description": "The price components of this order.",
"type": "object",
"properties": {
"commissionable": {
"description": "The commissionable price. Order price on which commission amount is calculated.",
"nullable": true,
"type": "double"
},
"total": {
"description": "The total price. Includes all extra charges.",
"type": "double"
}
},
"nullable": true
},
"status": {
"description": "Status of this order.",
"type": "string",
"enum": [
"booked",
"cancelled",
"cancelled_by_accommodation",
"cancelled_by_guest",
"no_show",
"stayed"
]
},
"updated": {
"description": "Time the order was last updated.",
"type": "datetime"
}
}
}