Learn how to define the required payment data when creating an order, allowing business travellers to pay either online or at the property using an authorisation form.
This use case is for Corporate partners who make bookings on behalf of their employees (business travellers) and make a booking for a business trip. Payments are either offline or online via different methods.
Partner type | Payment methods | |
|---|---|---|
+ authorisation form1 | ✓ Virtual credit card (VCC) + payment instructions ✓ AirPlus VCC + payment instructions | |
| ✓ AirPlus VCC integration ✓ Virtual credit card (VCC) ✓ Credit card + MOTO |
1 VCC authorisation form is sent to the property instructing not to charge the traveller as is a business trip and, is issued per each reservation. See all details in payment methods section.
The following sections show, for each payment method and scenario:
- The data that the /orders/preview response must contain.
- How to define the payment object in your /orders/create request to use your payment option.
Follow these instructions and recommendations to create the payment data needed for your request.
→ Call /accommodations/details before creating your order, so you can check the available payment methods for the selected accommodation.
Example to check available payment methods:
{
"accommodations": [10004],
"extras": ["payment"],
"languages": ["en-gb"]
}Refer to the Accommodation Quick guide - Step 2 for more information on /accommodations/details requests.
Check the type of Virtual credit card that is accepted by the property, in the output field payment.methods.virtual_cards.
- Only card ID 1, 2 and 3 is supported for VCC - Use the common/payments/cards endpoint to know which cards are identified with these values.
- If you use a VCC that is not type 1, 2 or 3, it won't be accepted even if it is in /orders/preview response.
The examples provided illustrate different scenarios your application could support, showing how to specify the payment structure in your /orders/create request.
Corporate partners can generate or obtain their own Virtual credit cards (VCC) and use them for offline payments together with payment instructions, for authorisation, or use them for online payments.
Checklist | |
|---|---|
| ☑ | You have a Virtual credit card provider/ Payment Service Provider (PSP). |
| ☑ | Demand API version must be updated to version 2.9 to use Virtual credit cards + Payment timings. |

- Generate a Virtual credit card (VCC) through your Payment Service Provider (PSP).
- Forward the Virtual credit card (VCC) and payment instructions via our API to Booking.com.
- Booking.com sends an authorisation form with this information to the property, allowing them to charge the VCC when the business traveller checks in.
→ Call /orders/preview to view final details of accommodation and products including when and how the payment can be made.
Refer to the Payments quick guide for examples of orders/preview responses and initial instructions.
The response must contain the general_policies.payment.pay_at_the_property field, with this data:
{
"accommodation": {
"general_policies": {
"payment": {
"pay_at_the_property": {
"method_required": true,
"dates": [
{
"at": "2025-10-18", // This is the booking date. Is always 0 for pay_at_the_property timing (as the payment will be made at checkin date)
"price": {
"accommodation_currency": 0.00,
"booker_currency": 0.00
}
},
{
"at": "2025-12-22",// This is the checkin date for the booking.
"price": {
"accommodation_currency": 205.78, // The amount that the property must charge to your provided VCC at checkin date.
"booker_currency": 0.00
}
}
],
"methods": {
"cards": [1, 2, 3] // The IDs of payment cards that can be used to pay for your booking. You must be able to generate/obtain a VCC for one of these cards.
}
}
}
}
}
}
This response shows that:
- You can only use the
pay_at_the_propertyoption to pay for the booking. - The
method_requiredmust betrue Dates: Contain two payment schedule items, showing how and when the total price of the booking must be paid.
For online payments, Corporate partners can use Virtual credit cards generated by any VCC provider.
- You pay Booking.com with your Virtual credit card (VCC).
- Booking.com charges your VCC and pays the property.
Refer to VCC method use case for the full description.
Our Demand API is integrated with AirPlus, which is a VCC external provider, so those Corporate partners who cannot or do not want to generate VCC themselves, can use AirPlus instead.
By using AirPlus as your virtual credit card provider, you can pay for business travel bookings by using a 12-digit AirPlus number instead of full details of a virtual credit card, allowing for an efficient and secure booking process.
You can use AirPlus VCC for both offline (together with payment instructions) and online payments.
Checklist | |
|---|---|
| ☑ | Your partner agreement authorises you to use Virtual credit card. |
| ☑ | You have a 12-digit AirPlus number. |
| ☑ | Demand API version must be updated to version 2.9 to use Virtual credit cards + Payment timings. |

You forward a AirPlus Virtual credit card (VCC) + details of what charges are allowed (payment instructions) and authorisation details to Booking.com via our API.
Booking.com sends an authorisation form with AirPlus VCC details to the property, so that it can charge the VCC as authorised appropriately when the business traveller stays.
NoteThis option is only available if you are an AirPlus customer and have a 12-digit AirPlus number. If you are using an AirPlus VCC directly (not via the integration), see cards method instead.
→ Call /orders/preview to see the final details of the accommodation and products including when and how the payment can be made.
You can see all payment-related details in the general_policies.payment.pay_at_the_property field provided in the response. Example:
{
"accommodation": {
"general_policies": {
"payment": {
"pay_at_the_property": {
"method_required": true,
"dates": [
{
"at": "2025-10-18", // This is the booking date. Is always 0 for pay_at_the_property timing (as the payment will be made at checkin date)
"price": {
"accommodation_currency": 0.00,
"booker_currency": 0.00
}
},
{
"at": "2025-12-22", // This is the checkin date for the booking.
"price": {
"accommodation_currency": 205.78, // The amount that the property must charge to your provided VCC at checkin date.
"booker_currency": 0.00
}
}
],
"methods": {
"cards": [1, 2, 3] // The IDs of payment cards that can be used to pay for your booking. You must be able to generate/obtain a VCC for one of these cards.
}
}
}
}
}
}
This response shows that, for the selected property and product, with your authorised payment features:
- You can only use the
pay_at_the_propertyoption to pay for the booking. - The
method_requiredmust betrue Dates: Contain two payment schedule items, showing how and when the total price of the booking must be paid.- The
pay_at_the_property.methods.airplus: Must be true.
If you are a Corporate Partner using AirPlus VCC and want to make online payments on behalf of your business travellers, then this use case is for you.

- The traveller pays via the method offered on your platform.
- You pay for the booking via AirPlus Virtual credit card (VCC).
- Booking.com charges your Virtual credit card and pays the property.
→ Call /orders/preview to see the final details of the accommodation and products including when and how the payment can be made.
In this example, for the selected property and product, a partner that is entitled to pay online now using AirPlus VCC, would find these options after calling the /orders/preview endpoint:
{
"accommodation": {
"general_policies": {
"payment": {
"pay_online_now": {
"method_required": true,
"dates": [
{
"at": "2025-10-18", // This is the booking date.
"price": {
"accommodation_currency": 0.00,
"booker_currency": 205.78 // The amount that the property must charge to the AirPlus VCC at booking date. This is the total price of the booking excluding extra charges (if any).
}
},
{
"at": "2025-12-22",
"price": {
"accommodation_currency": 0.00,
"booker_currency": 0.00 // The amount that the property must charge at checkin, if any extra charges apply.
}
}
],
"methods": {
"airplus": true
}
}
}
}
}
}- You can only use the
pay_online_nowoption to pay for the booking. - The
method_requiredmust betrue Dates: Contain two payment schedule items, showing how and when the total price of the booking must be paid:- The
pay_at_the_property.methods.airplus: Must be true.
Mail Order / Telephone Order (MOTO) is a card payment flow available to eligible corporate partners. It allows partners to create accommodation bookings made offline (for example, by phone or email) and classify them as MOTO transactions using the Demand API.
- Ignore the
cvc_requiredvalue returned by accommodation payment endpoints when processing MOTO transactions. payment.card.cvcis not required for MOTO transactions when the selected product supports an online payment timing.
Checklist | |
| ☑ | Your partner agreement with Booking.com must support MOTO transactions. |
- The traveller makes a booking request offline, such as by phone or email.
- You collect the traveller’s card details through your offline flow.
- You create the order using the Demand API and flag the payment as a MOTO transaction.
- Booking.com processes the payment and pays the property.
→ Include the following fields in the payment object of your orders/create request:
{
"payment": {
"method": "card",
"timing": "pay_online_now",
"card": {
"authentication": {
"sca_exemption": "moto"
},
"cardholder": "Test Name",
"expiry_date": "2030-10",
"number": "1234123412341234"
}
}
}Field requirements:
payment.method- Must be"card".payment.timing- Must be"pay_online_now".payment.card.authentication.sca_exemption- Must be set to"moto"(lowercase) to classify the transaction as a MOTO payment.payment.card.cardholder,payment.card.expiry_date, andpayment.card.number- Must contain valid card details.For accommodation MOTO payments:
- Do not include
payment.card.authentication.riskifiedorpayment.card.authentication.3d_secure. payment.card.cvcis not required, even ifcvc_required=trueis returned by accommodation payment endpoints.
- Do not include
Optional fields:
payment.business_information- Optional. Include this object only if you need billing details or an authorisation form for the booking.payment.include_receipt- Set totrueto include a payment receipt URL in the response when available.
- Learn more about all Payment methods.
- For detailed instructions on Virtual credit card transactions, refer to VCC method use case.
- Check the Orders section for more tips and examples on how to preview and create your order requests.
- Use the common/payments/cards endpoint to understand the card IDs retrieved in your response.