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. Enhanced shopping (EST)

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.

xml:lang

0..1

Char

Identifies the language of the response message that was returned by the hotel’s CRS. The language will normally be requested language or English if the requested language was not available. However, if the affiliate is configured to accept response messages with unmatched languages, RateGain will return the response to the affiliate in whichever language the hotel’s CRS has provided

Code

1

Char

Chain and property code, separated by a semi-colon – e.g. “UI;AB1234”

DataOrigin

0..1

Enum.

Indicates whether the response was generated from the UltraDirect transaction cache or the source (CRS). Values are: “Cache” or “Source”. Only returned Head/Route/@RequestedAccuracy is supplied in the request

DataAge

0..1

Date & time

The date and timestamp of the response. If the response was generated from the cache then this is the timestamp of when it was added to the cache). The format is “2011-05-08T14:28:01.268-00:00”. Only returned Head/Route/@RequestedAccuracy is supplied in the request

Token

0..1

Token generated by UltraDirect

HotelML/Property/Rate/RatePlan

0..M

Code

1

Char 10

Rate plan code. Only returned when Status is “Open”. This code should be used for any subsequent transactions for this rate, such as Rate Rules or Booking.

RequestedRatePlanCo de

0..1

Char 10

If the rate plan corresponds to a rate plan in the request message, the requested rate plan code is echoed back in this attribute. For example, if rate plan “COR” was requested and it maps to rate plans “ABC” and “XYZ” in the CRS then one RatePlan may be returned with Code=“ABC” and RequestedRatePlanCode=“COR”, and another returned with Code=“XYZ” and RequestedRatePlanCode=“COR”.

Status

1

Enum.

The status of the rate plan. Values are: “Open” – rate plan is available “Closed” – this is only returned for requested rate plans that are closed “Unknown” – this is returned when the status of the requested rate plan is not known.

ClosedReason

0..1

Enum.

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” – no additional information

Commissionable Status

0..1

Enum.

Specifies whether the rate is commissionable. Values are: “Commissionable”, “NonCommissionable” and “Unknown”

Description

0..1

Char

Rate plan description

ExactMatch

0..1

Boolean

InDate

0..1

Date

Arrival date, in format “2011-07-13”

OutDate

0..1

Date

Departure date in format “2011-07-16”

Indicator

0..1

Enum.

Rate plan type. Values are: BusinessStandard, Consortium, Convention, Corporate, Credential, FreqAuto, FreqGuest, FreqFlyer, Government, IATA, Inclusive, Negotiated, Package, Privileged, PseudoCity, SearchQualifier

MarketingText1

0..1

Char 63

First line of marketing text

MarketingText2

0..1

Char 63

Second line of marketing text

CredentialsRequired

0..1

Boolean

Indicates whether some form of credentials are required at check-in, such as a AAA ID card, Government card or any other form of ID required to book a special rate.

NonRefundableStay

0..1

Boolean

Indicates whether the rate is non-refundable.

HotelML/Property/Rate/RatePlan/Aut oInfo

0..5

Code

1

Char 25

Auto Frequent Traveler Number

HotelML/Property/Rate/RatePlan/Cor pInfo

0..1

Code

1

Char 25

Corporate customer number

HotelML/Property/Rate/RatePlan/Flye rInfo

0..5

Code

1

Char 25

Frequent Flyer Number

HotelML/Property/Rate/RatePlan/FreqGuest

0..1

Code

1

Char 25

Frequent Guest Number

HotelML/Property/Rate/RatePlan/Roo mType

0..M

Some hotel chains return multiple RatePlan elements, each containing multiple RoomType elements. Other CRSs return multiple RatePlan elements each containing only a single RoomType element – i.e. the RatePlan is repeated for each combination of rate plan and room type.

BookableRate

0..1

Decimal

The rate at which the room type may be booked

CalculationMethod

0..1

Specified how the BookableRate is calculated. It is only returned if a specific calculation method was requested, The method in the response should be the same as in the request but some CRSs may ignore the requested method. If the CRS does not specify the calculation method, this attribute will be omitted. Valid values are: “First” – rate for the first night “Highest” – highest nightly rate “Average” – average nightly rate “Frequent” – most frequently occurring rate

Code

1

Char 10

Room type code

StandardRoomType

0..1

Char 4

Marriott Only – HRS Room Type Code

CorpInfoRequired

0..1

Boolean

Denotes if a corporate id is required to book the room at the indicated rate.

ExclusiveRateToVend or

0..1

Boolean

Denotes if the rate is exclusively available to a vendor.

Indicator

0..1

Enum.

Denotes the type of rate. "Privileged", "Corporate", "FreqGuest", "FreqFlyer", "FreqAuto", "Convention", "Negotiated", "BusinessStandard"

LimitedAvailability

0..1

Boolean

Denotes if the room type has limited availability.

NativeCurrency

0..1

Char 3

The native ISO currency code for the property

NumberOfRooms

0..1

Integer

The number of room types to be allocated

RateChange

0..1

Boolean

Denotes if the rate has changed

RateForMultipleNight s

0..1

Boolean

Denotes if the rate is only available for multiple nights

RateFrequency

0..1

Enum.

Denotes the frequency of the rate. "Daily", "Nightly", "Weekly", "Monthly", "PerStay", "Weekend"

RateOnRequest

0..1

Boolean

Denotes if the rate is only available on request.

RoomDescription

0..1

Char

Textual description of the room.

RoomRateText

0..1

Char

Textual description of the room rate.

TotalRate

0..1

Decimal

The total rate for the room, including fees but excluding taxes

TotalRateInclusive

0..1

Decimal

The sum of nightly rates and taxes for the stay. Mutually exclusive with TotalRateInclusiveCharges.

TotalRateInclusiveCha rges

0..1

Decimal

Total room rate inclusive of all known taxes, fees and any extra charges. Only returned when transaction version is “Enhanced_V1”.

TotalTaxes

0..1

Decimal

Total tax amount.

TotalSurcharges

0..1

Decimal

Total Surcharges.

TaxQualifier

0..1

Enum.

Used to classify the bookable room rate. "AllInclusive", "NonInclusive", "Unknown"

RoomCategory

0..1

Enum.

Indicates the quality of room. The following values are most commonly used: Deluxe, Superior, Standard, Moderate, Economy, Premium The attribute also supports the following values but these are generally not used in this context: FirstClass, Budget, Upscale, Luxury, MeetingConvention, ResidentialApartment, Resort, CorporateBusinessTransient, AllSuite, ExtendedStay, Tourist, Efficiency

NumberOfBeds

0..1

Integer

The number of beds per room.

BedType

0..1

Enum.

Indicates the type of bed. Values: Single, Twin, Double, King, Queen, Futon, MurphyBed, SofaBed, TatamiMats, Rollaway, Crib

NumberOfPayingGues tsPerRoom

0..1

Integer

Indicates the number of guests per room that are included in the price.

NumberOfChildren

0..1

Integer

Number of guests that are classed as children by the hotel for pricing purposes (e.g. depending on their age).

RateCategoryMatchType

0..1

Enum.

Values: “Requested” – this rate is for the requested category “Alternative” – this rate is not for the requested category

RoomCountMatchType

0..1

Enum.

Values: “Available” – the number of rooms requested are available “Unavailable” – the number of rooms requested are not available “ExceedsMaximum” – the number of requested rooms exceeded the maximum allowed

AdultCountMatchType

0..1

Enum.

Values: “Allowed” – the number of adults requested are allowed for the number of bedding types/rooms “NotAllowed” – the number of adults requested are not allowed for the number of bedding types/rooms

ChildCountMatchType

0..1

Enum.

Values: “Allowed” - the number of adults requested are allowed for the number of bedding types/rooms “NotAllowed” – the number of adults requested are not allowed for the number of bedding types/rooms

BedMatchType

0..1

Enum.

Values: “Requested” – the number and type of beds requested are available “Alternative” – a substitute has been offered for the requested number and type of beds “Unknown” – the number and type of beds for this room is unknown

AdultRollawayMatchType

0..1

Enum.

Values: “Available” – the number of adult rollaways requested are available and included in the nightly rate “Unavailable” – the number of adult rollaways requested are not available “Unknown” – the number or availability of adult rollaways is unknown

ChildRollawayMatchType

0..1

Enum.

Values: “Available” – the number of child rollaways requested are available and included in the nightly rate “Unavailable” – the number of child rollaways requested are not available “Unknown” – the number or availability of child rollaways is unknown

CribMatchType

0..1

Enum.

Values: “Available” – the number of child rollaways requested are available and included in the nightly rate “Unavailable” – the number of child rollaways requested are not available “Unknown” – the number or availability of child rollaways is unknown

Property/Rate/RatePlan/RoomType/CommissionPolicy

0..1

Amount

0..1

Decimal

Commission payable expressed as a currency amount

Percentage

0..1

Decimal

Commission payable expressed as a percentage of the booking value

Property/Rate/RatePlan/RoomType/GuaranteePolicy

0..1

AcceptedCreditCard

0..1

Char

List of credit card codes accepted for guarantee

Required

0..1

Boolean

Specifies whether a guarantee is required

HoldTime

0..1

Time

The time (on day of arrival) that the room will be held.

Property/Rate/RatePlan/RoomType/GuaranteePolicy/GuaranteeMethod

0..M

This element can occur once for each acceptable guarantee method.

Code

1

Integer

Identifies the method accepted for guarantee. Values are from the OpenTravel Alliance (OTA) PMT Code List. For example, credit card is defined as Code="5".

Property/Rate/RatePlan/RoomType/DepositPolicy

0..1

AcceptedCreditCard

0..1

Char

List of credit card codes accepted for deposit

Time

0..1

Time

The time the deposit is required.

Date

0..1

Date

The latest date that a deposit must be made. It can be used in conjunction with the existing Time attribute. If the Time attribute is specified without a Date then the day of arrival is assumed.

TimeInterval

0..1

Used with IntervalUnits and optionally IntervalOffsetType to specify the number of days/weeks prior to arrival (or after booking) that the deposit is required.

IntervalUnits

0..1

Enum

Specifies the type of TimeInterval. Values are “Hours”, “Days”, “Weeks”, “Months”

IntervalOffsetType

0..1

Enum.

Indicates whether the time interval (defined by the existing TimeInterval and IntervalUnits attribute) relates to the interval after the booking is made or before arrival (e.g. deposit is required X days after the booking was made or X days prior to arrival). Values are: “BeforeArrival” and “AfterBooking”

Amount

0..1

Decimal

The deposit amount that is required by the deadline

Required

0..1

Boolean

Indicates whether a deposit is required.

Property/Rate/RatePlan/RoomType/DepositPolicy/GuaranteeMethod

0..1

This element can occur once for each acceptable deposit method.

Code

0..1

Integer

Identifies the method accepted for deposits. Values are from the OpenTravel Alliance (OTA) PMT Code List. For example, credit card is defined as Code="5" or "5.PMT”.

Property/Rate/RatePlan/RoomType/Pr ePayPolicy

0..1

Time

0..1

Time

The time the prepayment is required.

Date

0..1

Date

The date by when the prepayment must be made. Can be used in conjunction with the existing Time attribute

TimeInterval

0..1

Used with IntervalUnits and optionally IntervalOffsetType to specify the number of days/weeks prior to arrival (or after booking) that the prepayment is required.

IntervalUnits

0..1

Enum

Specifies the type of TimeInterval. Values are “Hours”, “Days”, “Weeks”, “Months”

IntervalOffsetType

0..1

Enum.

Indicates whether the time interval (defined by the existing TimeInterval and IntervalUnits attributes) relates to the interval after the booking is made or before arrival (e.g. prepayment must be made X days after it was made or X days prior to arrival) Values are: “BeforeArrival” and “AfterBooking”

Amount

0..1

Decimal

The prepayment amount that is required by the deadline

Required

0..1

Boolean

Indicates whether prepayment is required.

Property/Rate/RatePlan/RoomType/Pr ePayPolicy/GuaranteeMethod

0..M

This element can occur once for each acceptable deposit method

Code

0..1

Integer

Identifies the method accepted for deposits. Values are from the OpenTravel Alliance (OTA) PMT Code List. For example, credit card is defined as Code="5" or "5.PMT

Property/Rate/RatePlan/RoomType/Ca ncelPolicy

0..1

Description

0..1

Char

Cancel policy description – max 2 lines of 64 characters

Time

0..1

Time

The latest time that the reservation can be cancelled without incurring a penalty. This is normally on the day of arrival but can be on a specific date (if the Date attribute is also returned)

Date

0..1

Date

The latest date that the booking can be cancelled in order to avoid any penalties. Can be used in conjunction with the existing Time attribute. If the Time is attribute is specified without a Date then the day of arrival is assumed.

TimeInterval

0..1

Used with IntervalUnits and optionally IntervalOffsetType to specify the number of days/weeks prior to arrival (or after booking) that it can be cancelled without penalty.

IntervalUnits

0..1

Enum

Specifies the type of TimeInterval. Values are “Hours”, “Days”, “Weeks”, “Months”

IntervalOffsetType

0..1

Enum.

Indicates whether the time interval (defined by the existing TimeInterval and IntervalUnits attributes) relates to the interval after the booking is made or before arrival (e.g. booking can be cancelled X days after it was made or X days prior to arrival). Values are: “BeforeArrival” and “AfterBooking”

PenaltyAmount

0..1

Decimal

The cancellation penalty expressed as a monetary amount.

PenaltyAmountTaxIndicator

0..1

Enum.

Indicates whether the penalty amount includes or excludes taxes. Values are: “Inclusive”, “Exclusive” and “Unknown”.

PenaltyAmountFeeIndicator

0..1

Enum.

Indicates whether the penalty amount includes or excludes fees. Values are: “Inclusive”, “Exclusive” and “Unknown”.

PenaltyNights

0..1

Integer

This attribute can be used on its own to indicate the number of nights that will be charged if the reservation is cancelled in the penalty period (e.g. PenaltyNights="1" indicates that 1 night will be charged). It can also be grouped together with the PenaltyPercentage and PercentageQualifier attributes if the cancel penalty is expressed as a percentage applied to a given number of nights (e.g. if the cancel penalty is 5% of 2 nights then PenaltyNights="2" and PenaltyPercentage="5.00" and PercentageQualifier="Nights").

PenaltyPercentage

0..1

Decimal

The cancellation penalty expressed as a percentage. The associated PenaltyNights and PercentageQualifier indicate what this is a percentage of.

PercentageQualifier

0..1

Enum.

The qualifier indicates how the percentage is applied when determining the cancel penalty (e.g. if the cancel penalty is 30% of the first and last night’s stay then PenaltyPercentage="30.00" and PercentageQualifier= "FirstLast"). They can also be grouped together with the PenaltyNights if the cancel penalty is expressed as a percentage applied to a given number of nights (e.g. if the cancel penalty is 5% of 2 nights then PenaltyNights="2" and PenaltyPercentage="5.00" and PercentageQualifier="Nights"). Values are: “FullStay”, “FirstLast”, “Nights”

HotelML/Property/Rate/RatePlan/Roo mType/Amenity

This can repeat up to 6 times for amenities/services.

Code

1

Char 6

Amenity code

Confirmable

0..1

Boolean

Indicates whether the amenity/service is confirmable

ExtraCharge

0..1

Boolean

Indicates whether there is an extra charge for the amenity/service

OnRequest

0..1

Boolean

Indicates whether the amenity/service is on-request

Room

0..1

Boolean

Indicates this is a room-level amenity

Property

0..1

Boolean

Indicates this is a property-level amenity

Property/Rate/RatePlan/RoomType/Ra teChange

1..10

This can be returned if the nightly rate changes during the stay.

Charge

1

Decimal

The room rate

CurrencyCode

0..1

Char 3

Currency code of the room rate – will be in the same currency as the bookable room rate (i.e. RoomType/@NativeCurrency)

Frequency

0..1

Enum.

Denotes the frequency of the rate. Will be the same be the same frequency as the bookable rate (i.e. RoomType/@RateFrequency) –normally “Nightly”. Values are "Daily", "Nightly", "Weekly", "Monthly", "PerStay", "Weekend"

Date

1

Date

The start of the date range for which the rate applies.

Property/Rate/RatePlan/RoomType/Ex traPerson

1..2

Type

1

Enum.

Values “Adult” and “Child”

Charge

1

Decimal

Charge for the extra adult or child

Property/Rate/RatePlan/RoomType/ExtraBed

1..3

Type

1

Enum.

Values “ChildRollAway”, “AdultRollAway”, “Crib”.

Charge

1

Decimal

Charge for the rollaway/crib.

PreviousRequest message formatNextRate and availability transactions

Last updated 2 months ago