Developer Docs
  • Our Products
    • Channel Manager
      • Integration and Onboarding Flow
      • RG Bridge - Supply (Push)
        • Integration Overview
          • Vision of Integration
            • Commercial value and business case
          • Information Data flow
            • One way integration
            • Two Way integration – ARI Broadcast and Reservation fetch
            • Information delivery mechanism
          • Technical feasibility of integration
            • Test property setup
            • Sample reservation data
          • RG Bridge Setup
          • Contract
          • Project Plan
          • Certification
          • Monitoring and after sales support
          • Integration checklist
        • Interface Specifications – Availability and Rates Notification Service
          • RG Bridge Integration Process
          • Intended Audience
          • Typographical Conventions
          • Technical Overview
          • Operations
            • Availability Notification
              • OTA_HotelAvailNotifRQ
                • Change in Inventory count
                • Change in availability status and Restrictions
              • OTA_HotelAvailNotifRS
              • XML Usage Specification
            • Rate Change Notification
              • OTA_HotelRateAmountNotifRQ
              • XML Usage Description
              • OTA_HotelRateAmountNotifRS
              • XML Usage Specification
            • Points to remember
        • Interface Specifications – Reservation Notification Service
          • RG Bridge integration process
          • Intended audience
          • Typographical conventions
          • Technical overview
          • Operations
            • Reservation Notification
              • OTA_HotelResNotifRQ
              • XML Usage specification
              • Sample Reservation Messages
              • OTA_HotelResNotifRS
              • XML Usage specification
          • Points to remember
          • Code Lists
      • RG Bridge - Reservation Retrieval (Pull)
        • Technical overview
        • Operations
          • Reservation Retrieval
            • OTA_ReadRQ
            • XML Usage specification
            • OTA_ResRetrieveRS
            • XML Usage specification
          • Reservation Confirmation
            • OTA_NotifReportRQ
            • XML Usage specification
            • OTA_NotifReportRS
            • XML Usage specification
        • Code Lists
      • Direct Connect - Demand (Push)
        • Introduction
        • Interface Specifications – ARI Service
          • Technical Overview
          • Operation: Property List
            • HotelPropertyListGetRQ
            • HotelPropertyListGetRS
            • Test Use Cases
            • FAQ
          • Operation: Product List
            • HotelProductListGetRQ
            • HotelProductListGetRS
            • Test Use Cases
            • FAQ
          • Operation: ARI Get
            • HotelARIGetRQ
            • HotelARIGetRS
            • Test Use Cases
            • FAQ
          • Operation: ARI Update
            • HotelARIUpdateRQ
            • HotelARIUpdateRS
            • Test Use Cases
            • FAQ
          • Points to remember
          • Code Lists
        • Interface Specifications – Reservation Notification Service
          • Technical overview
            • Communication protocols
            • General design
            • Authentication
          • Operation: Reservation
            • OTA_HotelResNotifRQ
            • OTA_HotelResNotifRS
            • Test use cases
            • FAQ
    • Smart Distribution
      • Onboarding process
      • Certification - Demand
      • Authentication Method
      • Book and Cancel Reservation
        • Transaction Header Formats
        • Book API
          • Book Reservation
          • Cancel Reservation
          • Booking Reservation Request Message Format
          • Booking Reservation Response Message Format
          • Cancel Reservation Request Message Format
      • Multiavailability (Enhanced Shopping Transaction)
        • Transaction Header Formats
        • Enhanced Shopping (EST) – Detailed Rate Information
          • Requesting Specific Rates
          • UltraDirect Account Author Negotiated Rate Processing
          • Unavailable Properties
          • UltraDirect Cache Processing
          • Enhanced Shopping Transaction Request Header Format
          • Enhanced Shopping Transaction Response Message Format
      • Pre-Book
        • Transaction Header Formats
        • Pre Book API
          • Pre-Book Request message format
          • Pre-Book Response message format
      • Property list and Booking Summary
        • PropertyList API
        • Booking Summary API
  • Content
    • Integration Process
    • Certification - Demand
    • Content Retrieve
      • SOAP/HTTP
        • SOAP Envelop
        • SOAP Body
        • Date and Time
        • Specifications for Currency Amounts
      • Transaction Specifications
      • Content Retrieval Request
      • Content Retrieval Response
    • Content Update
      • Overview
      • Transaction List
      • Transaction Flow
      • Batch processing
        • File naming convention
      • Multi-lingual capabilities
      • Associating media to textual content
      • Managing images
      • GDS content updates
      • Office of Foreign Assets Control (OFAC)
      • Interface requirements
        • SOAP envelope
        • Standard element formats
      • Transaction specifications
        • Data mapping of elements
        • Area Information
        • Affiliation information
        • Media information
        • Contact information
        • TPA extensions
        • GDS information
        • Response message
      • Codes lists
        • Credit Card
        • Error and Warning codes
        • Spoken Language
        • State and Country
      • Supported language codes
      • Client application generation using WSDL tool
  • UltraDirect
    • Integration Process
    • Certification
    • Ultradirect transaction sets - XML
      • Transaction header formats
      • Booking transactions
        • Booking request message format..
        • Request message format - Cancel
        • Request message format - Commit/Rollback
        • Request message format - Modify
        • Response message format - Booking
      • Enhanced shopping (EST)
        • Requesting Specific Rates
        • Request message format
        • Response message format.
      • Rate and availability transactions
        • Standard multi-availability
          • Request & Response message format
      • Rate Rules
        • Request message format
        • Response message format
      • Reference data transactions
        • Request message format..
        • Response message format..
      • Single property availability
        • Request message format
        • Response message format
    • XML ultradirect specifications
      • Overview
        • Transaction list
      • Interface requirements
      • Transaction meta data
    • Error Codes..
    • UltraDirect Transaction Samples and Usage
      • Using UltraDirect (Seamless, a real-time transaction)
      • EST (Enhanced Shopping Transaction)
      • Rate Rules
      • Book Reservation
      • Cancellation
      • Book Reservation with session control
      • Modification
      • Booking Storage and Retrieval
      • List of Test Credit Cards
      • Test properties in UAT
      • Guarantee Type and Method Combinations
    • xml ultradirect codes
  • Get in Touch
    • Questions?
Powered by GitBook
On this page
  1. UltraDirect
  2. Ultradirect transaction sets - XML
  3. Rate and availability transactions

Standard multi-availability

Returns min/max rates - Summary and examples

The standard MultiAvailability transaction checks availability and returns the minimum and maximum available rates for a set of properties for a particular stay (arrival/departure dates, number of guests etc).

The RateSearch element is used to request availability for specific rate plans. Normally only standard publicly available rates will be requested if RateSearch is omitted. The following requests promotional rates, using the standard rate plan “PRO” and also a corporate rate “PEG” with corporate customer number “654321”.

<MultiAvailability>
<Property xml:lang="en" Code="UI;17032"/>
<Property xml:lang="en" Code="UI;41130"/>
<Property xml:lang="en" Code="UI;04939"/>
<RateCriteria MatchingQualifier="ExactOrPublic" NumberOfAdults="2" NumberOfChildren="1" NumberOfRooms="1">
<DateRange InDate="2011-07-01" OutDate="2011-07-04"/>
<RateSearch RatePlanCode="PRO" RatePlanType="Standard"/>
<RateSearch RatePlanCode="PEG" RatePlanType="Corporate" RatePlanID="654321"/>
</RateCriteria>
</MultiAvailability>

The MatchingQualifier attribute specifies whether the rate range and overall property availability should just relate to the requested rate plans (value “Exact”); or whether it should also include public rates if the requested rate is not available (“ExactOrPublic”); or whether it should include both the requested rates and public rates (“ExactAndPublic”). The response will indicate the availability status of each requested rate plan:

<Property xml:lang="en" AvailabilityStatus="Open" Code="UI;04939">
<PriceRange Currency="GBP" CalculationMethod="First" CommissionableStatus="Unknown" Max="59.00" Min="89.00"/>
<Rate>
<RatePlan RequestedRatePlanCode="PRO" Status="Open"/>
<RatePlan RequestedRatePlanCode="PEG" Status="Closed" ClosedReason="Unavailable"/>
</Rate>
</Property>

It is also possible to specify how the rate range in the response should be calculated if there are rate changes - e.g. average, highest, first night or most frequent.

<RateCriteria MatchingQualifier="ExactOrPublic" CalculationMethod="Average" NumberOfAdults="2" NumberOfChildren="1" NumberOfRooms="1"/>

The response should indicate how the price range was calculated using the PriceRange/@CalculationMethod attribute in the response. This should be the same as the requested calculation method, but it may not be, depending on the capabilities of the hotel’s CRS. An example response is below:

<Property xml:lang="en" AvailabilityStatus="Open" Code="UI;04939">
<PriceRange Currency="GBP" CalculationMethod="First" CommissionableStatus="Unknown" Max="59.00" Min="89.00"/>
</Property>

Although not commonly used, it is also possible to supply the required rate range in the request message – this can be the maximum rate, minimum rate or both. If supplied, the hotel’s CRS should only check availability for rates within this range. The following example is requesting availability for rates between €100 and €300 per night:

<RateCriteria MatchingQualifier="ExactOrPublic" CalaculationMethod="Average" NumberOfAdults="2" NumberOfChildren="1" NumberOfRooms="1">
<DateRange InDate="2011-07-01" OutDate="2011-07-04"/>
<PriceRange Min="100.00" Max="300.00" Currency="EUR"/>
</RateCriteria>

Simple Example

The following request includes the minimum request parameters (property codes, guest counts, number of rooms and dates of stay). In this example, only 3 properties are requested (up to 200 are supported).

<HotelML xmlns="
http://www.xpegs.com/v2001Q3/HotelML
">
<Head>
<Process DataPath="/HotelML/Form/MultiAvailability" Function="TI_MultiAvailabilityV1_1"  Token="1306337276803"/>
<Route Destination="00" Source="01"/>
</Head>
<Form>
<MultiAvailability>
<Property xml:lang="en" Code="UI;17032"/>
<Property xml:lang="en" Code="UI;41130"/>
<Property xml:lang="en" Code="UI;04939"/>
<RateCriteria NumberOfAdults="2" NumberOfChildren="1" NumberOfRooms="1">
<DateRange InDate="2011-07-01" OutDate="2011-07-04"/>
</RateCriteria>
</MultiAvailability>
</Form>
</HotelML>

The corresponding response is shown below. Notice that two of the properties are available (with a rate range returned) but one is closed.

<HotelML xmlns="
http://www.xpegs.com/v2001Q3/HotelML
">
<Head>
<Route Destination="01" Source="00">
<Operation Action="Create" App="TIDispatcher" AppVer="1.12.40.2.8.1" DataPath="/HotelML" StartTime="2011-05-
25T16:02:05.482+00:00" Success="true" TotalProcessTime="177"/>
</Route>
</Head>
<Property xml:lang="en" AvailabilityStatus="Open" Code="UI;04939">
<PriceRange Currency="GBP" CalculationMethod="First" CommissionableStatus="Unknown" Max="156.00" Min="59.00"/>
</Property>
<Property xml:lang="en" AvailabilityStatus="Open" Code="UI;17032">
<PriceRange Currency="GBP" CalculationMethod="First" CommissionableStatus="Unknown" Max="69.00" Min="69.00"/>
</Property>
<Property xml:lang="en" AvailabilityStatus="Closed" ClosedReason="Unknown" Code="UI;41130"/>
</HotelML>

Example of Requesting Specific Rate Plans:

The following is an example where a specific rate type is requested (“PRO”):
<HotelML xmlns="
http://www.xpegs.com/v2001Q3/HotelML
">
<Head>
<Process DataPath="/HotelML/Form/MultiAvailability"
Function="TI_MultiAvailabilityV1_1" Token="1306337276803"/>
<Route Destination="00" Source="01"/>
</Head>
<Form>
<MultiAvailability>
<Property xml:lang="en" Code="UI;17032"/>
<Property xml:lang="en" Code="UI;41130"/>
<Property xml:lang="en" Code="UI;04939"/>
<RateCriteria MatchingQualifier="ExactOrPublic" NumberOfAdults="2" NumberOfChildren="1" NumberOfRooms="1">
<DateRange InDate="2011-07-01" OutDate="2011-07-04"/>
<RateSearch RatePlanCode="PRO" RatePlanType="Standard"/>
</RateCriteria>
</MultiAvailability>
</Form>
</HotelML>

The corresponding response message is shown below. The following should be noted:

  • Property UI;04939 is available, as well as the requested rate plan. The rate range will be for the requested rate plan only.

  • For property UI;17032, the requested rate plan is unavailable but there are other rates available (AvailabilityStatus=”Alternate”). Note that the request message had MatchingQualifier=”ExactOrPublic” which means that the public rates should be returned only if the requested rate plan is unavailable. The rate range is therefore for the public rates.

  • Property UI;41130 has no availability matching the request criteria.

<HotelML xmlns="
http://www.xpegs.com/v2001Q3/HotelML
">
<Head>
<Route Destination="01" Source="00">
<Operation Action="Create" App="TIDispatcher" AppVer="1.12.40.2.8.1"
DataPath="/HotelML" StartTime="2011-05- 25T16:07:54.059+00:00" Success="true" TotalProcessTime="199"/>
</Route>
</Head>
<Property xml:lang="en" AvailabilityStatus="Open" Code="UI;04939">
<PriceRange Currency="GBP" CalculationMethod="First" CommissionableStatus="Unknown"
Max="59.00" Min="59.00"/>
<Rate>
<RatePlan RequestedRatePlanCode="PRO" Status="Open"/>
</Rate>
</Property>
<Property xml:lang="en" AvailabilityStatus="Alternate" ClosedReason="Unknown"
Code="UI;17032">
<PriceRange Currency="GBP" CalculationMethod="First" CommissionableStatus="Unknown"
Max="69.00" Min="69.00"/>
<Rate>
<RatePlan ClosedReason="Unavailable" RequestedRatePlanCode="PRO" Status="Closed"/>
</Rate>
</Property>
<Property xml:lang="en" AvailabilityStatus="Closed" ClosedReason="Unknown" Code="UI;41130">
<Rate>
<RatePlan ClosedReason="Unavailable" RequestedRatePlanCode="PRO" Status="Closed"/>
</Rate>
</Property>
</HotelML>

PreviousRate and availability transactionsNextRequest & Response message format

Last updated 2 months ago