GenHTNG - Rate Plan Notification Messages

Overview

The Hotel Rate Plan Notification message is used to notify the CRS of a new rate plan created for a hotel or to modify and synchronize existing rate plans between the PMS and CRS.

When a hotel creates a new rate, whether that hotel is new or has been in operation for some period of time, the synchronization of rate plans can be a complicated process. A translation table may be required to identify the rate plan in one system with the same rate plan that is stored in another system.

With the creation of a new rate plan, a business process must also take place to ensure that the rate plan is populated up through the distribution system. New rate plans and group blocks are broadcast through authorized channels of distribution determined by negotiated business agreements. Viewership is usually set up when a new rate plan code is negotiated and it defines the distribution channel for the rate plan and the profile of the authorized booker(s). The distribution channels are indicated by a collection of System Codes.

When a hotel system sends out a status message to notify systems of the availability of a hotel, the StatusApplicationControl uses the rate plan codes that have been established by the Hotel Rate Plan Notification to determine which rate plans are available.

The <OTA_HotelRatePlanNotifRS> returns a response to the Hotel Rate Plan Notification request message, indicating that the notification message was successfully processed and warnings from business processing rules or errors if the notification was not able to be processed.

Supported Operations

  • The PMS uses the Rate Plan Notification message to the CRS to:
    • Announce a new rate plan
    • Update an active rate plan
    • Deactivate a rate plan that is no longer in effect

  • The CRS uses the Rate Plan Notification message to the PMS to:
    • Announce a new rate plan - (See business rules for more info)
    • Update an active rate plan
    • Deactivate a rate plan is no longer in effect

Business Rules

  • The guarantee policy detail is not supported in version 100. Instead, the GuaranteeCode is used to identify an existing policy that has been already setup in the CRS.

  • The cancel policy detail is not supported in version 1.00. Instead, the CancelPenalty. PolicyCode is used to identify an existing policy that has been already setup in the CRS.

  • For CRS to PMS, @RatePlanNotifType will always =”Overlay” if hotel chooses to send rate Header w/Detail or from Rate Management Rate Code set up in Windsurfer admin. In this case, CRS does not know if the rate plan pre-exists in PMS or not. Best Practice is to always accept Overlay and if rate does not exist in PMS then create rate from Overlay message.

  • For PMS to CRS - if @RatePlanNotifType=”Overlay” and rate does not yet exist in CRS, it will be created from this message.

  • For PMS to CRS, after initial rate create, it is prefered any changes to rate values come via HotelRateAmountNotif to avoid overriding any rate header details a hotelier may have input directly in the CRS.

OTA_HotelRatePlanNotifRQ Elements & Attributes

Element | @Attribute

Num

Description/Contents

Origin | Value

OTA_HotelRatePlanNotifRQ

 1  

Root element of the message.  

   

@EchoToken  

 0..1  

Optional

 

@TimeStamp  

 1  

Time of the transaction.  

   

@Version  

 1  

Version is a mandatory attribute in OTA; therefore, it must remain Mandatory in HTNG to be able to use the same
message.

 

@MessageContentCode  

 1  

The attribute refers to OTA code list MCC which includes Rate, Package, Group.

   

OTA_HotelRatePlanNotifRQ / RatePlans

 1  

Element grouping the rate plans to be transferred.

   

@HotelCode  

 1  

This is the code of the property whose rate plans are being updated.

   

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan  

 1..n  

Element defining rate plan being sent. Upper limit to be agreed by trading partners.  

 

@RatePlanCode  

 1  

This is the rate plan which is being uploaded/downloaded.  

 

@RatePlanCategory  

 0..1  

This is the segment/category to which the rate being uploaded/downloaded belongs. Only one RatePlanCategory is acceptable for RatePlan code; therefore, the RatePlanCategory must be the same for all seasons passed.  

 

@ RatePlanStatusType  

 0..1  

The status of the rate plan – Initial, Active, Deactivated.  

 

@BaseRatePlanCode  

 0..1  

The rate plan this rate plan is derived from. Used for Character Strings, length1 to 64.  

 

@AdjustedAmount  

 0..1  

The amount which should be added to the base rate plan to determine the price of this derived rate plan. Specifies an amount, max 3 decimals.  

 

@AdjustedPercentage  

 0..1  

The percentage off the base rate plan amount used to determine the price of this derived rate plan. Used for percentage values.  

 

@AdjustUpIndicator  

 0..1  

When true, the adjusted amount or adjusted percentage is added to the amount specified for the base rate plan to determine the derived rate amount. When false, the adjusted amount or adjusted percentage is subtracted from the amount specified for the base rate plan to determine the derived rate amount.  

 

@ExtraNightRatePlancode  

 0..1  

Used to indicate what rate plan is used for shoulder night(s) booked in addition to the base nights. Used for Character Strings, length 1 to 64.  

 

@YieldDeltaAmount  

 0..1  

Numeric attribute indicating the amount to be added or subtracted to the rate to determine the real “yieldable” value of the rate.  

 

@YieldableIndicator  

 0..1  

Used to indicate the rate plan is subject to yield management logic. When true, the rate plan is yieldable. When false, the rate plan is not yieldable.  

 

@MarketCode  

 0..1  

String attribute to indicate the market code for the rate. Only one MarketCode is acceptable for RatePlan code; therefore, the MarketCode must be the same for all seasons passed  

 

@RestrictedDisplayIndicator  

 0..1  

This attribute is a boolean to indicate if the rate is to be considered “Confidential”. Only one Confidential attribute is acceptable for each RatePlan code; therefore, the attribute must be the same for all seasons passed.  

 

@RatePlanNotifType  

 1  

This enumeration indicates whether the upload/download is meant to overwrite existing data or add to it. Possible enumerations are: New, Delta, Overlay, Remove.  

 In case of CRS to PMS, RatePlanNotifType will always be “Overlay” even in case of sending a new rate code to PMS which may not exist. Best practice if accepting RatePlanNotif from CRS is to look for the rate plan to update, and if not found, create.

For PMS to CRS, rate will be created from “New” or “Overlay” if rate is not found in CRS already existing.

@Start, @End  

 1  

In general, the Start and End attributes used at the RatePlan level should be used as follows: The Start attribute should be equal to the earliest Start attribute at the Rate level, and the End attribute should be equal to the latest End attribute at the Rate level. In other words, the Start and End attributes at the RatePlan level should specify the entire span of dates representing the Rate elements found in the Rates collection. HOWEVER, the same Start and End attribute or Rate Plan level could be used to indicate the actual seasons of the rate if the two systems integrating using this message intend to transfer some of the elements at rate plan level as season-based elements. For instance, if the two systems are both capable of treating the “Commissionable” indicator as a seasonal item rather than an item that applies to the entire rate. If the Start and End attribute at rate plan level are used to indicate each season, the Start and End attribute at rate level WOULD ONLY BE USED in case of DOW variations – if no DOW variation is needed the Start and end attributes at Rate level could be omitted.  

 

@AdjustedPercentage  

 0..1  

The percentage off the base rate plan amount used to determine the price of this derived rate plan. Used for percentage values.  

 

@AdjustUpIndicator  

 0..1  

When true, the adjusted amount or adjusted percentage is added to the amount specified for the base rate plan to determine the derived rate amount. When false, the adjusted amount or adjusted percentage is subtracted from the amount specified for the base rate plan to determine the derived rate amount.  

 

@ExtraNightRatePlancode  

 0..1  

Used to indicate what rate plan is used for shoulder night(s) booked in addition to the base nights. Used for Character Strings, length 1 to 64.  

 

@YieldDeltaAmount  

 0..1  

Numeric attribute indicating the amount to be added or subtracted to the rate to determine the real “yieldable” value of the rate.  

 

@InventoryAllocatedInd

0..1

Boolean attribute to indicate whether the inventory allocated to this rate is taken out of the house inventory. Only
one InvBlock indicator is acceptable for RatePlan code; therefore, the InvBlock indicator must be the same for all seasons passed.

 

 @IsCommissionable  

 0..1 (was 1)

This indicates whether the rate season is commissionable or not. If the Boolean is sent as False, the rate season is not commissionable. If the Boolean is set to “True”, but NO commission is sent in the commission element, then the commission to be applied is the default one for the property. If the Boolean is set to True and a commission is passed in the field then the commission sent is the one applied to the rate season.

 Commissionable, if present 

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / Description

 2  

This element should be repeated twice: one instance for the short description and the other for the long description of the rate that is being uploaded/downloaded.

   

 @Name  

 1  

This element should be repeated twice: one instance for the short description and the other for the long description of the rate that is being uploaded/downloaded. Its value must be ‘Short Description’ in one instance and ‘Long Description’ in the other.

   

OTA_HotelRatePlanNotifRQ  / RatePlans / RatePlan / Description / Text

 1  

This element inside the Description element described above has the actual text corresponding to the long and short description of the rate being uploaded/downloaded.

   

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / UniqueID

 0..1 (was 1)

   

   

@Type  

 1  

Refers to OTA code list UIT – nr 16 = Reference. This is used to identify each single rate plan message for error reporting purposes.

   

@ID

 1  

ID is a unique incremental number for each rate plan message that identifies that specific message.

Counter for each message that starts at 0 and increments with each new RatePlan element.

** OTA_HotelRatePlanNotifRQ
/ RatePlans / RatePlan /
Commission

 0..1  

   

 Element not mapped  

 @Percent  

 0..1  

This is the amount of commission paid to an agency for booking the rate that is being uploaded/downloaded.

   

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules

 0..1  

Optional. Used to transfer booking rules.

 Element not mapped 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule

 1  

Mandatory if BookingRules is transferred.

   

@MinAdvancedBookingOffset

 0..1  

This is the minimum amount of days prior to arrival that the rate can be booked.

   

@MaxAdvancedBookingOffset

 0..1  

This is the maximum amount of days prior to arrival that the rate can be booked.

   

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / LengthsOfStay

 1  

 SetMinLOS & SetMaxLOS Mandatory.  

   

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / LengthsOfStay / LengthOfStay

 2  

 SetMinLOS & SetMaxLOS Mandatory.  

   

@MinMaxMessageType  =SetMinLOS, @Time @TimeUnit  

 1  

This is the minimum length of stay requirement associated to the rate that is being uploaded/downloaded. See note at the beginning of the document with regards to alternative solution on how to transmit the LOS restrictions.

   

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / DOW_Restrictions / AvailableDaysOfWeek

 0..1  

Element to transfer DOW when stay is possible.

   

@Mon,@Tue,@Weds,@Thur,@Fri,@Sat,@Sunday

 0..1  per day

The day of the week indicators selected are those in which the rate selected are those in which the rate be used to reflect when STAY is possible. Days marked as 0 (boolean) would mean on those days the rate is not available and therefore stay would not be possible. If one DOW indicator is used they must all be used.

   

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / DOW_Restrictions / ArrivalDaysOfWeek

 0..1  

Element to transfer DOW when arrival is possible.

 

@Mon,@Tue,@Weds,@Thur,@Fri,@Sat,@Sunday

 0..1 per day

The day of the week indicators set to 1 are those in which Arrival is allowed. Those set to 0 are the days in which arrival is not allowed.

 

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / Viewerships

 0..n  

   

 

OTA_HotelRatePlanNotifRQ  / RatePlans / RatePlan / BookingRules / BookingRule / Viewerships / Viewership/

 1  

 Path to BookingChannelCodes.  

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / Viewerships / Viewership / BookingChannelsCodes /

 0..1  

   

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / Viewerships / Viewership / BookingChannelsCodes / BookingChannelCode

 0..n  

This would be used to indicate which Channels can view and book the rate. Could be substituted with SystemCode.

 

@Sort

 0..1  

The attribute “sort” can be associated to each code. Must be a string where we can pass C for closed as well as a
selling order.

 

** OTA_HotelRatePlanNotifRQ  / RatePlans / RatePlan / Rates  

 0..1  

Includes all rates loaded for the rate plan.

 

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / Rates / Rate

 1..n  

Upper limit may be agreed upon by partners.

 

@Start, @End  

 0..1  

This set of Start and End attribute represent the start and end of each season which is being transferred with
the rate. HOWEVER, if the Start and End attribute at rate plan level are used to indicate each season, the Start and End attribute at rate level WOULD ONLY BE USED in case of DOW variations – if no DOW variation is needed the Start and end attributes at Rate level could be omitted.

Start Date

End Date

 @CurrencyCode  

 1  

This is the currency associated to the rate that is being uploaded/downloaded – it could be different to the currency loaded for the property.

Currency Code 

@Mon,@Tue,@Weds,@Thur,@Fri,@Sat,@Sun

per day

These DOW indicators are used tospecify to which days the rate passed is applicable. If one is sent, they must
all be sent and rates must be sent for each exception. If there is an exception to the pricing DOW indicators must be passed and the Rate element is then repeated for the exception days. Exceptions to the pricing are only allowed if no stay or arrival restrictions have been applied.

 

@InvTypeCode  

 1  

This is the room type for which the rates are transferred. For each room type a new instance of the Rate element must be passed. If the room type is transmitted with rate values attached it will be considered opened at the price indicated. If the room type is passed with a 0 value it will be considered closed for that rate plan (i.e., not applicable for the rate plan). If in a modification message a room type that was previously loaded is Not sent, then it remains
unchanged.

Room Type  

@Status

 0..1  

This is used to indicate for each room code passed for the rate whether it is opened or closed. Default value to be
agreed by partners.

Not mapped 

@RateTimeUnit, @UnitMultiplier

 0..1  

If NOT sent the default assumed is always 1 day (i.e., the rate is based on a nightly rate). Rate Time unit is an Enumeration of time units upon which the RateAmount is based (e.g., daily, weekly, single rate for full stay). UnitMultiplier is the number of RateTimeUnits that the rate Amount is based upon (e.g., rate for one day in case of nightly rates).

Not mapped 

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / Rates / Rate / BaseByGuestAmnts / BaseByGuestAmt  

 1..n  

At least one instance for NumberOfGuest=1 is mandatory for the RatePlanNotifType = New or Overlay. For the RatePlanNotifType of Delta or Remove it is optional

   

@NumberOfGuests

 1  

The NumberOfGuest Attribute indicates what type of rate is being passed – if NumberOfGuests is = 1 then we are transmitting a single rate, if higher than 1 then it is a double or full occupancy rate.

   

@AmountBeforeTax or @AmountAfterTax

 1  

Either @AmountBeforeTax or AmountAfterTax is Mandatory for each @NumberOfGuests. Partners must select whether to send either the @AmountBeforeTax or @AmountAfterTax (or both) attributes.

   

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount

0..n

Used to transfer extra adult and extra child information.

 

@AgeQualifyingCode  

 0..1  

@AgeQualifyingCode - 8 = child, 10 =  adult.  

 

@Percent OR @Amount

 0..1  

This is the percentage of the single rate that represents the child rate. Could also be expressed as fixed amount.

 

** OTA_HotelRatePlanNotifRQ  / RatePlans / RatePlan /
RatePlanLevelFee

 0..1  

Linked to Total Pricing – used to pass all Tax and fees info.

 Not mapped

** OTA_HotelRatePlanNotifRQ
/ RatePlans / RatePlan /
RatePlanLevelFee / Fee

 1..n  

Repeatable once per fee.  

 

@Type

 0..1 per Fee

An enumeration to indicate whether the fee is inclusive, exclusive, or cumulative.

 

@Code  

 0..1 per Fee

The Code attribute refers to the OTA FeeTaxType code list and is used to indicate what fee is being transferred. Code used will be:

3 – City tax
8 – Lodging tax
10 – Occupancy
14 – Service charge
15 – State tax
16 – Surcharge
17– Total Tax
19 – VAT/GST Tax
27 – Miscellaneous

A request has been made to OTA for the MPT list to be accessible from the same attribute so that meal plan info can also be passed in the same field.

 

@Amount OR @Percent  

 1 per Fee

Either @Amount or @Percent is Mandatory.

 

@Charge Unit  

 0..1  

Charge Unit is used to indicate the unit of measure of the fee/tax passed. Based on the OTACharge Type code
list, some examples are:

18 - Per room per stay
19 - Per room per night
20 - Per person per stay

Per person per night

 

@CurrencyCode

0..1

 

 

@MandatoryIndicator  

 0..1  

MandatoryIndicator is a boolean Attribute. This will indicate if the fee or meal plan passed is Mandatory or not and will help in the determination of the calculation for total pricing.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / RatePlanLevelFee / Fee /

 0..1  

Linked to Total Pricing – used to pass all tax and fees info. For fees and tax that are not OTA coded, Description/Text will be used to indicate the fee that is being passed. Only one description allowed for each fee element.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / RatePlanLevelFee / Fee / Description / Text

 1  

 Description of the fee.  

 

  

 

 

 

  

 

 

 

  

 

 

 

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / CancelPenalties /

 0..1  

Used to transfer the Cancellation penalty for the rate plan transferred.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / CancelPenalties / CancelPenalty

 0..1  

   

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / CancelPenalties / CancelPenalty / Deadline

 0..1  

   

 

@AbsoluteDeadline  

 0..1  

This is used to indicate the “exact date” or “exact date and time” by which a reservation made for the rate passed needs to be cancelled in order to avoid penalties.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / CancelPenalties / CancelPenalty / Deadline

   

This is used to indicate the “number of days or hours”, “before arrival”, or “after booking” by which a reservation made for the rate passed needs to be cancelled to avoid penalties.

The following three attributes are used to indicate the “number of days or hours”, “before arrival”, or “after booking” by which a reservation made for the rate passed needs to be cancelled to avoid penalties.

 

@OffsetDropTime

 0..1  

An enumeration to indicate BeforeArrival or AfterBooking.

 

@OffsetUnitMultiplier  

 0..1  

A numeric to indicate the number of hours or days by which to cancel.

 

@OffsetTimeUnit  

 0..1  

An enumeration to indicate whether we are talking about hours or days. Possible enumerations for Ota are
various BUT RECOMMENDED ENUMERATIONS to be used by HTNG should only be: Hour and Day.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / CancelPenalties / CancelPenalty / AmountPercent

 1  

Conditionally Mandatory. If a Deadline is passed, then an AmountPercent must also be indicated using the appropriate attribute.

 

@NmbrOfNights OR @Amount OR @Percent

 1  

Conditionally Mandatory.  

 

** OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / AcceptableGuarantees /

 0..1  

This is used to transfer Guarantee AND/OR Deposit policies for the rate.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / AcceptableGuarantees / AcceptableGuarantee

 1..n  

This is used to indicate the specific Guarantee AND/OR Deposit policy for the rate.

 

@GuaranteePolicyType

 0..1  

To pass a Guarantee policy, the GuaranteeType attribute will be set to GuaranteeRequired. To pass a deposit it will be set to DepositRequired.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / AcceptableGuarantees / AcceptableGuarantee / GuaranteesAccepted

 1  

Conditionally Mandatory - if GuaranteeType is passed.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / AcceptableGuarantees / AcceptableGuarantee / GuaranteesAccepted / GuaranteeAccepted

 1  

 Mandatory.  

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / AcceptableGuarantees / AcceptableGuarantee / GuaranteesAccepted / GuaranteeAccepted / PaymentCard

 1  

 Mandatory.  

 

@GuaranteeCode  

 1  

The Code associated to the guarantee or deposit. Set to Card Type OTA code CDT nr 1- Credit.

 

@CardType

 1  

Used to indicate that the deposit or guarantee must be provided by credit card. Set to Card Type OTA code CDT to 1- Credit.

 

OTA_HotelRatePlanNotifRQ / RatePlans / RatePlan / BookingRules / BookingRule / AcceptableGuarantees / AcceptableGuarantee / GuaranteeDescription / Text

 0..1  

   

 

@GuaranteeCode

 0..1  

Goes with the GuaranteeCode attribute and describes the Guarantee or Deposit requirement. For instance:
GuaranteeCode = GCD, GuranteeDescription/Text = Guarantee by Corporate ID GuaranteeCode = DDP, GuranteeDescription/Text = Deposit by Check, Transfer

 

OTA_HotelRatePlanNotifRQ Sample Rate Message

<OTA_HotelRatePlanNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05 OTA_HotelRatePlanNotifRQ.xsd" EchoToken="354" TimeStamp="20050126T10:22:0005:00" Version="1.0"> <RatePlans ChainCode="GO" HotelCode="GONOLA"> <RatePlan RatePlanCode="PKG" RatePlanNotifType="Overlay" RatePlanType="Package" Commissionable="True" YieldableIndicator="True" RestrictedDisplayIndicator="True" ExtraNightRatePlanCode="RACK" MarketCode="LS"> <BookingRules> <BookingRule MinAdvancedBookingOffset="2" QualifiedRateYN="False" PriceViewable="False"> <AcceptableGuarantees> <AcceptableGuarantee GuaranteeCode="GUTCC" GuaranteeType="GuaranteeRequired"/> </AcceptableGuarantees> <CancelPenalties> <CancelPenalty PolicyCode="CXL24H"/> </CancelPenalties> <Description Language="EN"> <Text>Public RACK rate</Text> </Description> </BookingRule> </BookingRules> <Commission Percent="10.00"> <FlatCommission Amount="15.00"/> </Commission> </RatePlan> </RatePlans> </OTA_HotelRatePlanNotifRQ>

Sample RatePlanNotifRQ with TPA Extensions

<OTA_HotelRatePlanNotifRQ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="905548" TimeStamp="2017-05-02T16:25:11.83-04:00" Target="Production" Version="1" MessageContentCode="8"> <POS> <Source> <RequestorID /> </Source> </POS> <RatePlans HotelCode="HTET"> <RatePlan Start="2021-08-23" End="2021-08-30" CurrencyCode="USD" RatePlanCode="PROMO_MyTest" RatePlanNotifType="Overlay"> <BookingRules> <BookingRule MinAdvancedBookingOffset="2" MaxAdvancedBookingOffset="4" > <Viewerships> <Viewership> <BookingChannelCodes> <BookingChannelCode>ALL</BookingChannelCode> </BookingChannelCodes> </Viewership> </Viewerships> </BookingRule> </BookingRules> <Description Name="Short Description"> <Text>PROMO</Text> </Description> <Description Name="Long Description"> <Text>Promo Long Description</Text> </Description> </RatePlan> </RatePlans> <TPA_Extensions> <Q1:RATERESTRICTIONS AvailableFrom="2021-08-25" AvailableTo="2022-09-26" BookableFrom="2021-08-27" BookableTo="2022-09-28" xmlns:Q1="http://www.opentravel.org/OTA/2003/05"> </Q1:RATERESTRICTIONS> </TPA_Extensions> </OTA_HotelRatePlanNotifRQ>

Response Message handling is not yet available

OTA_HotelRatePlanNotifRS Elements & Attributes

Element | @Attribute

Num

Description/Contents

Origin | Value

OTA_HotelRatePlanNotifRS

 1  

Root element of the message.  

   

@EchoToken  

 0..1  

Optional

 

@TimeStamp  

 1  

Time of the transaction.

 

@Version  

 1  

Version is a mandatory attribute in OTA; therefore, it must remain Mandatory in HTNG to be able to use the same message.

 

@MessageContentCode

 1  

The attribute refers to OTA code list MCC which includes RateAvail, RoomAvail, RoomRateAvail, SegmentAvail, SegmentRoomAvail, HouseAvail, and
HurdleRateUpdate.

 

OTA_HotelRatePlanNotifRS / Success

 

This is the annotation that the availability status message batch was received successfully. It could be combined with warning messages if some of the
messages in the batch had issues.

 

OTA_HotelRatePlanNotifRS / Warnings  

 1..n  

Optional. The attribute refers to the MCC OTA code list which includes Rate, Package, Group.

 

OTA_HotelRatePlanNotifRS / Warnings / Warning

1..99

Mandatory if parent level is present.

 

@ Type  

 1  

Mandatory in OTA. Refers to OTA EWT list (error warning type).

 

@ Code  

 0..1  

Optional. Refers to OTA list ERR. Should be used wherever possible.

 

@ RecordID

 0..1  

If the receiving system can identify within a batch of availability status messages which specific message failed, the UniqueID of the message should be
reported here.

 

OTA_HotelRatePlanNotifRS/ Errors  

 1  

Optional. Errors are returned if the request was unable to be processed. The attribute refers to the MCC OTA code list which includes Rate, Package, Group.

 

OTA_HotelRatePlanNotifRS/ Errors / Error

1..99

Mandatory if parent level is present.

 

@ Type

 1  

Mandatory in OTA. Refers to OTA EWT list (error warning type).  

 

@ Code

 0..1  

Optional. Refers to OTA list ERR. Should be used wherever possible

 

@ RecordID

0..1

If the receiving system can identify within a batch of availability status messages which specific message failed, the UniqueID of the message should be reported here.

 

OTA_HotelRatePlanNotifRS Sample Rate Message

<OTA_HotelRatePlanNotifRS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opentravel.org/OTA/2003/05" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05 OTA_HotelRatePlanNotifRS.xsd" TimeStamp="2004-05-01T06:39:09" Target="Production" Version="1.002"> <Success/> </OTA_HotelRatePlanNotifRS>