Request & Response message format
Element Path
Attribute
Occ
Type
Notes
HotelML/Head/Process
1
DataPath
1
Char
Set to "/HotelML/Form/MultiAvailability”
Function
1
Char
Set to “TI_MultiAvailabilityV1_1”
Token
1
Char
Unique ID for the transaction generated by the system sending the transaction.
HotelML/Head/Route
1
Source
1
Char 2-3
Identifies the organization sending the transaction. The value to use will be provided during the implementation project.
Destination
1
Char 2
Always set to “00” (i.e. zero zero).
HotelML/Form/MultiAvailability/ Property
1..200
Repeated for each property.
Code
1
Char
Chain and property code, separated by a semi-colon – e.g. “UI;AB1234”
HotelML/Form/MultiAvailability/ RateCriteria
1
Specifies rate selection criteria.
MatchingQualifier
0..1
Enum.
Valid only when at least one rate plan code (RateCriteria/RateSearch/@RatePlanCode)is included in the request. If “ExactAndPublic” the CRS should include the requested rate plans (if available) and public rates in the rate range. If “Exact” the CRS should include only the requested rate plans in the rate range. If “ExactOrPublic” the CRS should only include the requested rate plans in the rate range when available; otherwise it should include public rates in the rate range.
CalculationMethod
0..1
Enum.
Specifies the preferred rate calculation method to use when a rate change occurs across the length of stay. Valid values are: “First” – rate for the first nightly “Highest” – highest nightly rate “Average” – average nightly rate “Frequent” – most frequently occurring rate When this element is not included on the request, the CRS will apply their default method to calculate the rate range.
Commissionable Status
0..1
Enum.
Specifies whether commissionable and/or non-commissionable rate are required. “Commissionable” - the rate range should only include commissionable rates “NonCommissionable” – the rate range should only include non- commissionable rates “Both” – the rate range can include both non-commissionable and commissionable rates.
ReturnUnavailable
0..1
Boolean
If “true”, closed properties will be included in the response. If “false”, closed properties will not be included in the response.
NumberOfAdults
1
Integer
Number or adults per room
NumberOfChildren
0..1
Integer
Number of children per room
NumberOfRooms
1
Integer
Total number of rooms required, which is used when checking availability. Note that the prices in the response will be per room.
HotelML/Form/MultiAvailability/ RateCriteria/AgentInfo
0..1
Identifies the requesting travel agency.
Number
1
Char 8
Travel agent identifier – often the IATA number.
Type
1
Enum.
Identifies the type of travel agent identifier. Values are: “ARC”, “IATA”, “TIDS”, “CLIA”, “AAA”, “GDS”, “Other”.
City
0..1
Char 3
Originating Agent’s City. Not normally required.
Country
0..1
Char 2
Originating Agent’s Country Code (ISO Standard Codes). Not normally required.
HotelML/Form/MultiAvailability/RateCriteria/DateRange
1
InDate
1
Date
The arrival date in format “2011-12-24”
OutDate
1
Date
The departure date in format “2011-12-27”
HotelML/Form/MultiAvailability/ RateCriteria/PriceRange
0..1
Specifies the required maximum and/or minimum rate (per room per night). Rarely used.
Currency
1
Char
ISO currency code – e.g. “USD”
Max
0..1
Decimal
Maximum required daily rate per room - e.g. “150.00”
Min
0..1
Decimal
Minimum required daily rate per room - e.g. “100.00”
CalculationMethod
0..1
Boolean
This attribute is deprecated but is supported for existing customers. The CalculationMethod attribute of RateCriteria should be used instead.
HotelML/Form/MultiAvailability/RateCriteria/RateSearch
0..15
The RateSearch element is used to request one or more specific rate plan codes. This is used in conjunction with RateCriteria/@MatchingQualifier to specify whether the CRS should return the requested rate plans and/or public rates. If this element is not present, the CRS may return any available rate plan codes it wishes to promote.
RatePlanCode
0..1
Char 10
Rate access code. This can be used to request special types of rate, such as specific negotiated or corporate rates. If this functionality is required, the actual RatePlanCode and RatePlanType to send will be provided to the affiliate by the hotel chain or RateGain as part of the UltraDirect implementation project. Also, many hotels recognize the following standard (generic) rate plan codes. These all require RatePlanType=”Standard”. "PRO" = Promotional "COR" = Corporate "WKD" = Weekend "RAC" = Rack "SNR" = Senior "GOV" = Government "MIL" = Military "PKG" = Package “WEB” = Web/Internet “CLB” = Club “FAM” / “FPM” = Family “CVN” or “CNV” = Convention "TVL” = Travel Agent "TUR" = Tour
RatePlanType
0..1
Char
Specifies the type of RatePlanCode. Values are: “Corporate”, “Negotiated”, “NetRate”, “Standard”
HotelML/Form/MultiAvailability/ RateCriteria/RateSearch/AutoInfo
Code
0..1
Char 25
Auto Frequent Traveler Number
HotelML/Form/MultiAvailability/ RateCriteria/RateSearch/CorpInfo
Code
0..1
Char 25
Corporate Account Number. This should only be sent when RateSearch/@RatePlanType=”Corporate”.
HotelML/Form/MultiAvailability/ RateCriteria/RateSearch/FlyerInfo
Code
0..1
Char 25
Frequent Flyer Number
HotelML/Form/MultiAvailability/ RateCriteria/RateSearch/FreqGuest
Code
0..1
Char 25
Frequent Guest Number
Response message format
Element Path
Attribute
Occ
Type
Notes
HotelML/Head
1
This is the standard element containing some transaction metadata and any applicable errors or warnings. For details of this element and all child elements- see Section 0, header (Response Message)
HotelML/Property
0..200
Occurs once for each requested property or once per requested property that is available, depending on the value of RateCriteria/@ReturnUnavailable in the request message.
AvailabilityStatus
1
Property-level status indicator. Valid values are: “Open” - Property has rooms available for the requested rates “Closed” - Property has no rooms available. “Alternate” - Property has rooms available but not for the requested rates. Only applicable when the RateSearch element is included in request. “RatePlanUnavailable” - Property has no rooms available based only on the RatePlanCode included in the request. Other room availability is unknown. Only applicable when RatePlanCode and MatchingQualifier=”Exact” are included in the request message. “Unknown” - Property availability status is unknown.
ClosedReason
0..1
This field is optional and may be used to return an error condition applicable at the property level. It may be used to provide additional information when AvailabilityStatus is “Closed” or “Unknown”. Values are “Unavailable”, “NotFound” and “Restricted”.
Code
1
Char
Chain and property code, separated by a semi-colon – e.g. “UI;AB1234”
HotelML/Property/PriceRange
0..1
Only returned when rates are available at the property
Currency
1
Char 3
ISO currency code for the price range – e.g. “USD”
Min
1
Decimal
Minimum available rate based on the request criteria.
Max
1
Decimal
Maximum available rate based on the request criteria.
CalculationMethod
0..1
Enum.
Specifies how the price range was calculated if rate changes occur across the length of stay. If possible, the CRS will respond based on the method sent in on the request, otherwise the CRS will return the method used. Valid values are: “First” – rate for the first nightly “Highest” – highest nightly rate “Average” – average nightly rate “Frequent” – most frequently occurring rate
Commissionable Status
0..1
Enum.
Specifies whether the rate range includes commissionable and/or non commissionable rates. Valid values are: “Commissionable” – includes commissionable rates only “NonCommissionable” - includes non-commissionable rates only “Both” – includes both non-commissionable and commissionable rates “Unknown” – commissionable status is not known
HotelML/Property/Rate/RatePlan
0..15
This is used to specify the availability status of each requested rate plan code. If no specific rate plan codes where requested then it is not returned.
Code
1
Echoes back the rate plan code in the request
Status
1
The status of the rate plan. Values are: “Open”, “Closed”, “Unknown”
ClosedReason
0..1
Optionally provides addition information if the Status is “Closed” or “Unknown”: “Unavailable” – rate plan code is valid but not available for the specified dates of stay etc. “NotFound” – rate plan code is not found “Restricted” – the requestor does not have access to the rate plan “Unknown” – rate plan status is unknown