POST /orders/create
Use this endpoint to confirm the booking and proceed the payment.
Servers
- https://demandapi.booking.com/3.1
- https://demandapi-sandbox.booking.com/3.1
Request headers
Name | Type | Required | Description |
---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
X-Affiliate-Id |
Integer | Yes |
Include here your Affiliate identifier number |
Request body fields
Name | Type | Required | Description |
---|---|---|---|
booker |
Object | Yes |
The booker's information. |
booker.email |
String | Yes |
The booker's email address. |
booker.name |
Object | Yes |
The name of the booker. |
booker.name.last_name |
String | Yes | |
booker.name.first_name |
String | Yes | |
booker.company |
String | No |
The booker's company name. |
booker.telephone |
String | Yes |
The booker's telephone number. |
booker.address |
Object | Yes |
The booker's address to be used for creating this order. All fields of this object are required if the /accommodations/details endpoint indicates that the booker's address is necessary by returning booker_address_required=true. |
booker.address.address_line |
String | No |
The details of this address. |
booker.address.post_code |
String | No |
Post code for this address. |
booker.address.country |
String | Yes |
The country for this address. |
booker.address.city |
String | No |
The city for this address. |
booker.language |
String | No |
An IETF language tag code that uniquely identifies a supported human language or dialect as described here: https://en.wikipedia.org/wiki/IETF_language_tag. Note that in v3 the whole tag is always lowercase. Examples: "nl" for Dutch/Nederlands or "en-us" for English (US). The full list can be obtained by calling common/languages. |
order_token |
String | Yes |
A token containing the necessary data to be used for creating this order. |
payment |
Object | Yes |
Payment related information for the order. |
payment.method |
String | No |
The payment method to be used for this order. Possible values:
|
payment.timing |
String | Yes |
Information about when to execute the payment. Possible values:
|
payment.include_receipt |
Boolean | No |
This is used to determine whether to include payment |
payment.business_information |
Object | No |
All business related information for billing and authorisation form. This must be included for the payments that require authorisation form. |
payment.business_information.billing |
Object | No |
All information to be used in the invoice. |
payment.business_information.billing.email |
String | Yes |
Email to send the invoice to. |
payment.business_information.billing.address |
Object | No |
The booker's address to be used for creating this order. All fields of this object are required if the /accommodations/details endpoint indicates that the booker's address is necessary by returning booker_address_required=true. |
payment.business_information.billing.address.address_line |
String | No |
The details of this address. |
payment.business_information.billing.address.post_code |
String | No |
Post code for this address. |
payment.business_information.billing.address.country |
String | No |
The country for this address. |
payment.business_information.billing.address.city |
String | No |
The city for this address. |
payment.business_information.billing.vat |
String | Yes |
VAT number to be used in the invoice. |
payment.business_information.company |
String | Yes |
Company that will issue an authorisation form for the virtual credit card and used in the invoice. |
payment.business_information.authorisation_form |
Object | No |
Information that is relevant for generating an authorisation form. |
payment.business_information.authorisation_form.chargeable_items[] |
Array | No |
Items which can be charged using a provided virtual credit card. |
payment.card |
Object | No |
Card information for executing the payment. |
payment.card.cardholder |
String | Yes |
Name of the cardholder. |
payment.card.expiry_date |
String | Yes |
Expiry date of the card. Format: YYYY-MM |
payment.card.cvc |
String | Yes |
3 or 4 digits card validation code (CVC) of this card. |
payment.card.number |
String | Yes |
Number of the card. |
payment.card.authentication |
Object | No |
Card authentication information for executing the payment. |
payment.card.authentication.3d_secure |
Object | No |
3-factor authentication information for the card. |
payment.card.authentication.3d_secure.eci |
String | Yes |
The electronic commerce indicator. |
payment.card.authentication.3d_secure.transaction |
String | No |
The unique ID assigned by the DS to identify a single transaction. |
payment.card.authentication.3d_secure.authentication_value |
String | Yes |
Cardholder Authentication Verification Value. |
payment.card.authentication.3d_secure.cavv |
String | No |
Deprecated. Do not use |
payment.card.authentication.sca_exemption |
String | No |
The type of SCA exemption to be applied to the payment. Possible values:
|
payment.card.authentication.riskified |
Object | No |
Riskified information for external fraud verification. |
payment.card.authentication.riskified.session_id |
String | Yes |
Riskified provided session_id for external fraud verification. |
payment.card.authentication.riskified.ip_address |
String | Yes |
The booker's IP address. |
payment.airplus |
Object | No |
All information related to airplus payment. |
payment.airplus.dbi |
Object | No |
Descriptive billing information(dbi) details to pass to AirPlus. |
payment.airplus.dbi.cost_centre |
String | No |
Cost centre to pass in descriptive billing information. |
payment.airplus.dbi.internal_account |
String | No |
Internal account to pass in descriptive billing information. |
payment.airplus.dbi.order_number |
String | No |
Order number to pass in descriptive billing information. |
payment.airplus.dbi.department_code |
String | No |
Department code to pass in descriptive billing information. |
payment.airplus.dbi.accounting_code |
String | No |
Accounting code to pass in descriptive billing information. |
payment.airplus.dbi.employee_number |
String | No |
Employee number to pass in descriptive billing information. |
payment.airplus.dbi.accounting_unit |
String | No |
Accounting unit to pass in descriptive billing information. |
payment.airplus.dbi.project_number |
String | No |
Project number to pass in descriptive billing information. |
payment.airplus.number |
String | Yes |
12 digit Airplus Number. |
accommodation |
Object | No |
Additional information related to the accommodation order. |
accommodation.products[] |
Array | No | |
accommodation.products[].id |
String | Yes |
ID for this product. |
accommodation.products[].guests[] |
Array | No |
The guest details for this product. |
accommodation.products[].guests[].email |
String | Yes |
The email address of the guest. |
accommodation.products[].guests[].name |
String | Yes |
The name of the guest. |
accommodation.products[].bed_configuration |
String | No |
Bed configuration ID to select for this product. |
accommodation.remarks |
Object | No |
Optional remarks from the guest. |
accommodation.remarks.special_requests |
String | No |
Optional comments or requests from the guest. Special requests cannot be guaranteed – but the property will do its best to meet your needs. |
accommodation.remarks.estimated_arrival_time |
Object | No |
Estimated arrival time of the guests. |
accommodation.remarks.estimated_arrival_time.hour |
Integer | Yes |
Approximate hour of arrival to the hotel. Allowed values are from 0 to 23. This time should be within the hotel reception hours, or will be ignored otherwise with a warning will be appended to special_requests. |
accommodation.remarks.estimated_arrival_time.next_day |
Boolean | No |
Set this to true, if the hour selected is for the day after checkin. Default value: false |
accommodation.label |
String | No |
A label for this order. This can be read back later while fetching this order details. See the Labels and attributions guide for more details. |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.