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). | 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*:
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. | 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 |
Reservation Confirmation Request Sample XML - 2 adult 1 child
<OTA_HotelResRQ ResStatus="Book" TransactionIdentifier="12232" EchoToken="EchoToken" 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>
Multibooking Reservation Confirmation Request Sample XML - 1 room: 2 adult 1 child; 2 room: 2 adults 2 children
<OTA_HotelResRQ EchoToken="EchoToken" 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>