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