Step 12 - Add roomrate
A roomrate is a unique combination of room type, rate plan and conditions.
Use the OTA_HotelProductNotif
endpoint to create a roomrate. Make sure to specify the pricing type to LOS
.
Prerequisites
You must have completed the following steps:
- Step 2 and have the property ID
- Step 3 and have the unit ID
- Step 5 and have a rate plan ID
- Step 6 and have a cancellation policy ID
Adding a roomrate
POST
https://supply-xml.booking.com/hotels/ota/OTA_HotelProductNotif
Request body parameters
The following table describes the elements you can add in the request body:
All parameters are required unless otherwise noted.
Element | Attribute | Description |
---|---|---|
OTA_HotelProductNotifRQ | Contains the HotelProducts array. | |
> HotelProducts | Contains the HotelProduct objects. | |
HotelCode | Specifies the unique ID of the property you create roomrates for. | |
>> HotelProduct | Contains the roomrate information. | |
ProductNotifType | Specifies whether the request is to create a roomrate (New ) or modify an existing one (Overlay ). Possible values are New and Overlay . You must use New to create a roomrate. | |
>>> RoomTypes | Contains a RoomType object. | |
>>>> RoomType | Contains the room type information. | |
RoomTypeCode | Specifies the room type ID. | |
MaxOccupancy | [Optional] Specifies the maximum occupancy of the roomtype. Note that specifying this value overrides the value set at the time of creating or updating the roomtype. Also, the pricing type of the roomrate is changed to RLO. | |
>>> RatePlans | Contains a RatePlan object. | |
>>>> RatePlan | Contains the rate plan information. | |
RatePlanCode | Specifies the rate plan ID. | |
>>> PolicyInfo | [Optional] Contains the cancellation and booking policy objects. | |
>>>> CancelPolicy | [Optional] Contains the CancelPenalty objects. | |
>>>>> CancelPenalty | [Optional]Contains the policy information. | |
PolicyId | [Optional] Specifies the policy ID to assign to the roomrate. Use the ID of the policies that we created in step 5. | |
>>>>> TPA_Extensions | [Optional] Contains the no show information. | |
>>>>>> NoShowPolicy | [Optional] Contains the no show penalty details. | |
Penalty | [Optional] Specifies the penalty charged in case the guest does not turn up for the reservation. Possible values are: - default : Use if you want the no show penalty to follow the cancellation fee. - total_price : Use if you want the no show penalty to equal the total reservation price. | |
>>>> GuaranteePaymentPolicy | [Optional] Contains the guarantee payment details. | |
>>>>> GuaranteePayment | [Optional] Contains the guarantee payment details. | |
EffectiveFrom | [Optional] Specifies when the guarantee payment is charged. Possible values are: - after_reservation_is_made - Enforces guests to make a payment immediately after reservation. - after_cancellation_fee_begins : Enforces guests to make a payment after the free cancellation window has closed. | |
PrePaymentRequired | [Optional] Specifies whether a guarantee payment is mandatory. Possible values are: - true : Guarantee payment required - false : Guarantee payment is not required. | |
>>> TPA_Extensions | Contains Pricing type information. | |
>>>> PricingType | Contains the pricing type of the roomrate. Note that to create LOS or OBP type roomrates, the property's pricing type should be set accordingly. | |
Value | Specifies the pricing type. Possible values are: - Standard (default) - LOS - OBP |
Request body example
The following is a request body example:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelProductNotifRQ>
<HotelProducts HotelCode="14795361">
<HotelProduct ProductNotifType="New">
<RoomTypes>
<RoomType RoomTypeCode="1479536101"/>
</RoomTypes>
<RatePlans>
<RatePlan RatePlanCode="57656696"/>
</RatePlans>
<PolicyInfo>
<CancelPolicy>
<CancelPenalty PolicyId="419417191">
<TPA_Extensions>
<NoShowPolicy Penalty = "total_price"/>
</TPA_Extensions>
</CancelPenalty>
</CancelPolicy>
<GuaranteePaymentPolicy>
<GuaranteePayment EffectiveFrom="after_cancellation_fee_begins" PrePaymentRequired="true"/>
</GuaranteePaymentPolicy>
</PolicyInfo>
<TPA_Extensions>
<PricingType Value="LOS"/>
</TPA_Extensions>
</HotelProduct>
</HotelProducts>
</OTA_HotelProductNotifRQ>
Response body example
The following is a successful response body example:
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelProductNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05 OTA_HotelProductNotifRS.xsd" TimeStamp="2025-06-11T04:58:26+00:00" Target="Production" Version="3.000">
<Success />
</OTA_HotelProductNotifRS>
<!-- RUID: [XXXXXXXXXXXXXXXXXX] -->