...
Element | @Attribute | Num | Description/Contents | Origin | Value | ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ | 1 | Root element of the message. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@EchoToken | 0..1 |
| Unique number for every transaction | ||||||||||||||||||||||||||||||||||||||||||||||||||
@TimeStamp | 1 | Time of the transaction. | Time the message was assembled | ||||||||||||||||||||||||||||||||||||||||||||||||||
@Version | 1 | Version is a mandatory attribute in OTA; therefore, it must remain Mandatory in HTNG to be able to use the same message. | 4.000 | ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks/ | 1 | At least one InvBlocks containing one InvBlock element should be sent for the message to have meaning. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock | 1…n | At least one InvBlock element should be sent for the message to have meaning. For multiple sub block or attendee types, this could be repeated. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@InvBlockStatusCode | 0..1 | Refers to OTA IBS and indicates the status of the block (such as Tentative, Definite, etc.). | “2” | ||||||||||||||||||||||||||||||||||||||||||||||||||
@InvBlockCode | 1 | String to identify the Block as a code using the Group system code convention. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@InvBlockLongName | 0..1 | This is the full name of the inventory block. | Group name | ||||||||||||||||||||||||||||||||||||||||||||||||||
@TransactionAction | 1 | Enumerated list that describes the action associated to the message. Used to set a new block, modify, cancel, or other action as per enumerated list to be agreed between partners. | "create", "modify", "cancel", “release” depending on Transaction Sub-Type | ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / HotelRef | 1 | Not mandatory in OTA but is Mandatory in the HTNG recommendation. This is the element containing the code of the property whose inventory blocks are being updated. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@HotelCode | 1 | Not mandatory in OTA but is Mandatory in the HTNG recommendation. This is the code of the property whose inventory blocks are being updated. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / InvBlockDates | 1 |
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@Start | 1 | Not mandatory in OTA but is Mandatory in the HTNG recommendation. This is the first day for which the inventory block update is being sent. | Arrival Date | ||||||||||||||||||||||||||||||||||||||||||||||||||
@End | 1 | Not mandatory in OTA but is Mandatory in the HTNG recommendation. This represent the last date for which the inventory block update is being sent. | Departure Date | ||||||||||||||||||||||||||||||||||||||||||||||||||
@AbsoluteCutoff | 0..1 | Used to determine when the inventory block is released back into house inventory. | Cutoff Date | ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / RoomTypes / RoomType | 1...n | Should be repeated for each room type that is part of the block as it will also contain allocations and rates for the specific room type. | One for each Room Type in the transaction | ||||||||||||||||||||||||||||||||||||||||||||||||||
@RoomTypeCode | 1 | Mandatory. Room type codes of each room type used as part of the block. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / | 0..n |
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@RoomTypePickUpStatus | 0..1 | Ability to specify Inventory Count Type. (i.e. 1 Physical, 2 Definitive availability, 3 Tentative availability, 4 Definite sold, 5 Tentative sold) |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / RoomTypes / RoomType / RoomTypeAllocations / RoomTypeAllocation | 0..n |
| One element for each unique combination of allocation, which will be consolidated over the larges possible range of consecutive dates. | ||||||||||||||||||||||||||||||||||||||||||||||||||
@Start | 0..1 | Used in conjunction with END to determine different number of rooms of a specific type for different dates. | For this room type for the first day of the range. | ||||||||||||||||||||||||||||||||||||||||||||||||||
@End | 0..1 | Used in conjunction with START to determine different number of rooms of a specific type for different dates. | For this room type for the last day of the range. | ||||||||||||||||||||||||||||||||||||||||||||||||||
@NumberOfUnits | 1 | Mandatory. Number of units of a specific type that are allocated as part of the inventory block. Comments have been submitted to Open Travel to allow 0 in this field. | (Blocked) for this room type. Same for all days in the range. | ||||||||||||||||||||||||||||||||||||||||||||||||||
@CompRoomQuantity & @CompRoomFactor | 0..1 | Used to indicate whether a certain number of rooms are allocated as complimentary and whether they are subject to a certain number of rooms being booked first. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ /InvBlocks/InvBlock / RoomTypes / RoomType / RatePlans / RatePlan | 0..1 |
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@RatePlanCode | 1 | Mandatory. Rate plan used for the inventory block. If no further rate information is included, the rate plan code refers to rate plan information already passed using the OTA_HotelRatePlanNotifRQ message. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@CurrencyCode | 0..1 | This is the currency associated to the rate assigned to the block– it could be different to the currency loaded for the property. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / RoomTypes / RoomType / RatePlans / RatePlanBaseByGuestAmnts | 0..1 |
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / RoomTypes / RoomType / RatePlans / RatePlanBaseByGuestAmnts / BaseByGuestAmt | 1..n | Conditionally Mandatory. AT LEAST 1 INSTANCE FOR NUMBEROFGUESTS=1 is Mandatory if the rate information is being defined in the message. Must be repeated for all different type of occupancies of the specific room. We recommend that for varying rates by occupant should be implemented like this. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@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. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / RoomTypes / RoomType / RatePlans / RatePlan / AdditionalGuestAmounts / AdditionalGuestAmount | 0..n | Used to transfer extra adult and extra child amount. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@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_HotelInvBlockNotifRQ / InvBlocks / InvBlock / MethodInfo | 0..1 |
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@BillingType | 0..1 | BillingType is used to indicate charges to be billed to master account (enumeration). |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@SignFoodAndBev | 0..1 | SignFoodAndBev is a Boolean to indicate whether food and drinks should be billed to master account. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
@ReservationMethodCode | 0..1 | ReservationMethodCode indicates the method by which reservations are received. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / BlockDescriptions / BlockDescription | 0…9 |
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / InvBlock / BlockDescriptions / BlockDescription / Text |
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact | 1…9 | This element and its sub-elements can be repeated to include all contact information needed. It is down to implementing partners to agree which contacts would be captured by either system and which contacts should indeed be exchanged. At the very least the Group Organizer | Not mapped | ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / PersonName | 0..1 | This element and sub-elements will be sent to transfer the name of contacts that are “INDIVIDUAL”. To transfer COMPANY/TA details, the OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / CompanyName path should be used as highlighted below. | |||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / PersonName / NamePrefix | 0..1 | Optional but should be highly recommended by HTNG that partners use it if possible. This path is used to transmit the Contact’s details. This field would be used to pass the contact’s name Prefix. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / PersonName / GivenName | 0..1 | This This field would be used to pass the contact’s First name. |
|
| |||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / | contact’s First name. |
|
| ContactContact / PersonName / Given |
| ||||||||||||||||||||||||||||||||||||||||||||||||
|
| Name |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ MiddleName | 0..1 | This This field would be used to pass the |
|
| contact’s Middle name. | ||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / | contact’s Middle name. |
|
| Contact Contact / PersonName / Surname | |||||||||||||||||||||||||||||||||||||||||||||||||
|
| MiddleName |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ | 1 | If If a contact is passed then at least |
|
| /InvBlocks/Contacts/ | Surname Surname must be passed. This field would |
|
| Contact /PersonName/ | be would be used to pass the contact’s Surname. | |||||||||||||||||||||||||||||||||||||||||||
|
| Surname |
| ||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ | |||||||||||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / CompanyName | 0..1 | This This element and attributes will be sent to |
|
| /InvBlocks/Contacts/ | transfer the name of contacts that are | |||||||||||||||||||||||||||||||||||||||||||||||
|
| Contact/CompanyName | “Organizations”. To | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
| transfer are “Organizations”. To transfer individual details, the |
|
| OTAOTA_HotelInvBlockNotifRQ / InvBlocks / |
|
| ContactsContacts / Contact / PersonName path |
|
| should should be used as highlighted above. | ||||||||||||||||||||||||||||||||||||||||||
@CompanyShortName @CompanyShortName | 0..1 | Used Used to provide the Company common |
|
| namename. | ||||||||||||||||||||||||||||||||||||||||||||||||
@Code @Code | 0..1 | Identifies Identifies the company by the company |
|
| codecode. | ||||||||||||||||||||||||||||||||||||||||||||||||
@CodeContext @CodeContext | 0..1 | Identifies Identifies the context of the identifying |
|
| codecode, such as DUNS, IATA, or | internal
|
| codeinternal code, SIC, etc. | OTA | ||||||||||||||||||||||||||||||||||||||||||||
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Telephone | 0..5 | This This field would be used to pass the |
|
| /InvBlocks/ Contacts/ | contact’s phone number contact’s phone number and fax numbers. | |||||||||||||||||||||||||||||||||||||||||||||||
@PhoneLocationType |
| Contact/Telephone |
| @PhoneLocationType @PhoneTechType | 0 | The The PhoneLocationType attribute refers to |
|
| @PhoneTechType | the the OTA PLT code list and indicates |
|
| @CountryAccessCode | where where the phone number is based – the |
|
| @Area City Code | two two codes to be used by HTNG are code |
|
| @DefaultInd | 7 – Home 7 – Home and code 8 – Office. |
|
| The The PhoneTechType attribute refers to |
|
| the the OTA PTT code list, and indicates |
|
| which which type of number is transmitted |
|
| (phone versus fax). The two codes to be |
|
| used used by HTNG are code 1 –Voice and |
|
| code code 3 – Fax. 5-Mobile |
|
| CountryAccessCode CountryAccessCode and Area City Code |
|
| should should be Optional. |
|
| If If country code and area code are passed then they should not appear again in the | PhoneNumber field. DeafultInd is Optional and would indicate | whether the phone number is the primary | phone number for the profile. |
OTA_HotelResNotifRQ Sample Reservation New/Add Message
...
language | xml |
---|
...
@Phone Number @FormattedInd | 1 | PhoneNumber contains the actual as a string of max 32 characters and it is Mandatory. FormattedInd is Mandatory. If the partner can use Country and Area codes then | |
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Email | 0..1 | Optional. This field would be used to pass the contact’s email address. | |
@EmailType @DefaultInd | 0..1 | The Email Type attribute uses the OTA code list EAT and indicates the type of email address provided (personal – code 1 versus business – code 2, in the case of the Guest details) and must be passed if more than one email address is passed. If only one email address is passed it can be | |
OTA_HotelInvBlockNotifRQ /InvBlocks/Contacts/ Contact/Address | 0..1 | If a contact is passed then at least one address must be passed. This field would be used to pass the contact’s mail address. | |
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Address / AddressLine | 0..5 | This field would be used to pass the contact’s address. More than one line can be sent. | |
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Address / CityName | 0..1 | This field would be used to pass the contact’s city. | |
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Address / StateProv |
|
| |
@StateCode | 0..1 | This field would be used to pass the contact’s State expressed in the Standard 2-8 characters code. | |
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Address / PostalCode | 0..1 | This field would be used to pass the contact’s Postal/ZIP code. | |
OTA_HotelInvBlockNotifRQ / InvBlocks / Contacts / Contact / Address / CountryName |
|
|
|
@Code | 0..1 | Optional. This field would be used to pass the contact’s Country expressed in the Standard ISO 3166 code. |
OTA_HotelInvBlockNotifRQ Sample Group Add Message
Code Block | ||
---|---|---|
| ||
<OTA_HotelInvBlockNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLXSchema-instance" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05 OTA_HotelInvBlockNotifRQ.xsd" Version="4.000" TimeStamp="2010-12-23T12:53:54.19"> <InvBlocks> <InvBlock InvBlockStatusCode="2" TransactionAction="Book" InvBlockCode="30010000087" InvBlockLongName="CONFERENCE CHRISTMAS 2010"> <HotelRef HotelCode="16886"/> <InvBlockDates Start="2010-12-23" End="2010-12-25" AbsoluteCutOff="2010-12-22"/> <RoomTypes> <RoomType RoomTypeCode="CSUITE"> <RoomTypeAllocations RoomTypePickUpStatus="1"> <RoomTypeAllocation Start="2010-12-23" End="2010-12-25" NumberOfUnits="1" SellLimit="1"/> </RoomTypeAllocations> <RatePlans> <RatePlan Start="2010-12-23" End="2010-12-25" CurrencyCode="USD" RatePlanCode="30010000087"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="300.00" NumberOfGuests="1" AgeQualifyingCode="10"/> <ResGuestRPHs> <ResGuestRPH RPH="0<BaseByGuestAmt AmountBeforeTax="300.00" NumberOfGuests="2" AgeQualifyingCode="10"/> </ResGuestRPHs> <BaseByGuestAmt AmountBeforeTax="300.00" NumberOfGuests="3" AgeQualifyingCode="10"/> <Comments> <Comment CommentOriginatorCode="GUEST" GuestViewable="true"<BaseByGuestAmt AmountBeforeTax="300.00" NumberOfGuests="4" AgeQualifyingCode="10"/> <Text>Will be Travelling with Mrs Bardot.</Text>BaseByGuestAmts> </Comment><AdditionalGuestAmounts> </Comments> </RoomStay><AdditionalGuestAmount AgeQualifyingCode="10" Amount="100.00"/> </RoomStays> <Services> <Service<AdditionalGuestAmount TypeAgeQualifyingCode="18" IDAmount="DN" ServicePricingType="Per stay" ServiceInventoryCode="Dinner" Inclusive="false" Quantity="1"> 20.00"/> <Price> </AdditionalGuestAmounts> <Total AmountBeforeTax="15" CurrencyCode="USD"/> </RatePlan> </Price>RatePlans> <ServiceDetails></RoomType> <TimeSpan<RoomType Start="2017-04-19T12:00:00" End="2017-04-19T12:00:00"/RoomTypeCode="KING"> <Comments><RoomTypeAllocations RoomTypePickUpStatus="1"> <Comment> <Text>Dinner</Text> </Comment> </Comments><RoomTypeAllocation Start="2010-12-23" End="2010-12-25" NumberOfUnits="2" SellLimit="2"/> </ServiceDetails>RoomTypeAllocations> </Service> </Services><RatePlans> <ResGuests> <ResGuest<RatePlan ResGuestRPHStart="0" AgeQualifyingCode="10" PrimaryIndicator="true2010-12-23" End="2010-12-25" CurrencyCode="USD" RateTier="1" RatePlanCode="30010000087"> <Profiles> <BaseByGuestAmts> <ProfileInfo> <UniqueID Type<BaseByGuestAmt AmountBeforeTax="1170.00" IDNumberOfGuests="120919431" ID_ContextAgeQualifyingCode="CRS10"/> <Profile<BaseByGuestAmt ProfileTypeAmountBeforeTax="1170.00"> NumberOfGuests="2" AgeQualifyingCode="10"/> <Customer Gender="Male" BirthDate="1974-03-10" <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="3" AgeQualifyingCode="10"/> <PersonName><BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="4" AgeQualifyingCode="10"/> <NamePrefix>Mr.</NamePrefix>BaseByGuestAmts> <AdditionalGuestAmounts> <GivenName>James</GivenName> <AdditionalGuestAmount AgeQualifyingCode="10" Amount="20.00"/> <Surname>Bond</Surname> <AdditionalGuestAmount AgeQualifyingCode="8" Amount="10.00"/> </AdditionalGuestAmounts> </PersonName>RatePlan> </RatePlans> <Telephone PhoneTechType="1" PhoneUseType="3" PhoneNumber="446966564101" FormattedInd="false"/</RoomType> <RoomType RoomTypeCode="KN"> <RoomTypeAllocations RoomTypePickUpStatus="1"> <Email ShareMarketInd="Yes" DefaultInd="true">james.bond@shr.global</Email><RoomTypeAllocation Start="2010-12-23" End="2010-12-25" NumberOfUnits="2" SellLimit="2"/> <AddressLine>Claretta House</AddressLine></RoomTypeAllocations> <Address><RatePlans> <AddressLine>Tower Bridge Close</AddressLine> <CityName>London</CityName><RatePlan Start="2010-12-23" End="2010-12-25" CurrencyCode="USD" RateTier="1" RatePlanCode="30010000087"> <PostalCode>EC1 2PG</PostalCode><BaseByGuestAmts> <StateProv<BaseByGuestAmt StateCodeAmountBeforeTax="ENG170.00" NumberOfGuests="1" AgeQualifyingCode="10"/> <CountryName Code="GB<BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="2" AgeQualifyingCode="10"/> </Address><BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="3" AgeQualifyingCode="10"/> </Customer> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="4" AgeQualifyingCode="10"/> </Profile>BaseByGuestAmts> </ProfileInfo> <AdditionalGuestAmounts> </Profiles> <InHouseTimeSpan<AdditionalGuestAmount StartAgeQualifyingCode="2017-04-1910" DurationAmount="P2N" End="2017-04-2120.00"/> </ResGuest> </ResGuests> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Type="14" ResID_Value="RXV7523MU" ResID_Source="CRS" ResID_SourceContext="CrsConfirmNumber" ResID_Date="2017-03-22T21:21:18.4399842-06:<AdditionalGuestAmount AgeQualifyingCode="8" Amount="10.00"/> </HotelReservationIDs> </ResGlobalInfo>AdditionalGuestAmounts> <TPA_Extensions> <Success</>RatePlan> </TPA_Extensions>RatePlans> </HotelReservation> </HotelReservations> </OTA_HotelResNotifRQ> |
OTA_HotelResNotifRS Elements & Attributes
...
Element | @Attribute
...
Num
...
Description/Contents
...
Origin | Value
...
OTA_HotelResNotifRS
...
1
...
Root element of the message.
...
...
@EchoToken
...
0..1
...
As per OTA Specifications.
...
...
@Version
...
1
...
Version is a mandatory attribute in OTA; therefore, it must remain Mandatory in HTNG to be able to use the same message.
...
1.00
...
@TimeStamp
...
1
...
Time of the transaction.
...
...
@ResResponseType
...
1
...
Given that the OTA_HotelResNotifRQ message is used for additions, modifications, and cancellations, this attribute is used to replicate whether the original message was an addition, a modification, or a cancellation and does not refer to the status of the transaction itself but rather to the nature of the original message. The only three enumerations allowed will therefore be: Committed, Modified, and Cancelled. In this case Committed would be used.
...
“ADD” -> “Committed”
“CHANGE” -> “Modified”
“CANCEL” -> “Cancelled”
...
OTA_HotelResNotifRS / Errors / Error
...
1..99
...
Mandatory ONLY if Success element is not sent. Only needed if RQ message was unsuccessful.
...
...
@Type
...
1
...
Mandatory in OTA. Refers to OTA EWT list (error warning type).
...
...
@Code
...
0..1
...
Refers to OTA list ERR. Should be used whenever possible.
...
...
@RecordID
...
0..1
...
If the receiving system can identify within a batch of reservations which reservation failed, the uniqueID of the rejected reservation should be reported here.
...
Not mapped
...
OTA_HotelResNotifRS / Success
...
1
...
Mandatory if no Errors were sent. This is the annotation that the reservation batch was received successfully. It could be combined with warning messages if some of the reservations in the batch had issues.
...
...
OTA_HotelResNotifRS / Warnings / Warning
...
0..99
...
Can be used in conjunction with Success message.
...
...
@Type
...
1
...
Refers to OTA EWT list (error warning type).
...
...
@Code
...
0..1
...
Refers to OTA list ERR. Should be used wherever possible.
...
...
@RecordID
...
0..1
...
If the receiving system can identify within a batch of reservations which reservation has a warning, the uniqueID of that reservation should be reported here.
...
...
OTA_HotelResNotifRS / HotelReservations / HotelReservation
...
...
...
1 for each reservation detail record
...
@ResStatus
...
...
Indicates the status of the reservation. Valid values are dependant on the roles:
Reservation Broker > Reservation Server
• Reserved
• Waitlisted
Reservation Server > Reservation Broker
• Reserved
• Waitlisted
...
“Reserved”
...
OTA_HotelResNotifRS / HotelReservations / HotelReservation / UniqueID
...
1
...
This is the confirmation number for the originator of the booking (i.e., the system which sent the OTA_HotelResNotifRQ message for which the OTA_HotelresNotifRS message is sent).
...
...
@Type
...
1
...
Type is assigned values from the UIT code list. If the original system was a CRS:
Type = 14 – Reservation
ID is the actual confirmation number
If it was a PMS: Type = 10 - Hotel
...
“14” (CRS)
“10” (PMS)
...
@ID
...
1
...
ID is the CRS confirmation number (or PMS number if the reservation was originated in the PMS).
...
...
OTA_HotelResNotifRS / HotelReservations / HotelReservation / ResGlobalInfo / HotelReservationIDs / HotelReservationID
...
1..n
...
This is the confirmation number associated by the system which received the booking.
...
...
@ResID_Type
...
1
ResID_Type is assigned values from the
UIT code list:
10 – Reservation Server
13 – Internet Broker
14 – Reservation Broker
24 – Travel Agent PNR
25- Associated reservation (travelling with)
26- Associated itinerary reservation
27- Associated shared reservation
34 – Master Itinerary
...
...
@ResID_Value
...
1
...
ResID_Value is the actual confirmation number.
...
See above
...
@ResID_Source
...
0..1
...
A unique identifier to indicate the source system which generated the ResID_Value
...
In the descriptions above these are hardcoded as “CRS” and “PMS”. In fact, they are configurable: Use
Info.ResID_Source.Crs and Info.ResID_Source.Pms in code.
...
@ForGuest
...
0..1
...
When 1 the confirmation number given to the guest. This number should be searchable by the destination.
...
Always true
OTA_HotelResRS Sample Response Message
Code Block | ||
---|---|---|
| ||
<OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanceRoomType> <RoomType RoomTypeCode="QQPRM"> <RoomTypeAllocations RoomTypePickUpStatus="1"> <RoomTypeAllocation Start="2010-12-23" End="2010-12-25" NumberOfUnits="2" SellLimit="2"/> </RoomTypeAllocations> <RatePlans> <RatePlan Start="2010-12-23" End="2010-12-25" CurrencyCode="USD" RateTier="1" RatePlanCode="30010000087"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="1" AgeQualifyingCode="10"/> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="2" AgeQualifyingCode="10"/> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="3" AgeQualifyingCode="10"/> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="4" AgeQualifyingCode="10"/> </BaseByGuestAmts> <AdditionalGuestAmounts> <AdditionalGuestAmount AgeQualifyingCode="10" Amount="20.00"/> <AdditionalGuestAmount AgeQualifyingCode="8" Amount="10.00"/> </AdditionalGuestAmounts> </RatePlan> </RatePlans> </RoomType> <RoomType RoomTypeCode="QUEEN"> <RoomTypeAllocations RoomTypePickUpStatus="1">NumberOfUnits="2" SellLimit="2"/> <RoomTypeAllocation Start="2010-12-23" End="2010-12-25"</RoomTypeAllocations> <RatePlans> <RatePlan Start="2010-12-23" End="2010-12-25" CurrencyCode="USD" RateTier="1" RatePlanCode="30010000087"> <BaseByGuestAmts> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="1" AgeQualifyingCode="10"/> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="2" AgeQualifyingCode="10"/> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="3" AgeQualifyingCode="10"/> <BaseByGuestAmt AmountBeforeTax="170.00" NumberOfGuests="4" AgeQualifyingCode="10"/> </BaseByGuestAmts> <AdditionalGuestAmounts> <AdditionalGuestAmount AgeQualifyingCode="10" Amount="20.00"/> <AdditionalGuestAmount AgeQualifyingCode="8" Amount="10.00"/> </AdditionalGuestAmounts> </RatePlan> </RatePlans> </RoomType> </RoomTypes> <BlockDescriptions> <BlockDescription> <Text>The is the block Description</Text> </BlockDescription> </BlockDescriptions> <Contacts> <Contact> <PersonName> <Surname>BOGUS III, MR SEAN</Surname> </PersonName> <Telephone FormattedInd="false" PhoneNumber="316 555 1212" PhoneTechType="1"/> <Telephone FormattedInd="false" PhoneNumber="316 555 1200" PhoneTechType="3"/> <Address> <AddressLine>1907 N Murdock</AddressLine> <AddressLine>Suite 200A</AddressLine> <CityName>Wichita</CityName> <PostalCode>67208</PostalCode> <StateProv StateCode="KS"/> <CountryName Code="US"/> </Address> </Contact> </Contacts> </InvBlock> </InvBlocks> </OTA_HotelInvBlockNotifRQ> |
OTA_HotelInvBlockNotifRQ Sample Cancel Block Message
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF8" ?> <OTA_HotelInvBlockNotifRQ xmlns:xsi=http://www.w3.org/2001/XMLSchemainstance xmlns="http://www.opentravel.org/OTA/2003/05" xsi:schemaLocation="http://www.opentravel.org/OTA/2003/05 /OTA_HotelResNotifRSHotelInvBlockNotifRQ.xsd" Version="1.003" EchoToken="879791878" TimeStamp=" 20052010-1012-09T18 23T12:5253:1554.19" ResResponseTypeVersion="Committed1.00"> <Success/><InvBlocks> <HotelReservations> <HotelReservation> <UniqueID Type<InvBlock BookingStatus="14Close" IDInvBlockCode="3741GRPINV001"/> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Type="10" ResID_Value="82329987"/ TransactionAction="cancel"> <!-- Res ID Type 10 = Hotel from OpenTravel Alliance code table UIT --<HotelRef ChainCode="SW" HotelCode="00000" HotelName="The Westin" /> </HotelReservationIDs>InvBlock> </ResGlobalInfo> </HotelReservation> </HotelReservations>InvBlocks> </OTA_HotelResNotifRS>HotelInvBlockNotifRQ> |
Page Properties | ||||||
---|---|---|---|---|---|---|
| ||||||
|