Last updated

Integrating TPI Net rates

This guide explains how to retrieve third-party sourced Net rates in our accommodation inventory through Demand API, so you can provide more competitive prices while retaining full control over your margins.


About Net rates

Net rates are non-commissionable, prepaid prices made available to Affiliate partners.

As an Affiliate partner, you are free to apply your own markup or discounts when selling these rates to your travellers.

Key benefits

Key aspects of Net rates include:

Net rates benefits

Who is this guide for?

You should use this guide if you:

  • Are implementing either Search, look & book and/or Post-booking integrations.
  • Are integrating with Demand API v3.1 (or above)
  • Are able to distribute and display these rates in a Closed User Group (CUG) or opaque environment, as specified in the approved Rate Distribution Framework*.
  • Have signed the Net Rates Partner Addendum.
  • Are authorised to use pay_online_now with Virtual Credit Cards (VCCs).
  • Are able to handle first line customer service.
  • Have been assigned a dedicated AID (Affiliate ID) for Net rates.

*Contact your Account Manager for details regarding the approved Rate Distribution Framework.

Getting started

Follow this process to get Net rates activated into your account:

Net rates get started

Prerequisites

Before you begin, make sure the following requirements are met:

Checklist
Your agreement includes support for pay_online_now.
You can use the Virtual Credit Card (VCC) payment method.
You have signed the Net Rates Partner Addendum.
You have a dedicated AID (Affiliate ID) for accessing & booking Net rates.

Contact your Account Manager if you wish to meet these requirements and have Net rates enabled.


Integration steps

Follow these steps to retrieve and book Net rates:

End-to-end flow
  1. Search for properties offering Net rates using the accommodation/search endpoint.
  2. Look at accommodations/availability and display rates, policies, and room details.
  3. Call the order/preview to validate the product and retrieve final details.
  4. Use the order/create to finalise and confirm the booking.

See the Step-by-step TPI rates guide for full instructions.


Specifics for Net rates

Important
  • Net rates are only available when using a Net rates-specific AID.
  • To retrieve and book Net rate blocks, you must use the dedicated Net rates AID in your API requests.
  • Standard Booking.com rates and Commissionable TPI rate blocks are not available with this AID.

Step 1 - Search for Net TPI rates

→ Make a call to the accommodations/search endpoint.

Use your Net rates AID in every request to retrieve Net rates.

Identify Net rates

In the accommodations/search and availability responses, Net rates are identified as "Net" rates.

  • Check the inventory object and the third_party_inventory.type= "net" field.
  • The returned products represent the best price for your criteria (e.g. one room, pay online now).
  • Accommodation URLs and deep links are not rerturned in search response (this is included in availability responses).

See detailed instructions in the Step-by-step TPI rates guide

Step 2 - Look availability and pricing

→ Use the accommodations/availability endpoint to retrieve rates and policy details.

Net rates not supported in /bulk-availability

Net rates are currently not supported in the /bulk-availability endpoint. Use the standard /availability endpoint instead.

Availability response

The response includes a list of products being those with Net rates on first positions in the availability page results.

Each product provides two key pricing fields:

price - The Net rate available to you as a partner.

best_available_price - The most affordable and publicly available rate for the same product (room type, meal plan, cancellation policy).

Example of available Net rates products in response:

{
    "request_id": "01jwb627s8xa1s24ztkg6acgbe",
    "data": {
        "id": 547336,
        "currency": "EUR",
        "deep_link_url": "booking://hotel/547336?affiliate_id=2373042&checkin=2025-07-10&checkout=2025-07-11",
        "products": [
            {
                "id": "tpi-ae0c08d5985957f8bb241f06d0891a81",
                "deal": null,
                "inventory": {
                    "third_party": true,
                    "type": "net"
                },
                "maximum_occupancy": {...},
                "number_available_at_this_price": 1,
                "policies": {
                    "cancellation": {...}
                        ],
                        "type": "non_refundable"
                    },
                    "meal_plan": {
                        "meals": [],
                        "plan": "no_plan"
                    },
                    "payment": {
                        "prepayment_required": true,
                        "timings": [
                            "pay_online_now"
                        ]
                    }
                },
                "price": {
                    "book": 47.33,
                    "total": 47.33
                },
                "best_available_price": {
                    "total": 52.44
                },
                "room": 54733603,
                "third_party_inventory": true
            },
        ],
        "recommendation": null,
        "url": "https://www.booking.com/hotel/th/sunchine-paradise-resort.html?aid=2373042&checkin=2025-07-10&checkout=2025-07-11&no_rooms=1&group_adults=2&selected_currency=EUR"
    }
}

Understanding the Best available price

The best_available_price field is returned by default for accommodation availability with Net rates. It represents the cheapest publicly available rate for the same product (room type, meal plan, cancellation policy).

It is intended to help you align your pricing strategy with market expectations. It helps you to:

  • View the first Net rate available for the same product on Booking.com (excluding Genius or member-only rates).
  • Better understand your pricing competitiveness.
  • Adjust your markup or markdown strategy accordingly.

To stay competitive, ensure that your final selling price does not significantly exceed the best_available_price.

Example - Applying margins

Taking the above example as use case, this product offers Net rates and includes:

  • price.total: €47.33 (Net rate)
  • best_available_price.total: €52.44 (public price on Booking.com)

You could add a margin up to €5.11 while remaining competitive.

Note: You can choose to undercut slightly or match the public price, depending on your strategy.

Step 3 and 4 - Preview and book a product with Net rate

Follow the standard accommodation booking flow:

  1. Call the orders/preview to get final pricing and policies.
  2. Use orders/create to confirm the booking.
    • Do not forget to specify the VCC payment method in the request. Example:
{
  "payment": {
    "card": {
      "authentication": {
        "sca_exemption": "virtual"
      },
      "cardholder": "xxxx",
      "cvc": 123,
      "expiry_date": "2030-10",
      "number": "1234123412341234"
    },
    "include_receipt": true,
    "method": "card",
    "timing": "pay_online_now"
  }
}

See the Step-by-step TPI rates guide for detailed instructions.

Post booking

For post-booking reporting guidelines and best practices, refer to the dedicated guide.


Net rates integration best practices

Follow these tips to make the most of Net rates and ensure a smooth integration:

AreaRecommendation
AID usage
  • Always use your dedicated Net rates AID in every request to retrieve Net rates.
Price markup
  • Apply a competitive markup that stays below the best_available_price to maximise conversions.
VCC handling
  • Ensure your system supports Virtual Credit Cards (VCCs) and that you comply with Booking.com’s payment flow requirements. See the VCC payments guide.
Real-time validation
  • Always call the /orders/preview endpoint before booking to confirm final prices and policies.
Fallback logic
  • If Net rates are not returned for a given property or stay, consider implementing fallback logic to show other available inventory types.

Troubleshooting

Here are some common issues you might encounter and how to resolve them:

ProblemCauseSolution
No Net rate products returned
  • Missing or incorrect AID in request.
  • Make sure you're using your dedicated Net rates AID in all search and availability calls.
  • Alternatively, consider implementing fallback logic to show other available inventory types.
Booking fails with invalid payment method
  • Unsupported or missing VCC configuration.
  • Ensure your integration supports Virtual Credit Cards and the pay_online_now payment timing.
  • Refer to Payment errors guide for examples.
Unexpected pricing or policies
  • Stale data.
  • Always call /orders/preview immediately before /orders/create to validate pricing and policies in real time.
Bulk availability endpoint returns no data
  • Net rates not supported in that endpoint.
  • Use the standard /availability endpoint instead of /bulk-availability for Net rates.

Next steps

Explore the following resources to enhance your Net rates integration: