Reservation general workflow

The general workflow of a hotel reservation is as follow:

  1. The general information about a given hotel (knowing its HotelCode) is requested using the HotelDescriptiveInfoRQ message.
    The descriptive content can contain (based on what is requested and what is available in the system):
    1. general information about the hotel such as its rating, address, GPS coordinates, etc.
    2. a list of the existing guestrooms in that hotel
    3. textual description of the hotel itself as well as of the guestrooms
    4. pictures in several formats of the hotel and the guestrooms
    5. a description of the services available at the hotel
    6. a list of the contacts of the hotel
       
  2. The availability for a given hotel is retrieved through the use of the HotelAvailRQ request.
    Per end-user, please generate a unique transaction/session identifier on your system. This transaction/session identifier must be used for the HotelAvailRQ request (defined with the TransactionIdentifier payload attribute). This transaction/session identifier is used to ensure that the rates and conditions given in the HotelAvailRS response are valid for a period of 30 minutes after the initial request, even if they come to be modified in the meantime.
     
  3. A reservation is issued using the HotelResRQ request and must repeat all the details received in the response to HotelAvailRQ.
    This details are
    1. the rates for the different nights of a given room stay
    2. the rates for the different services
    3. the complete cancellation penalty applicable to a given room stay

    TransactionIdentifier

    Please note that the same unique transaction/session identifier, generated by your system and transfered in the HotelAvailRQ request must be re-used for this request.

  4. If needed, a reservation can be cancelled using the HotelResRQ request again (with a specific "Cancel" value for the ResStatus payload attribute).
    In that case, only the identier of the previously booked reservation is needed to perform the cancellation.