Use the /orders/details endpoint to retrieve detailed information for existing orders across all travel services — including accommodations, cars, flights, attractions and taxis. It provides a single consolidated data source for financial reporting and reconciliation, without needing to query multiple endpoints.
The orders/details endpoint enables:
- Financial reconciliation and reporting.
- Attribution tracking and analysis.
- Operational monitoring and system synchronisation from a single data source, without needing to combine responses from multiple service-specific endpoints.
It returns consolidated order data across travel services, including:
- Pricing and totals.
- Payment details and transaction status.
- Commissions and attribution data.
- Loyalty rewards (where applicable)
- Service-specific booking details.
Use this endpoint when you need consistent, cross-service reporting data in a single response.
You can use this endpoint to:
| ✓ | Generate consolidated reports across all booked travel services in a single request. |
| ✓ | Run financial reconciliation using pricing, payment, and commission data. |
| ✓ | Synchronise order changes directly with your internal systems. |
| ✓ | Validate booking and payment details per order or reservation. |
| ✓ | Track order attribution to analyse specific touchpoints and measure conversion performance. |
You can retrieve orders by providing order IDs, reservation IDs, or supported date range filters, and receive a unified response structure across services.
Call the orders/details endpoint using one of the supported filter types.
You must provide only one filter type per request. Combining filters (for example, created + orders) is not supported.
Filter type | Description |
|---|---|
| Identifiers - If you wish to check a specific list of orders. |
|
| Date range - Use it for reporting or reconciliation. |
|
| Pagination |
|
- Orders can only be returned if created or updated within 1 year of the request date.
- Maximum allowed range for any date filter is 7 days.
- Updates may take up to 2 hours to appear in the response.
- See the Data conventions guide for correct date/time formats.
- All requests require:
currency— three-letter ISO 4217 code (e.g. EUR, USD)
- Exception -
pagerequests do not requirecurrency.
You can also include:
extras— Request additional information (Currently supportspayment)services— Limit results to selected travel services.maximum_results— Limit the number of results returned.sort.byandsort.direction— Sort results by creation or update date and specify the direction (ascending/descending).
The services field is exclusive — include all travel services you want returned. Example: services: ["cars", "accommodations"]
Scenario: Retrieve details for specific reservations to verify payment and commission.
{
"currency": "EUR",
"reservations": [
"2321873123",
"4666773123"
],
"sort": {
"by": "updated",
"direction": "descending"
},
"extras": [
"payment"
]
}Scenario: Get all new orders for cars and accommodations created between 1 and 7 December 2025 to sync with an internal Customer Relationship Management tool (CRM).
{
"created": {
"from": "2025-12-01T02:00:00+00:00",
"to": "2025-12-07T02:00:00+00:00"
},
"currency": "EUR",
"maximum_results": 20,
"sort": {
"by": "updated",
"direction": "descending"
},
"services": ["cars", "accommodations"],
"extras": [
"payment"
]
}To build incremental sync logic for regularly updating systems:
- Use
created.fromandcreated.toretrieve newly created orders. - Use the
updatedfilter with small rolling windows (e.g. every 30–60 minutes) to keep your system in sync with Booking.com changes.
See the Order details - use cases for more examples.
The API returns matching orders in a standardised response format. Each order object includes:
Field | Description | |
|---|---|---|
id | Order identifier | |
affiliate | Affiliate ID | |
booker |
| address, email, name and telephone, language, platform and travel_purpose. |
created/ updated | Date when the order was created and last updated. | |
commission | Commission details (actual and estimated). | |
currencies |
| product - Currency in which the product is priced. |
label (v3.2) | Custom partner string for tracking and attribution. | |
loyalty_reward | Displays loyalty rewards details (if applicable), such as amount, eligibility, and fulfilment date. | |
payment | Payment details (only when extras=["payment"]). | |
price | Total and commissionable amounts. See Pricing guide | |
status | Aggregated order status (booked, cancelled, no-show, etc) | |
start / end | Aggregated service dates. | |
| Travel service blocks | Service-specific booking data see below. | |
metadata.next_page | Token used to retrieve the next page via the page filter. |
The payment object is returned only when requested via extras=["payment"].
It includes:
method→ airplus, card, wallet.timing→pay_at_the_property,pay_online_later,pay_online_nowfor accommodation.paid→ completed transactions.pending→ upcoming or scheduled transactions.
Accommodation payments may also include:
authorisation_formreceipt_url
(See the [Payments section](/demand/docs/payments/overview for details)
Each order may include multiple services if booked together. Each service block (accommodations, cars, flights, attractions, taxis) is returned as:
- An object if present.
nullif the service has not been booked as part of the order.
| Travel service | v3.1 | v3.2 |
|---|---|---|
accommodations | ✓ | ✓ |
cars | ✓ | ✓ |
flights | ✓ | ✓ |
attractions | ✗ | ✓ |
taxis | ✗ | ✓ |
A reservation ID identifies each travel service that is part of the order.
- Each order may have different reservation IDs if multiple services are booked (for example, accommodation and car rental).
- This field is required for cancellations or customer service enquiries.
v3.2 Parameter | Description |
|---|---|
accommodations | Accommodation-specific details:
|
cars | Car rental-specific details:
|
attractions | Attraction-specific details:
|
flights | Flight-specific details:
|
| Taxi orders may include multiple legs:
⚠️ For accurate tracking, always inspect individual taxi legs. |
{
"request_id": "req_123",
"data": [
{
"id": "880045112233",
"affiliate": 111111,
"status": "booked",
"start": "2026-03-10T08:00:00Z",
"end": "2026-03-12T10:00:00Z",
"currencies": {
"booker": "EUR",
"product": "EUR"
},
"price": {
"total_price": {
"booker_currency": 420,
"product_currency": 420
}
},
"accommodations": {
"reservation": "ABC123"
}
}
],
"metadata": {
"next_page": null,
"total_results": 1
}
}{
"order_id": "509430129718801",
"attractions": {
"reservation": 567890123,
"name": "Eiffel Tower Guided Tour",
"location": {"city": "Paris", "country": "fr"}
},
"affiliate": 111111,
"booker": {
"address": {"city": "Amsterdam", "country": "nl"},
"email": "janedoe@booking.com",
"name": {"first_name": "Jane", "last_name": "Doe"},
"platform": "desktop",
"telephone": "+100000001",
"language": "en-gb",
"travel_purpose": "leisure"
},
"commission": {"actual_commission_amount": {"booker_currency": 5.0, "product_currency": 6.0}},
"currencies": {"booker": "EUR", "product": "EUR"},
"price": {"commissionable_price": {"booker_currency": 50, "product_currency": 60}, "total_price": {"booker_currency": 55, "product_currency": 66}},
"status": "booked",
"start": "2026-07-10T09:00:00+00:00",
"end": "2026-07-10T12:00:00+00:00",
"created": "2025-11-28T02:00:00+00:00",
"updated": "2025-11-28T02:00:00+00:00"
}Scenario: Retrieve taxi order details including multiple legs.
{
"request_id": "03fr9fz702lmnop12w34x5y6z",
"data": [
{
"id": "709430129718801",
"affiliate": 333333,
"taxis": [
{
"reservation": "TX987654321",
"pickup_location": { "city": "Paris", "country": "fr" },
"dropoff_location": { "city": "Lyon", "country": "fr" },
"start": "2026-07-10T09:00:00+00:00",
"end": "2026-07-10T14:00:00+00:00"
},
{
"reservation": "TX987654322",
"pickup_location": { "city": "Lyon", "country": "fr" },
"dropoff_location": { "city": "Marseille", "country": "fr" },
"start": "2026-07-12T10:00:00+00:00",
"end": "2026-07-12T15:00:00+00:00"
}
],
"booker": {
"name": { "first_name": "Bob", "last_name": "Brown" },
"email": "bob.brown@example.com",
"telephone": "+33123456789",
"language": "fr",
"platform": "mobile",
"travel_purpose": "leisure",
"address": { "city": "Paris", "country": "fr" }
},
"commission": {...},
"currencies": { "booker": "EUR", "product": "EUR" },
"price": {
"commissionable_price": { "booker_currency": 375, "product_currency": 400 },
"total_price": { "booker_currency": 400, "product_currency": 425 }
},
"start": "2026-07-10T09:00:00+00:00",
"end": "2026-07-12T15:00:00+00:00",
"status": "booked",
"created": "2026-02-01T08:00:00+00:00",
"updated": "2026-02-02T10:00:00+00:00"
}
],
"metadata": {...}
}See all travel services examples in Orders details - Use cases guide.
While the /orders/details endpoint follows general API error conventions, there are several endpoint-specific conditions to be aware of:
Scenario | Cause | Suggested resolution |
|---|---|---|
| Empty 200 OK response | No orders match the request filters. | Check that the date range, service types, and other filters correspond to existing data. |
| 400 – Invalid date filters | Illogical or malformed dates (e.g., start_date > end_date) | Ensure dates are in ISO 8601 format and logically ordered. |
| 400 – Incompatible service types | Mixed or unsupported service types in a single request. | Limit to supported service type combinations or query them separately. |
| 403 – Restricted PII data | Expecting guest data without proper authorisation. | Confirm PII access has been granted and the proper scopes are used. |
| 404 – Order not found | Order ID doesn’t exist or isn’t accessible to the account. | Make sure the order belongs to your account. |
| Performance degradation | Large unpaged queries with wide date ranges. | Use pagination and segment queries into smaller date intervals. |
Use each orders/details/*service endpoint for granulard details on a specific travel service so you can perform post-booking tasks such as:
- Managing cancellations or modifications.
- Reporting commissions to affiliates.
- Allocating loyalty points or rewards.
orders/details/accommodation
Learn how to use this endpoint to retrieve all the details of an accommodation reservation for post-booking flows.
orders/details/cars
Follow this guide to retrieve all the details of a car rental reservation for post-booking tasks.
orders/details/flights
Check how to use this endpoint to retrieve all the details of a flight reservation for post-booking flows.
- See the Orders details use cases for advanced scenarios.
- Learn how to track attribution with the Labels and attribution guide.
- See the Pagination guide for best practices handling large results sets.