Hotel Descriptive Information: Getting Images, Items, Packages, Rooms, Activities, Amenities, Airports, Policies, Sources, Receipt Types, Markets, and marketing Messages
Posted by Jeff Tweddale on 11 Oct 2017 01:37 PM
Each of these data sets are found by using the:OTA_HotelDescriptiveContentInfo - Site Information message. But a few issues are worth bearing in mind and planning for:
Use a File system
We suggest caching static copies of non volatile messages (which all messags in this API message are) locally. All you need then is a routine to call the message and save the response to a file, which can then be loaded when needed and refreshed when needed. This will make your Booking Engine faster for sure.
Thus, an image for the Room Type: SUITE can be retrieved by the URL above where <ROGERS> is the Site ID with an images directory, and the file name and URL to the Room type Suite is ROGERS_SUITE (always using all CAPS).
The Inventory Item message, by default, returns ALL items in the Property Setup area. Thus, without requesting only those set as 'Sell Online' there would be no way to differentiate which ones ought to be considered 'online sales' (ie to display on the Booking Engine). If the developer sends "online" in their Items message request instead of "yes", they will have online only items returned. Thus, a developer can use this flag to segregate the 'online' from 'offline' Items setup by the PMS, if desired.
When one queries for Rate and Availaility, the array sent back has a Rate Type indicator that allows a developer to sort those rates that are Packages from those that are not. The Package indicator will show the price (based on dates and Adults/Children etc queried); whether the Package is FIXED or DYNAMIC; the optional <yes/no> of Items included in that particular Package; and the Quantity and Extended Cost of the Items included and/or optional. With this information, a developer can be decisive about what Package to save (via the SaveBooking message), with which Items, and determine the Qty and Cost of the Items to save with the Booking. This is the way to display and save Packages that are setup by the property.
If a developer wished to ignore the PMS' setup of Packages, and instead save Items with Rates as the developer wishes, this can be done. However, note that this might fall outside of what the property desires, so get permission before making these merchandising decisions. To do this, the developer would query the Items (via the XML call); know which ones are available for sale (online vs. offline, for example); and then save the Items with the Room(s) and Rate(s) booked to be whatever the developer chooses. The Items must have existing Item Codes (determined via the Items query), but in this way the developer is making Packages 'on the fly' and posting Items with the Booking.