Booking Holdings · Schema

OrderDetailsDataOutput

All details for this order.

AccommodationsAirlinesCar RentalsHospitalityHotelsRestaurantsTravel

Properties

Name Type Description
id string The id for this order.
accommodations object
affiliate integer The affiliate id used for this order.
booker object The booker's information.
cars object
created string Order creation time.
commission object Commission details for the partner for a given order.
currency string Input currency used in "commission" and "price" output fields.
flights object
loyalty_reward array Details of the loyalty rewards associated with this order.
payment object The payment details of this order.
price object The price components of this order.
status string Status of this order.
updated string Time the order was last updated.
View JSON Schema on GitHub

JSON Schema

demand-api-order-details-data-output-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/booking-holdings/refs/heads/main/json-schema/demand-api-order-details-data-output-schema.json",
  "title": "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": "integer",
          "format": "int64"
        }
      }
    },
    "affiliate": {
      "description": "The affiliate id used for this order.",
      "type": "integer"
    },
    "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": "integer",
          "format": "int64"
        }
      }
    },
    "created": {
      "description": "Order creation time.",
      "type": "string",
      "format": "date-time"
    },
    "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": "number",
          "format": "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": "number",
          "format": "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": "integer",
          "format": "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": "number",
            "format": "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": "string",
            "format": "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": "string",
              "format": "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": "string",
              "format": "uri",
              "nullable": true
            },
            "reservation": {
              "description": "Reservation ID for this accommodation order.",
              "type": "integer",
              "format": "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": "number"
              },
              "at": {
                "description": "Time of the transaction.",
                "type": "string",
                "format": "date-time"
              },
              "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": "number"
              },
              "at": {
                "description": "Time of the transaction.",
                "type": "string",
                "format": "date-time"
              },
              "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": "number",
          "format": "double"
        },
        "total": {
          "description": "The total price. Includes all extra charges.",
          "type": "number",
          "format": "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": "string",
      "format": "date-time"
    }
  }
}