Booking Holdings Orders API

Enables management of booking orders within the Demand API. Use these endpoints to preview and create new orders, check order details, cancel or modify existing orders. This collection is required to integrate booking and order management functionality.

OpenAPI Specification

booking-holdings-orders-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Booking.com Demand Accommodations Orders API
  version: '3.1'
  summary: "The Booking.com Demand API enables Affiliate Partners to access Booking.com's travel inventory, including accommodations, car rentals, and flights. \n\nUse Demand API to search, retrieve details, check availability, manage bookings and run reports using orders details.\n\n- RESTful API with JSON responses.\n- Make HTTPS POST requests to interact with endpoints.\n- Requires authentication using your Affiliate ID and token credentials.\n\n[Check the try out guide!](/demand/docs/getting-started/try-out-the-api)\n"
  x-last-validated: '2026-06-02'
  x-generated-from: documentation
  description: This API collection is specific for the stay part of the connected trip. </br></br>Use these endpoints to search for stays such as hotels and apartments, check availability, retrieve reviews, and get detailed property information.
servers:
- url: https://demandapi.booking.com/3.1
  description: Production environment
- url: https://demandapi-sandbox.booking.com/3.1
  description: Sandbox environment
security:
- BearerAuth: []
tags:
- name: Orders
  x-displayName: Orders
  description: 'Enables management of booking orders within the Demand API. </br></br>Use these endpoints to preview and create new orders, check order details, cancel or modify existing orders. This collection is required to integrate booking and order management functionality. '
paths:
  /orders/preview:
    post:
      summary: Booking.com Preview an Order
      description: This endpoint returns the total final price with final charges, as well as the price breakdown and payment/cancellation policies for each product passed in the input.
      operationId: ordersPreview
      parameters:
      - $ref: '#/components/parameters/AffiliateIdHeader'
      tags:
      - Orders
      requestBody:
        content:
          application/json:
            schema:
              title: OrdersPreviewInput
              type: object
              properties:
                booker:
                  title: OrdersPreviewBookerOutput
                  description: The booker's information.
                  type: object
                  properties:
                    country:
                      description: The booker country for showing the best price for that user and obeying laws regarding the display of taxes and fees.
                      type: string
                      pattern: ^[a-z]{2}$
                    platform:
                      description: The booker platform for showing the platform based deals and prices.
                      type: string
                      enum:
                      - android
                      - desktop
                      - ios
                      - mobile
                      - tablet
                    travel_purpose:
                      description: The travel purpose of the booker.
                      type: string
                      enum:
                      - business
                      - leisure
                    user_groups:
                      description: The user groups that the booker is a member of.
                      type: array
                      items:
                        type: string
                        enum:
                        - authenticated
                  required:
                  - country
                  - platform
                currency:
                  description: A three-letter code that uniquely identifies a monetary currency as defined by the ISO 4217 standard. The full list can be obtained by calling <a href="/demand/docs/open-api/demand-api/commonpayments/common/payments/currencies" target="_blank">common/payments/currencies</a>.
                  type: string
                  pattern: ^[A-Z]{3}$
                  example: EUR
                accommodation:
                  title: OrdersPreviewAccommodationInput
                  description: Input parameter with the checkin and checkout date and all the accommodation products to be ordered.
                  type: object
                  properties:
                    id:
                      description: A signed integer number that uniquely identifies an accommodation property. The full list can be obtained by calling [accommodations/details](/demand/docs/open-api/demand-api/accommodations/accommodations/details).
                      type: integer
                      minimum: 1
                    checkin:
                      description: The checkin date. Must be within 500 days in the future and in the format yyyy-mm-dd.
                      type: string
                      format: date
                    checkout:
                      description: The checkout date. Must be later than {checkin}. Must be between 1 and 90 days after {checkin}. Must be within 500 days in the future and in the format yyyy-mm-dd.
                      type: string
                      format: date
                    products:
                      type: array
                      items:
                        title: OrdersPreviewProductInput
                        description: Input parameter with the product id and the desired allocation for that product
                        type: object
                        properties:
                          id:
                            description: Unique ID of the product.
                            type: string
                          allocation:
                            title: OrdersPreviewAccommodationAllocationOutput
                            description: The exact allocation of guests to a room.
                            type: object
                            properties:
                              children:
                                description: The children ages for this room.
                                type: array
                                items:
                                  type: integer
                                  minimum: 0
                                  maximum: 17
                              number_of_adults:
                                description: The number of adults for this room.
                                type: integer
                                minimum: 1
                            required:
                            - number_of_adults
              required:
              - booker
              - accommodation
            example:
              booker:
                country: nl
                platform: mobile
                travel_purpose: leisure
                user_groups:
                - authenticated
              currency: EUR
              accommodation:
                id: 6745031
                checkin: '!START_DATE!'
                checkout: '!END_DATE!'
                products:
                - id: '674503106_275710478_0_2_0'
                  allocation:
                    number_of_adults: 1
                    children:
                    - 8
                - id: '674503113_275710486_0_1_0'
                  allocation:
                    number_of_adults: 1
                    children: []
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                title: OrdersPreviewOutput
                type: object
                properties:
                  request_id:
                    description: Uniquely identifies the request. Please provide this identifier when contacting support.
                    type: string
                  data:
                    title: OrdersPreviewDataOutput
                    description: ''
                    type: object
                    properties:
                      accommodation:
                        title: OrdersPreviewAccommodationOutput
                        description: The products to order related to an accommodation
                        type: object
                        properties:
                          id:
                            description: A signed integer number that uniquely identifies an accommodation property. The full list can be obtained by calling [accommodations/details](/demand/docs/open-api/demand-api/accommodations/accommodations/details).
                            type: integer
                            minimum: 1
                          currency:
                            title: OrdersPreviewCurrencyOutput
                            type: object
                            properties:
                              accommodation:
                                description: A three-letter code that uniquely identifies a monetary currency as defined by the ISO 4217 standard. The full list can be obtained by calling <a href="/demand/docs/open-api/demand-api/commonpayments/common/payments/currencies" target="_blank">common/payments/currencies</a>.
                                type: string
                                pattern: ^[A-Z]{3}$
                                example: EUR
                              booker:
                                description: A three-letter code that uniquely identifies a monetary currency as defined by the ISO 4217 standard. The full list can be obtained by calling <a href="/demand/docs/open-api/demand-api/commonpayments/common/payments/currencies" target="_blank">common/payments/currencies</a>.
                                type: string
                                pattern: ^[A-Z]{3}$
                                example: EUR
                          general_policies:
                            properties:
                              payment:
                                title: AccommodationsProductPaymentTimingsDates
                                description: ''
                                type: object
                                properties:
                                  pay_online_now:
                                    title: AccommodationsPayOnlineNow
                                    type:
                                    - object
                                    - 'null'
                                    properties:
                                      dates:
                                        description: Schedule specifying the instalments for paying the order for the "pay_online_now" option. For each,entry in the schedule, a charge will be made at the time of that entry.
                                        type: array
                                        items:
                                          title: AccommodationsPaymentSchedule
                                          type: object
                                          properties:
                                            at:
                                              description: The date at which this instalment will be charged.
                                              type: string
                                              format: date
                                            price:
                                              description: The amount charged in this instalment.
                                              title: AccommodationsPriceCurrency
                                              type: object
                                              properties:
                                                accommodation_currency:
                                                  type: number
                                                  format: double
                                                  multipleOf: 0.01
                                                  exclusiveMinimum: 0
                                                booker_currency:
                                                  type: number
                                                  format: double
                                                  multipleOf: 0.01
                                                  exclusiveMinimum: 0
                                      method_required:
                                        description: Whether a payment method is required for this payment timing.
                                        type: boolean
                                      methods:
                                        title: AccommodationsPaymentMethods
                                        type: object
                                        description: The payment methods available for the payment timing selected.
                                        properties:
                                          airplus:
                                            description: Whether airplus can be used as a payment method for this order.
                                            type: boolean
                                          cards:
                                            description: The cards available to pay.
                                            type: array
                                            items:
                                              description: A signed integer number that uniquely identifies a payment type. Examples of payment types are the different credit and debit cards. The full list can be obtained by calling <a href="/demand/docs/open-api/demand-api/commonpayments/common/payments/cards" target="_blank">common/payments/cards</a>.
                                              type: integer
                                              minimum: 1
                                          wallet:
                                            description: Whether wallet can be used as a payment method for this order.
                                            type: boolean
                                        nullable: true
                                  pay_online_later:
                                    title: AccommodationsPayOnlineLater
                                    type: object
                                    properties:
                                      dates:
                                        description: Schedule specifying the instalments for paying the order for this product for the "pay_online_later" option.  For each entry in the schedule, a charge will be made at the time of that entry.
                                        type: array
                                        items:
                                          title: AccommodationsPaymentSchedule
                                          type: object
                                          properties:
                                            at:
                                              description: The date at which this instalment will be charged.
                                              type: string
                                              format: date
                                            price:
                                              description: The amount charged in this instalment.
                                              title: AccommodationsPriceCurrency
                                              type: object
                                              properties:
                                                accommodation_currency:
                                                  type: number
                                                  format: double
                                                  multipleOf: 0.01
                                                  exclusiveMinimum: 0
                                                booker_currency:
                                                  type: number
                                                  format: double
                                                  multipleOf: 0.01
                                                  exclusiveMinimum: 0
                                      method_required:
                                        description: Whether a payment method is required for this payment timing.
                                        type: boolean
                                      methods:
                                        title: AccommodationsPaymentMethods
                                        type: object
                                        description: The payment methods available for the payment timing selected.
                                        properties:
                                          airplus:
                                            description: Whether airplus can be used as a payment method for this order.
                                            type: boolean
                                          cards:
                                            description: The cards available to pay.
                                            type: array
                                            items:
                                              description: A signed integer number that uniquely identifies a payment type. Examples of payment types are the different credit and debit cards. The full list can be obtained by calling <a href="/demand/docs/open-api/demand-api/commonpayments/common/payments/cards" target="_blank">common/payments/cards</a>.
                                              type: integer
                                              minimum: 1
                                          wallet:
                                            description: Whether wallet can be used as a payment method for this order.
                                            type: boolean
                                        nullable: true
                                    nullable: true
                                  pay_at_the_property:
                                    title: AccommodationsPayAtTheProperty
                                    type: object
                                    properties:
                                      dates:
                                        description: Schedule specifying the instalments for paying the order for this product for the "pay_at_the_property" option.  For each entry in the schedule, a charge will be made at the time of that entry.
                                        type: array
                                        items:
                                          title: AccommodationsPaymentSchedule
                                          type: object
                                          properties:
                                            at:
                                              description: The date at which this instalment will be charged.
                                              type: string
                                              format: date
                                            price:
                                              description: The amount charged in this instalment.
                                              title: AccommodationsPriceCurrency
                                              type: object
                                              properties:
                                                accommodation_currency:
                                                  type: number
                                                  format: double
                                                  multipleOf: 0.01
                                                  exclusiveMinimum: 0
                                                booker_currency:
                                                  type: number
                                                  format: double
                                                  multipleOf: 0.01
                                                  exclusiveMinimum: 0
                                      method_required:
                                        description: Whether a payment method is required for this payment timing.
                                        type: boolean
                                      methods:
                                        title: AccommodationsPaymentMethods
                                        type: object
                                        description: The payment methods available for the payment timing selected.
                                        properties:
                                          airplus:
                                            description: Whether airplus can be used as a payment method for this order.
                                            type: boolean
                                          cards:
                                            description: The cards available to pay.
                                            type: array
                                            items:
                                              description: A signed integer number that uniquely identifies a payment type. Examples of payment types are the different credit and debit cards. The full list can be obtained by calling <a href="/demand/docs/open-api/demand-api/commonpayments/common/payments/cards" target="_blank">common/payments/cards</a>.
                                              type: integer
                                              minimum: 1
                                          wallet:
                                            description: Whether wallet can be used as a payment method for this order.
                                            type: boolean
                                        nullable: true
                                    nullable: true
                          price:
                            title: OrdersPreviewProductSumPriceOutput
                            description: The price components of all the products selected summed
                            type: object
                            properties:
                              base:
                                description: The sum base price of all products selected. Does not include any extra charges.
                                title: AccommodationsPriceCurrency
                                type: object
                                properties:
                                  accommodation_currency:
                                    type: number
                                    format: double
                                    multipleOf: 0.01
                                    exclusiveMinimum: 0
                                  booker_currency:
                                    type: number
                                    format: double
                                    multipleOf: 0.01
                                    exclusiveMinimum: 0
                              chargeable_online:
                                description: The price that will be charged by Booking.com when online payments are used. This field does not apply to the "pay_at_the_property" timing.
                                title: AccommodationsPriceCurrency
                                type: object
                                properties:
                                  accommodation_currency:
                                    type: number
                                    format: double
                                    multipleOf: 0.01
                                    exclusiveMinimum: 0
                                  booker_currency:
                                    type: number
                                    format: double
                                    multipleOf: 0.01
                                    exclusiveMinimum: 0
                              total:
                                description: The total sum price. Includes all extra charges of all products.
                                title: AccommodationsPriceCurrency
                                type: object
                                properties:
                                  accommodation_currency:
                                    type: number
                                    format: double
                                    multipleOf: 0.01
                                    exclusiveMinimum: 0
                                  booker_currency:
                                    type: number
                                    format: double
                                    multipleOf: 0.01
                                    exclusiveMinimum: 0
                              extra_charges:
                                description: The sum of charges for all products selected, grouped by charge type.
                                conditional:
                                  description: The sum of conditional charges for all products selected, grouped by charge type.
                                  type: array
                                  items:
                                    $ref: ../accommodations/dataTypes.json#/conditionalChargeMultiCurrencySummary
                                non_conditional:
                                  description: The sum of non-conditional charges for all products selected, grouped by charge type.
                                  type: array
                                  items:
                                    $ref: ../accommodations/dataTypes.json#/conditionalChargeMultiCurrencySummary
                          products:
                            type: array
                            items:
                              title: OrdersPreviewProductOutput
                              description: The returned information of the product selected
                              type: object
                              properties:
                                id:
                                  description: Unique ID of the product.
                                  type: string
                                bundle:
                                  description: The bundle ID of the product comprising of value added products.
                                  type: integer
                                deal:
                                  title: Deal
                                  description: This specifies the deal tagging for the product.
                                  type:
                                  - object
                                  - 'null'
                                  properties:
                                    discount_percentage:
                                      description: Discount percentage of the applied deal.
                                      type: integer
                                      minimum: 1
                                    public_price:
                                      description: Original price of this product, before applying any discounts.
                                      type: number
                                      format: double
                                      multipleOf: 0.01
                                      exclusiveMinimum: 0
                                    tags:
                                      description: The tags of all the applied deals.
                                      type: array
                                      items:
                                        type: string
                                        enum:
                                        - black_friday
                                        - limited_time_deal
                                        - logged_in_deal
                                        - mobile_rate
                                        - seasonal_deal
                                inventory:
                                  title: InventoryOutput
                                  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
                                policies:
                                  title: AccommodationsProductDetailedPoliciesMultiCurrency
                                  description: The policies for this product.
                                  type: object
                                  properties:
                                    cancellation:
                                      description: The cancellation policy schedule for this product.
                                      type: array
                                      items:
                                        title: AccommodationsProductDetailedCancellationPolicyMultiCurrency
                                        type: object
                                        properties:
                                          from:
                                            description: The time from which this cancellation fee applies. `now` means from booking time.
                                            oneOf:
                                            - type: string
                                              format: date-time
                                            - type: string
                                              pattern: now
                                            - type: 'null'
                                          price:
                                            description: The cancellation fee.
                                            title: AccommodationsPriceCurrency
                                            type: object
                                            properties:
                                              accommodation_currency:
                                                type: number
                                                format: double
                                                multipleOf: 0.01
                                                exclusiveMinimum: 0
                                              booker_currency:
                                                type: number
                                                format: double
                                                multipleOf: 0.01
                                                exclusiveMinimum: 0
                                    meal_plan:
                                      title: AccommodationsProductMealPlanPolicy
                                      description: The meal plan policy for this product.
                                      type: object
                                      properties:
                                        meals:
                                          description: The meals included in the meal plan.
                                          type: array
                                          items:
                                            type: string
                                            enum:
                                            - breakfast
                                            - dinner
                                            - lunch
                                        plan:
                                          description: The meal plan included in this product.
                                          type: string
                                          enum:
                                          - all_inclusive
                                          - breakfast_included
                                          - full_board
                                          - half_board
                                          - no_plan
                                price:
                                  title: OrdersPreviewProductPriceOutput
                                  description: The price components of this product. 'base' and 'extra_charges' are returned only when explicitly requested (via 'extras=extra_charges').
                                  type: object
                                  properties:
                                    base:
                                      desc

# --- truncated at 32 KB (205 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/booking-holdings/refs/heads/main/openapi/booking-holdings-orders-api-openapi.yml