Knowledgebase: XML Team
Using the XML Web Service to Save Bookings for Owners and/or Agents
Posted by Jeff Tweddale on 04 Dec 2019 09:55 AM

If you are developing an XML solution for an Owner(s) of Unit(s) that is part of an Owner Channel Program (https://www.bookingcenter.com/nontraditional/), then you will need to have a few concepts clearly understood before attempting to query or save content to the PMS used by the owner of the PMS:

 

BookingCenter has a system for managing access to customer's XML data - what we call credentials, with details found in this article - for both reading and writing data.  Because our customer is the PMS user, and not the 'Owner' of a specific Unit, the credentials provided to a developer must be provided by the PMS owner.  BookingCenter is not liable for sharing these credentials, which could have un-intended consequences for the PMS owner.  The PMS owner needs to know that sharing these credentials offers the developer access to data in their PMS and the ability to alter that data.  Proceed with caution.

 

When saving a Booking to an Owner's Unit Type, there are considerations that must be planned for:

  1. Will the system automatically save a Booking to a specific Unit, or just to a Unit allocated to a Type?  See this article for details on this topic.
  2. How will the developer choose which Type from an Agent query to save the booking against?  The answer to this question is based on the business goals leading the developer to make the XML solution in the first place.  But consider that trying to Save a Booking without first querying availability could result in a "No Rooms Available" Message when attempting the save procedure.  See this article for a discussion on this topic.
  3. Will the Owner and/or Agent login to view their bookings via the Owners Area or Agents Area?  If so, the booking must be set correctly with the Owner and/or Agent login IDs to view their booking(s) in these areas.  When setting the Agent ID, the developer must use the correct Agent ID and it is not the one that the Agent uses to login to the Agents Area.  Rather, it is the Agent as entered in the PMS.  

    As an example, if the Agent is 'DEMO' and the Site is 'BCDEMO' then this agent would login to the Agents Area as BCDEMODEMO.  But the developer of the XML needs to use the correct terms for the OTA XML code, which in this example is as follows:

    <BasicPropertyInfo AgentCode="DEMO" HotelCode="BCDEMO" ChainCode="BC"/>.
  4. Can an Owner and/or Agent make bookings via the Owners Area or Agents Area while the XML service and/or the Channel Manger is also making bookings, thus bookings are entered via multiple sources?  The answer here is YES.  If an Owner and/or Agent were to make a booking via the Members/Owners/Agents Area, that booking will save and occupy availability.  If one were to attempt to insert a booking via the XML service, for same dates and times, an ERROR will return that there is no availability.  So, the two methods (manually via the Members/Agents/Owners Area and also via the XML service/Channel Manager) can be used concurrently, but there can only be one that makes a booking for a specific unit for the specific date.  

    It is our recommendation that an XML developer always first query availability before attempting to save a new booking to avoid a "No Rooms Available" Message when attempting the save procedure.

  5. Assuming the PMS ownership provides agreement to the Owner for using the APIs (we provide on our API documentation pages), the two messages the developer(s) will need to develop, at minimum, are:

    1) Connect to the PMS to save a new booking that occurred in an outside system using the OTA_HotelRes (ie, 'new booking’) message.

    2) If a modification occurs to an existing booking in the outside system, or a cancellation occurs to an existing booking in the outside system, then use the OTA_HotelResCancel (Cancel a booking) to cancel the existing one that was placed into BookingCenter prior.  If only a cancellation event, this is all the the developer is required to do. If the goal was to insert a ‘modified’ booking to one placed into BookingCenter prior, then the developer will then save the modified booking information as a 'new booking’ and place the ‘CRS_Confirmation number’ from the outside system with this new booking.

    The BookingCenter will always return a OTA_HotelRes (ie, 'new booking’) message with a BookingCenter-generated Confirmation Number and always return a cancellation number from an OTA_HotelResCancel (Cancel a booking) message. It is best practices that these reference numbers are stored in a mapping file the developer manages to record the booking RefNumbers returned by BookingCenter (the ‘confirmation number’ and/or ‘cancellation number') in order to use that for cancelling later (if needed).  In addition, it is recommended that the outside system RefNumber saved when the booking was originally saved is placed into the BookingCenter booking as the ‘CRS_Confirmation number’ so that the ‘confirmation number’ of the outside system is linked with the ‘confirmation number’ stored in BookingCenter.  

BookingCenter does not support an XML developer in these situations who is not part of an Owner Channel Program.  If an XML developer is not sure how to achieve their desired results, BookingCenter provides hourly rate consultation to achieve these goals.  Contact the Sales Department (sales@bookingcenter.com or +1-707-874-3922 ext 201) if you need assistance in developing an XML solution for an Owner(s) of Unit(s).