EST (Enhanced Shopping Transaction)
This transaction set is used to request actual available rates and rooms at multiple hotels (Note - up to a max of 200 properties in one request). All hotel CRSs support this transaction.
Standard EST request:
<HotelML xmlns="
http://www.xpegs.com/v2001Q3/HotelML
">
<Head>
<Process DataPath="/HotelML/Form/MultiAvailability" Function="TI_MultiAvailabilityV1_1" Token="1285940187599"/>
<Route Destination="00" Source="XX" RequestedAccuracy="CacheOrSource"/>
</Head>
<Form>
<MultiAvailability>
<Property Code="TP;043241"/>
<Property Code="MC;LONCH"/>
<RateCriteria VersionCompliance="Enhanced_V1" NumberOfRooms="1" ReturnRateChanges="true">
<GuestCount Type="Adult" Count="2"/>
<GuestCount Type="Child" Count="1"/>
<AgentInfo Number="12345678" Type="TIDS"/>
<DateRange InDate="2016-06-20" OutDate="2016-06-21"/>
</RateCriteria>
</MultiAvailability>
</Form>
</HotelML>
Demand Partner to insert their agency (TIDS, IATA, or CLIA)
Demand Partner to insert assigned Source Code (SGA) of XX
Property IDs are obtained from the property list from the PDS site and are inserted into requests with brand code and property ID separated by a semi-colon. MC;LONCH – Brand code “MC”, property ID “LONCH”
Add RequestedAccuracy="CacheOrSource to these requests so we can identify from where the response is received (Either RateGain Cache or direct from hotel source).
200 properties can be sent in one RateGain recommends sending less than 200 based on the strategy guidelines provided by implementer.
GuestCount is per room.
Standard EST Response:
BookableRate: rate per room per night (may or may not include taxes). Based on CRS, this rate may be the first night average, highest, or most frequent nightly.
TotalRate and TotalRateInclusive represent the per-room total for all nights.
BookableRate and TotalRate values may or may not include taxes and service TotalRateInclusive values include all taxes and service charges. TotalRateInclusive minus TotalRate equals Total Taxes not included in rate.
All rates are per room (Important to note if multiple rooms are requested).
Marriott (MC) also returns penalty information in this response, but not all chains support this.
Public rates have been returned for all hotels – note that some are deposit rates - <DepositPolicyRequired="true"/> this is important to note for the guarantee type value that needs to be sent in the booking request.
Rate Change Response Examples
The ReturnRateChanges="true” value in the initial request will trigger the response to contain the actual RateChanges if the hotel supports the functionality.
Example response extract if the chain supports this:
RateChange Charge values may or may not include taxes and service charges.
During a rate change period, the first rate change is the rate that is in effect until the next date is specified and remains in effect until the next date is specified.
Average rate can be calculated by dividing either the TotalRateInclusive or TotalRate by the number of nights based on whether you wish to display the final nightly cost or the nightly cost before taxes.
If a chain does not support this functionality in the availability response, but rate changes do occur during the stay the indicator RateChange="true" is returned but with no rate listing – full rate change information is provided in the rate rules response.
Meal Plans in EST
Meal Plan Information may be returned in the EST responses (not all chains will return this information):
Key to meal plans returns:
<Amenity Code="BRKFST" Confirmable="true" Room="true"/> Breakfast included in rate.
<Amenity Code="BRKFST" Confirmable="true" ExtraCharge="true" Room="true"/> Breakfast not included, extra cost.
<Amenity Code="BRKFST" OnRequest="true" Room="true"/> On Request and complimentary.
<Amenity Code="BRKFST" ExtraCharge="true" OnRequest="true"/> On Request with cost.
<Amenity Code="BRKFST" Room="true"/> If this is returned, we would suggest you check with the hotel chain for clarification of exactly what is on offer.
Please also note the meal plan codes can be returned at both RatePlan and RoomType level. It is important to code for both scenarios as shown below.
Marriott example:
IHG example:
Supported Meal Plan Codes
Code
Description
BRKFST
Breakfast
BRKBUF
Breakfast Buffet
CNTBRK
Continental Breakfast
COMBRK
Complimentary Continental Breakfast
DINNER
Dinner
FEBRK
Full English Breakfast
LUNCH
Lunch
COMPDN
Meal included - dinner
COMPLN
Meal included - lunch
MP
Meal Plan
AP
Meal Plan - American
BB
Meal Plan - Bed and Breakfast
BP
Meal Plan - Bermuda
CB
Meal Plan - Caribbean
CP
Meal Plan - Continental
EP
Meal Plan - European
FAP
Meal Plan - FAP/Full-board
MAP
Meal Plan - MAP/Half-board
Negotiated Rates in EST
Demand Partner will have agreements in place with the hotel chains regarding which negotiated rates will be available.
The hotel chains will inform Demand Partner which method to use to request the rates via For chains that use the Negotiated Rate Management Tool (Account Author) the distributor will use a “Negotiated” RatePlanType and for others use a “Corporate” RatePlanType.
It may be necessary for EST Negotiated rates requests to be separated by chain.
It is possible to request multiple codes from one chain (if they are offering you more than one net rate), generally a maximum of 3-15 negotiated rate codes per transaction depending upon the CRS.
Example EST request for Corporate rates
Example EST Response with Corporate rates returned
Some chains may require a corporate rate plan type and a corporate code:
<RateSearch RatePlanCode="ABC" RatePlanType="Corporate" BrandCode="SI">
<CorpInfo Code="123456"/>
Example EST request for Negotiated Rates:
Demand Partner’s actual assigned Negotiated Rate Codes to be used in requests (to chains supporting this model):
1XX - Demand Partner Rate 1
2XX - Demand Partner Rate 2
3XX - Demand Partner Rate 3
4XX - Demand Partner Rate 4
5XX - Demand Partner Rate 5
6XX - Demand Partner Rate 6
Example response with negotiated rates returned:
Demand Partner to parse the response to identify the negotiated rates 3 Negotiated Rates – 1XX, A0Z and A1C were returned as available.
The returned rate plan code will not always be the same as the requested rate plan code.
RequestedRatePlanCode="1XX" Status="Open"> is returned by this particular CRS but not all CRSs will return this.
If MatchingQualifier value is left out or set to “ExactAndPublic”, both negotiated rates and public rates are If Demand Partner only wants their negotiated rates returned; for chains that support this, MatchingQualifier=”Exact” could be included in the EST request:
<RateCriteria NumberOfRooms="1" MatchingQualifier="Exact" ReturnRateChanges="true" VersionCompliance="Enhanced_V1">
If Demand Partner wants BOTH Negotiated OR Public, they can use ExactOrPublic which will return public rates if the negotiated rate plan is not available.
Requests for multiple rooms
There are two ways to request and book multiple rooms, depending on the room configuration;
If the room configuration is the same for all rooms, for example two rooms with 2 adults in each room send EST, Rate rules and booking requests for 2 adults with NumberOfRooms=”2”, as below.
Rate rules and booking requests would include the same values as above (2 adults/2 rooms).
If the room configuration is different, for example one room with 1 adult and one room with 2 adults, a separate request must be sent for each configuration as shown below:
In the same way you would send two separate rate rules and booking requests, it is recommended that bookings for multiple rooms with different room configurations only be allowed for chains that support session control and that session control be used for such bookings. Session control will be discussed in more detail later in this document.
Last updated