/
13. USE CASES

13. USE CASES

Here we list use cases that could appear during the booking process.

 

13.1. HOTEL AVAILABILITY


13.1.1. PersonName ELEMENT

PersonName element shows if it is enough to provide name only for tour lead. This element is present on Availability response:

<RoomRate AvailabilityStatus="AvailableForSale" BookingCode="131dfebd24" FreeCancellationDeadline="2020-11-09T23:58:59+01:00" InexactPrice="false" NumberOfUnits="14" RoomTypeCode="APT.C2" SupplierNumberOfUnitsInd="true" RatePlanCode="RO#102|170054|0"> <Rates> ... </Rates> <Total AmountAfterTax="2335.95" CurrencyCode="EUR"/> <TotalRetail AmountAfterTax="2465.00" IsMin="true" CurrencyCode="EUR"/> ... <PersonName OnlyLead="Mixed"/> </RoomRate>

Possible value of PersonName/@OnlyLead attribute are "Yes", "No", "Mixed". Identifies the rule, if it's necessary to provide name of each passenger (No), or only tour leader (Yes), or both variants are possible (Mixed).

– If PersonName/@OnlyLead is "Yes" need to just send only Tour Lead name in Reservation Initiate and Reservation Confirmation requests:

<HotelReservations> <HotelReservation> <RoomStays> <RoomStay> <RoomRates> <RoomRate BookingCode="131e016e16" 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="IL"/> </Customer> </Profile> </ProfileInfo> </Profiles> </ResGuest> <ResGuest AgeQualifyingCode="10" ResGuestRPH="1"> <Profiles> <ProfileInfo> <UniqueID ID="2" Type="1"/> <Profile> <Customer/> </Profile> </ProfileInfo> </Profiles> </ResGuest> <ResGuest AgeQualifyingCode="8" ResGuestRPH="1"> <Profiles> <ProfileInfo> <UniqueID ID="3" Type="1"/> <Profile> <Customer BirthDate="2010-08-14"/> </Profile> </ProfileInfo> </Profiles> </ResGuest> <ResGuest AgeQualifyingCode="7" ResGuestRPH="1"> <Profiles> <ProfileInfo> <UniqueID ID="4" Type="1"/> <Profile> <Customer BirthDate="2019-08-14"/> </Profile> </ProfileInfo> </Profiles> </ResGuest> </ResGuests> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Source="agent" ResID_Value="8dh39dn7"/> <HotelReservationID ResID_Source="client" ResID_Value="54g644yhr541"/> </HotelReservationIDs> </ResGlobalInfo> </HotelReservation> </HotelReservations>

– If PersonName/@OnlyLead is "No" need to send names of all guests in Reservation Initiate and reservation Confirmation requests:

<HotelReservations> <HotelReservation> <RoomStays> <RoomStay> <RoomRates> <RoomRate BookingCode="131e016e16" 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="IL"/> </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="IL"/> </Customer> </Profile> </ProfileInfo> </Profiles> </ResGuest> <ResGuest AgeQualifyingCode="8" ResGuestRPH="1"> <Profiles> <ProfileInfo> <UniqueID ID="3" Type="1"/> <Profile> <Customer BirthDate="2010-08-14"> <PersonName> <NamePrefix>Mr</NamePrefix> <GivenName>Ivanka</GivenName> <Surname>Feofanov</Surname> </PersonName> <CitizenCountryName Code="IL"/> </Customer> </Profile> </ProfileInfo> </Profiles> </ResGuest> <ResGuest AgeQualifyingCode="7" ResGuestRPH="1"> <Profiles> <ProfileInfo> <UniqueID ID="4" Type="1"/> <Profile> <Customer BirthDate="2019-08-14"> <PersonName> <NamePrefix>Mrs</NamePrefix> <GivenName>Olga</GivenName> <Surname>Petrova</Surname> </PersonName> <CitizenCountryName Code="IL"/> </Customer> </Profile> </ProfileInfo> </Profiles> </ResGuest> </ResGuests> <ResGlobalInfo> <HotelReservationIDs> <HotelReservationID ResID_Source="agent" ResID_Value="8dh39dn7"/> <HotelReservationID ResID_Source="client" ResID_Value="54g644yhr541"/> </HotelReservationIDs> </ResGlobalInfo> </HotelReservation> </HotelReservations>

13.1.2. CitizenCountryName ELEMENT

CitizenCountryName element shows if it is enough to provide information about citizenship only for tour lead. This element is present on Availability response:

Possible value of CitizenCountryName/@OnlyLead attribute are "Yes", "No", "Mixed". Identifies the rule, if it is enough to provide information only for tour leader (Yes), or it is necessary to provide for all passengers (No), or both options are possible (Mixed). By default it is necessary to provide this information for all passenger (No).

– If PersonName/@OnlyLead is "Yes" need to just send only Tour Lead citizenship (<CitizenCountryName> element) in Reservation Initiate and Reservation Confirmation requests:

– If PersonName/@OnlyLead is "No" need to send citizenship (<CitizenCountryName> element) of all guests in Reservation Initiate and Reservation Confirmation requests:

13.2. BOOKING


13.2.1. BOOKING WITH SERVICES

Services that can be booked are contained in <Services> element on Availability response:

In order to book a service, it have to be specified on Reservation Initiate Request and Reservation Confirmation request in <Services> element:

13.2.2. CHANGE DATES

GP HUB allows to specify date on booking step other than date on Availability step. In order to change date on Reservation step, <TimeSpan> element have to be specified on Reservation Initiate Request. <TimeSpan> element should contains desired booking date.

If dates are changed on Reservation Initiate <TimeSpan> element also has to be specified on Reservation Confirmation step.

13.2.3. MULTIBOOKING WITH ROOMGROUPIND

Some suppliers return special offer combinations for multibooking on Availability Response. HUB identifies such combinations with an element RoomGroupInd.

It’s allowed to make reservation only with the same RoomGroupInd for all rooms. For example, reservation can be complete only if RoomGroupInd of all offers is 2. That’s why the offer with bookingCode=”12fe437651” for 1st room (RPH=”1” ) and the offer with bookingCode=”12fe437951” for 2st room (RPH=”2” ) are used for booking.

13.3. MODIFICATION


13.3.1. CHANGE BOOKING DATES

In order to change booking dates, it have to be specified in <TimeSpan> element on Modification Initiate Request and Modification Confirmation Request. <TimeSpan> element should contains desired booking date:

13.3.2. CHANGE ROOM LEAD NAME

In order to change room lead name, it have to be specified new name in <PersonName> element on Modification Initiate Request and Modification Confirmation Request. <PersonName> element should contains desired lead name:

13.3.3. CHANGE GUEST AGE

In order to change room lead age, it have to be specified new guest age in <BirthDate> element on Modification Initiate Request and Modification Confirmation Request. <BirthDate> element should contains desired guest age:

13.3.4. ADD OR CHANGE COMMENT

In order to add or change comment, it have to be specified in <Comments> element on Modification Initiate Request and Modification Confirmation Request. <Comments> element should contains desired comment:

Examples of full Modification request can be found in HOTEL MODIFICATION paragraph.

13.4. SPECIFIC WORKFLOW FOR SEVERAL SUPPLIERS

Several suppliers may require specific workflow.

When customer searches by city\list of hotels\GPS coordinates only the cheapest rate per each hotel will be returned.

Customer has to choose one hotel to perform research by it and see all available offers and prices in a particular hotel. Only offers from the research can be used for booking.

Note: This functionality supported for limited suppliers. Please check with GP Travel HUB development if you are interested in specific supplier.

13.5. SEE PRICE FOR CANCELLATION ON RETRIEVE

On Retrieve after Cancellation you can see the total price of the booking and the total price of the cancellation.

RoomStays/RoomStay/RoomRates/RoomRate/Total/@AmountAfterTax - is the total price of the booking (even if the reservation has already been cancelled for free). This Amount has the same value that we show on Reservation.

RoomStays/RoomStay/Total/@AmountAfterTax - is the actual total price for the booking. This Amount is the price of the cancellation.

Related content

7.1. HOTEL RESERVATION INITIATE REQUEST
7.1. HOTEL RESERVATION INITIATE REQUEST
More like this
6. HOTEL BOOKING RULE RESPONSE
6. HOTEL BOOKING RULE RESPONSE
More like this
2. HOTEL AVAILABILITY
2. HOTEL AVAILABILITY
Read with this
10.1. HOTEL MODIFICATION INITIATE REQUEST
10.1. HOTEL MODIFICATION INITIATE REQUEST
More like this
2.3. HOTEL AVAILABILITY RESPONSE
2.3. HOTEL AVAILABILITY RESPONSE
Read with this
7.2. HOTEL RESERVATION INITIATE RESPONSE
7.2. HOTEL RESERVATION INITIATE RESPONSE
More like this