{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-connectivity/docs/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Self-assessment","siteUrl":"https://developers.booking.com"},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"self-assessment","__idx":0},"children":["Self-assessment"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before going live, set up a test property and validate your RtB 2.0 integration against the"," ","scenarios below. For each step, note the RUID of the relevant API calls and share the details with"," ","your Booking.com contact."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"set-up-a-test-property","__idx":1},"children":["Set up a test property"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before running the scenarios, set up a test property that is eligible for RtB 2.0 and create test"," ","requests against it."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-an-eligible-test-property","__idx":2},"children":["Create an eligible test property"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Make sure your test property meets all of the following criteria:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Property creation"]}," – Create a new test property using the new Property API or the legacy"," ","Content API."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Location"]}," – The property must be in one of the supported launch markets: US, AU, FR, ES,"," ","UK, DE, or IT."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Accommodation type"]}," – Only specific accommodation types are allowed – for example"," ","holiday home, apartment, or villa (hotel categories ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["5006"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["3"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["35"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Payment"]}," – The property must use the ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Payments by Booking"]}," or hybrid payment models."," ","Properties that exclusively offer ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Pay at the Property"]}," are not eligible. Enable this in the"," ","Extranet (Finance menu → ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Payments by Booking.com"]}," → ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Sign up now"]},") or via the Payments"," ","by Booking API."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Enable Request to Book"]}," – Specify"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<TPA_Extensions><BookingModel Type=\"RTB\" /></TPA_Extensions>"]}," using the Content API, or"," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"booking_model\": {\"type\": \"RTB\"}"]}," using the Property Settings API."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Allowlist your test property"]}," – Contact the Booking.com team via the dedicated Slack"," ","channel to allowlist your test property."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-test-booking-requests","__idx":3},"children":["Create test booking requests"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To create test RtB requests for your test property, use the following Booking.com frontend URL,"," ","replacing ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{property_id}"]}," with your test property ID:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"https://secure.booking.com/book.html?test=1;hotel_id={property_id}\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This requires a login, only works for test properties, and the check-in date must be at least two"," ","days in the future."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Because the new flow requires the property to be on Payments by Booking, provide a test credit card"," ","or use your own. You can set a free cancellation policy for your test property and cancel the"," ","booking at any time to avoid charges."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"scenario-1-happy-flow--approved--booked-","__idx":4},"children":["Scenario 1: Happy flow (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["APPROVED"]}," → ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["BOOKED"]},")"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create a new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["RTB"]}," booking request for a test property."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pull the new request via the RtB Connectivity API and note the RUID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Block provider-side availability and propagate it across your other channels. Note the RUID of"," ","the Rates & Availability API call."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Update the booking request status to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["APPROVED"]}," via the RtB Connectivity API and note the RUID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pull the updated request via the RtB Connectivity API and note the RUID and the reservation ID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Confirm you did ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["not"]}," re-block availability when receiving the reservation via the Reservations"," ","API."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"scenario-2-partner-declines-the-request--rejected-","__idx":5},"children":["Scenario 2: Partner declines the request (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["REJECTED"]},")"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create a new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["RTB"]}," booking request for a test property."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pull the new request via the RtB Connectivity API and note the RUID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Block provider-side availability and propagate it across your other channels. Note the RUID of"," ","the Rates & Availability API call."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Update the booking request status to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["REJECTED"]}," via the RtB Connectivity API and note the RUID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify that provider-side availability is released and propagated correctly. Note the RUIDs of the"," ","relevant Rates & Availability API calls."]}]}]},"headings":[{"value":"Self-assessment","id":"self-assessment","depth":1},{"value":"Set up a test property","id":"set-up-a-test-property","depth":2},{"value":"Create an eligible test property","id":"create-an-eligible-test-property","depth":3},{"value":"Create test booking requests","id":"create-test-booking-requests","depth":3},{"value":"Scenario 1: Happy flow ( APPROVED → BOOKED )","id":"scenario-1-happy-flow--approved--booked-","depth":2},{"value":"Scenario 2: Partner declines the request ( REJECTED )","id":"scenario-2-partner-declines-the-request--rejected-","depth":2}],"frontmatter":{"title":"RtB 2.0 self-assessment","description":"Self-assessment scenarios to validate a Request to Book 2.0 integration before going live, covering how to set up an eligible test property and the happy path and partner rejection scenarios.","keywords":{"includes":["RTB","self-assessment","REJECTED","availability","RUID","test property","Payments by Booking","request-to-book"]},"seo":{"title":"Self-assessment"}},"lastModified":"2026-08-26T11:37:47.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/connectivity/docs/request-to-book/rtb-2.0/self-assessment","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}