Rate comments, also called contract comments or contract remarks, are important information that the traveler should know when they book a hotel.
Some examples of rate comments are:
This information could be related to hotel operational but also to rate limitations or hotel rules. For this reason, it is important to show this information during the booking process.
Rate comments are sent on each booking operation, it is Availability, CheckRate, Confirmation and even Booking details operation. However, in the first, the information is represented differently.
Next, an example of how rate comments look like at Availability response. Pay attention to the field rateCommentsId , which returns the code: 256|24524|3
[...]
<rate
rateKey = "20201205|20201207|W|256|217516|DBL.DX|GC-ALL|RO||1~2~1|6|N@05~~20c65~107727977~N~~~C8707DE2DC8C4F4159912750444500AAUK0200059001000021020c65"
rateClass = "NOR"
rateType = "BOOKABLE"
net = "101.12"
allotment = "37"
rateCommentsId = "256|24524|3"
paymentType = "AT_WEB"
packaging = "false"
boardCode = "RO"
boardName = "ROOM ONLY"
rooms = "1"
adults = "2"
children = "1"
childrenAges = "6">
<cancellationPolicies>
<cancellationPolicy amount = "75.54" from = "2020-12-02T23:59:00-08:00"/>
</cancellationPolicies>
</rate>
[...]
These are the steps that you have to follow to build the rate comments at this step:
You have two ways to do it:
[...]
<rateComment incoming="102" hotel="14978" code="173049">
<commentsByRates>
<commentByRates rateCodes="2 0">
<comments dateEnd="2022-12-31" dateStart="2014-10-24">
<description>First child until 12 years old free in room only basis, sharing room with their parents, on request.
Cot from 0-2 years old free, on request</description>
</comments>
</commentByRates>
</commentsByRates>
</rateComment>
[...]
You must match the code from the Availability operation from those returned (and stored locally) by this operation. You can do that knowing that: rateCommentsId = incoming | code | rateCodes
You must also have into account the dateStart and dateEnd dates, based on the check-in date. For example, for the same code we could have:
startDate | endDate | Description |
---|---|---|
1st May 2016 | 1st Sep 2016 | "Minimum age of registration 19" |
1st May 2016 | 1st Sep 2016 | "Minimum age of registration 21" |
2nd Sep 2016 | 1st Dec 2016 | "Minimum age of registration 21" |
If the check-in is 13th October 2016 then the rateComment to choose is "Minimum age of registration 21".
If you find more than one description applicable to the check-in date, you would have to concatenate each of them and show it to the final passenger.
Those can be retrieved from availability response, after the development of the tax breakdown, more information could be found here here
Those can be retrieved from content-API using hotels or hoteldetails operations under <issues> tag. More info here.
Those can be retrieved from content-API using hotels or hoteldetails operations under <facilities> tag and are identified using the value true on the "voucher" tag. More info here.
You have the full rate comments now!
Except for the Availability, the rest of operations will directly return the full rate comments for you, that is, the concatenation previously explained is already done.
Here you have for example a sample of the CheckRates. Pay attention to the field: rateComments
[...]
<room code="STU.ST" name="STUDIO STANDARD">
<rates>
<rate
rateKey="20190615|20190616|W|1|74400|DBT.ST|NRF-PVP-BB|BB||1~1~1|2|N@8C91991695504401542298099837AAES0000011000000001010b5"
rateClass="NOR"
rateType="BOOKABLE"
net="505.80"
sellingRate="562.00"
commission="56.20"
commissionVAT="0.00"
commissionPCT="10.00"
rateComments="Estimated total amount of taxes & fees for this booking:3.30 Euro payable on arrival. Key Collection 15:00-00:00.Check-in hour 15:00-00:00.Car park YES (with additional debit notes) 12.00 EUR Per unit/night"
paymentType="AT_WEB"
packaging="false"
boardCode="BB"
boardName=" BED AND BREAKFAST"
rooms="1"
adults="2"
children="0">
</rate>
</rates>
[...]