Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Reservation Confirmation Request is used to confirm the booking of the selected offer. It should always follow after the corresponding "Initiate" request.

OTA_HotelResRQ*:

*mandatory

Element

Attribute

Type

Description

Min…Max occurs

PrimaryLangID*

For more information see Common Data Description section in Glossary.

1...1

ResStatus*

string ("Book")

Must be "Book" for that step.

1…1

TransactionIdentifier*

string

Unique ID of transaction. This attribute must have the same value as in Reservation Initiate Response.

1…1

HotelReservations/ HotelReservation*

Basket of separate room reservations, each of it defines a specific reservation with a unique client's ResID_Value.

After first HotelReservation block comes another (second, third etc). 

Info

Important note: If in HotelAvail search a client sends a request to search for several rooms within the same guest set (for example for 2 same guest sets Quantity=2), then for every guest set a separate HotelReservation block should be configured, with unique ResGuestRPH and client ResID_Value.

1…*

HotelReservations/ HotelReservationIDs/ HotelReservationID

A mandatory tag for multi-room booking, that defines a unique basket identifier within all separate room reservations. This element can not be used for a single booking.

0...1

ResID_Source

string ("basket")

Allows to pass client (agent) booking reference that is generated by application connecting to GP Travel HUB for identification of each booking. Has value "basket" for the whole list of room reservations.

1...1

ResID_Value

string

A unique identifier of a separate multi-room reservation (basket).

1...1

OTA_HotelResRQ/HotelReservations/HotelReservation*:

Element

Attribute

Type

Description

Min…Max occurs

RoomStays/RoomStay*

Represents room offer in a certain hotel.

1…1

ResGuests/ResGuest*

Represents guest details. Guest data should be specified for each room reservation.

For more information see Reservation Initiate Request section.

1...*

ResGlobalInfo*

Contains global details regarding the reservation (of a single reservation in reservation basket)

For more information see Reservation Initiate Request section.

1...1

OTA_HotelResRQ/HotelReservations/HotelReservation/RoomStays/RoomStay*:

Element

Attribute

Type

Description

Min…Max occurs

RoomRates/RoomRate*

Describes the offer to book.

1…*

InvBlockCode*

string (default - 1)

A room identifier. Must start from 1 and must be unique within booking. Together with ResGuestRPH this element allows to allocate passengers in rooms. It must be "1" in current implementation. For multi-room reservation InvBlockCode increments within next room reservation.

1...1

BookingCode*

string

Must be taken from Reservation Initiate Response

Info

Please note: BookingCode may change between Availability response and Reservation Initiate Response (it is supplier specific).

1...1

NumberOfUnits*

integer (1)

Always has fixed value =1.

1...1

RoomRates/ RoomRate/ Services/ Service

Contains information about particular service.

0...*

TimeSpan

For more information see Common Data Description section in Glossary.

OTA_HotelResRQ/HotelReservations/HotelReservation/RoomStays/RoomStay/RoomRates/RoomRate/Services/Service:

Element

Attribute

Type

Description

Min…Max occurs

ServiceRPH*

string 1 - 32

Unique service ID from Reservation Initiate Response.

1...1

Inclusive

boolean (default - false)

Identifies whether the price for this service is included in the room rate. Possible values: No (false), and Yes (true).

0...1

IsPerRoom

boolean (default - false)

Identifies if the service applied per room (true) or per person (false).

0...1

SpecialServiceType*

For more information see Common Data Description section in Glossary.

1...1

RequiredInd

boolean (default - false)

Specifies whether the service is mandatory for the client or not.

0...1

GuestUniqueId

Refers to ResGuest/ProfileInfo/UniqueID/@ID and specified the traveler which the service should be assigned to. The GuestUniqueId is only necessary when the Service/@IsPerRoom="false" in Hotel Availability Response.

0...99

Id*

integer (1 - 999)

1...1

ServiceDetails/TimeSpan

If specified then it means that user would like to check in or/and check out at time that differs from established by hotel.

0...1

Start

hh-mm-ss

Specifies the time of EarlyCheckIn.

0...1

End

hh-mm-ss

Specifies the time of LateCheckOut.

0...1

Expand
titleReservation Confirmation Request Sample XML - 2 adult 1 child
Code Block
languagexml
<OTA_HotelResRQ ResStatus="Book" TransactionIdentifier="12232" EchoToken="tok1EchoToken" PrimaryLangID="en" Version="2">
   <POS>
      <Source>
         <RequestorID ID="client" MessagePassword="pwd" Type="22"/>
         <BookingChannel Type="7" PriceDomain="1"/>
      </Source>
   </POS>
   <HotelReservations>
      <HotelReservation>
         <RoomStays>
            <RoomStay>
               <RoomRates>
                  <RoomRate NumberOfUnits="1" InvBlockCode="1" BookingCode="1001">
                     <Services>
                        <Service SpecialServiceType="Meal" ServiceRPH="1000136"/>
                     </Services>
                  </RoomRate>
               </RoomRates>
               <TimeSpan Start="2020-10-20" End="2020-10-25"/>
            </RoomStay>
         </RoomStays>
         <ResGuests>
            <ResGuest AgeQualifyingCode="10" ResGuestRPH="1">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="1" Type="1"/>
                     <Profile>
                        <Customer>
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Oleg</GivenName>
                              <Surname>Ivanov</Surname>
                           </PersonName>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="10" ResGuestRPH="1">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="2" Type="1"/>
                     <Profile>
                        <Customer>
                           <PersonName>
                              <NamePrefix>Mrs</NamePrefix>
                              <GivenName>Olga</GivenName>
                              <Surname>Ivanova</Surname>
                           </PersonName>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="8" ResGuestRPH="1">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="3" Type="1"/>
                     <Profile>
                        <Customer BirthDate="2014-07-18">
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Alexey</GivenName>
                              <Surname>Ivanov</Surname>
                           </PersonName>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
         </ResGuests>
         <ResGlobalInfo>
            <Comments>
               <Comment>
                  <Text>non-smoking room requested;king bed</Text>
               </Comment>
            </Comments>
            <HotelReservationIDs>
               <HotelReservationID ResID_Source="client" ResID_Value="264888"/>
            </HotelReservationIDs>
         </ResGlobalInfo>
      </HotelReservation>
   </HotelReservations>
</OTA_HotelResRQ>
Expand
titleMultibooking Reservation Confirmation Request Sample XML - 1 room: 2 adult 1 child; 2 room: 2 adults 2 children
Code Block
languagexml
<OTA_HotelResRQ EchoToken="tok1EchoToken" PrimaryLangID="en" ResStatus="Book" TransactionIdentifier="156864" Version="2" xmlns="http://www.opentravel.org/OTA/2003/05">
   <POS>
      <Source>
         <RequestorID ID="client" MessagePassword="pwd" Type="22"/>
         <BookingChannel Type="7"/>
      </Source>
   </POS>
   <HotelReservations>
      <HotelReservation>
         <RoomStays>
            <RoomStay>
               <RoomRates>
                  <RoomRate BookingCode="10326490" InvBlockCode="1" NumberOfUnits="1"/>
               </RoomRates>
            </RoomStay>
         </RoomStays>
         <ResGuests>
            <ResGuest AgeQualifyingCode="10" ResGuestRPH="1">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="1" Type="1"/>
                     <Profile>
                        <Customer>
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Alexey</GivenName>
                              <Surname>Feofanov</Surname>
                           </PersonName>
                           <CitizenCountryName Code="RU"/>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="10" ResGuestRPH="1">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="2" Type="1"/>
                     <Profile>
                        <Customer>
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Ivan</GivenName>
                              <Surname>Feofanov</Surname>
                           </PersonName>
                           <CitizenCountryName Code="RU"/>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="8" ResGuestRPH="1">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="3" Type="1"/>
                     <Profile>
                        <Customer BirthDate="2016-05-14">
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Ivan</GivenName>
                              <Surname>Feofanov</Surname>
                           </PersonName>
                           <CitizenCountryName Code="RU"/>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
         </ResGuests>
         <ResGlobalInfo>
            <HotelReservationIDs>
               <HotelReservationID ResID_Source="agent" ResID_Value="tour001"/>
               <HotelReservationID ResID_Source="client" ResID_Value="tour001"/>
            </HotelReservationIDs>
         </ResGlobalInfo>
      </HotelReservation>
      <HotelReservation>
         <RoomStays>
            <RoomStay>
               <RoomRates>
                  <RoomRate BookingCode="103264f4" InvBlockCode="2" NumberOfUnits="1"/>
               </RoomRates>
            </RoomStay>
         </RoomStays>
         <ResGuests>
            <ResGuest AgeQualifyingCode="10" ResGuestRPH="2">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="1" Type="1"/>
                     <Profile>
                        <Customer>
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Oleg</GivenName>
                              <Surname>Petrov</Surname>
                           </PersonName>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="10" ResGuestRPH="2">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="2" Type="1"/>
                     <Profile>
                        <Customer>
                           <PersonName>
                              <NamePrefix>Mr</NamePrefix>
                              <GivenName>Ivan</GivenName>
                              <Surname>Feofanov</Surname>
                           </PersonName>
                           <CitizenCountryName Code="RU"/>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="8" ResGuestRPH="2">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="3" Type="1"/>
                     <Profile>
                        <Customer BirthDate="2015-05-14">
                           <PersonName>
                              <NamePrefix>Mrs</NamePrefix>
                              <GivenName>Olga</GivenName>
                              <Surname>Petrova</Surname>
                           </PersonName>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
            <ResGuest AgeQualifyingCode="8" ResGuestRPH="2">
               <Profiles>
                  <ProfileInfo>
                     <UniqueID ID="4" Type="1"/>
                     <Profile>
                        <Customer BirthDate="2012-05-14">
                           <PersonName>
                              <NamePrefix>Mrs</NamePrefix>
                              <GivenName>Olga</GivenName>
                              <Surname>Petrova</Surname>
                           </PersonName>
                        </Customer>
                     </Profile>
                  </ProfileInfo>
               </Profiles>
            </ResGuest>
         </ResGuests>
         <ResGlobalInfo>
            <HotelReservationIDs>
               <HotelReservationID ResID_Source="client" ResID_Value="tour002"/>
            </HotelReservationIDs>
         </ResGlobalInfo>
      </HotelReservation>
      <HotelReservationIDs>
         <HotelReservationID ResID_Source="basket" ResID_Value="tourb001"/>
      </HotelReservationIDs>
   </HotelReservations>
</OTA_HotelResRQ>