Integration Requirements

Integration Requirements Guidelines

In accordance with the API Services Terms of Use Agreement signed by the PMS partner before development has commenced, these guidelines are in place to ensure efficient and proper use of the SMX for PMS API.

The following Integration Requirements must be adhered to by all PMS' that have or wish to have an interface to SiteMinder Exchange for Publishers.

Failure to follow these guidelines could jeopardise the PMS interface and, if no action is taken by the PMS provider to rectify non-compliance within 3 months from notification, SiteMinder reserves the right to disable the interface till such corrections have taken place.

Please note, however, that if the non-compliance of the PMS puts the performance to the whole SiteMinder production environment at risk, SiteMinder reserves the right to disable the interface immediately.


EchoTokens

EchoTokens are essential for all requests made over SiteMinder Exchange as per the following link - EchoToken, Timestamp and POS.

NOTE: Please ensure that you implement EchoTokens that are as 'unique' as possible to ensure that log trawling for troubleshooting purposes on either side is quick and efficient. Implementing GUIDs are recommended and more information about GUID can be found - http://en.wikipedia.org/wiki/Globally_unique_identifier.


File Upload Size

Uploaded messages must not exceed 512KB (uncompressed).


Error Handling / Hotelier Error Awareness

It is expected that your PMS has a robust error handling process whereby errors can be queued and resent. 


GDPR - General Data Protection Regulation

We would like to make sure that the guest's privacy preferences are shared appropriately with our Apps Partners, so that hotels don't have to manually maintain the privacy details separately in these Apps as well as in their PMS. These privacy details can be used by Apps to manage their GDPR requirements, thereby protecting hotels from manually maintaining compliance in these external apps.

We support two attributes in our Reservation notification specs to manage guest privacy preferences: @ShareAllMarketInd and @ShareAllOptOutInd. We require you to implement these elements along with your reservation notifications to SMX, in the guest information you send under ResGuest Profiles and ResGlobalInfo Profiles. The SMX Applications can use the above fields to identify guests who do not wish to receive any communication and also take necessary guest data anonymization action on their side.


The Maximum Content it is the maximum amount of data that the publisher could provide in order to connect to all type of applications. It is important that the publisher always sends in each OTA_HotelResNotifRQ the maximum amount of data available on each reservation. See Maximum Content XML Sample.

The Minimum Recommended Content reflects the minimum amount of data that needs to be provided in order to meet the critical data required by all types of applications. The Minimum Recommended Content is for reference only and the publisher must send always its Maximum Content. See Minimum Recommended Content XML Sample.

The below table includes the elements / attributes contained in the Minimum Recommended Content:

Element

Attribute

Occurrence

Comments

Element

Attribute

Occurrence

Comments

OTA_HotelResNotifRQ



Mandatory

 

 

@Version

Mandatory

 

 

@EchoToken

Mandatory

 

 

@TimeStamp

Mandatory

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation

 

Recommended

 

 

@ResStatus

Mandatory

 

 

@CreateDateTime

Mandatory

 

 

@LastModifyDateTime

Mandatory

Mandatory if a message relating to this reservation has already been uploaded.

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / POS / Source / RequestorID



Mandatory



 

@ID

Mandatory

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / POS / Source / BookingChannel



Recommended



 

@Type

Recommended

 

 

@Primary

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / POS / Source / CompanyName



Recommended

 

 

@Code

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / UniqueID



Mandatory



 

@ID

Mandatory

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays



Mandatory



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / RoomTypes / RoomType



Recommended



 

@RoomType

Recommended

 

 

@RoomTypeCode

Recommended

 

 

@RoomID

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / RatePlans / RatePlan 



Recommended

 

 

@RatePlanCode

Recommended

 

 

@EffectiveDate

Recommended

 

 

@ExpireDate

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / RoomRates / RoomRate



Recommended





@RoomID

Recommended





@RoomTypeCode

Recommended





@RatePlanCode

Recommended

 



@EffectiveDate

Recommended

 



@ExpireDate

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / RoomRates / RoomRate / Rates / Rate



Recommended

 



@EffectiveDate

Recommended

 



@ExpireDate

Recommended

 



@UnitMultiplier

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / RoomRates / RoomRate / Rates / Rate / Total



Recommended

 



@AmountBeforeTax

Recommended





@AmountAfterTax

Recommended





@CurrencyCode

Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / GuestCounts / GuestCount



Recommended





@AgeQualifyingCode

Recommended





@Count

Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / TimeSpan



Mandatory





@Start

Mandatory





@End

Mandatory



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / Total



Recommended



 

@AmountBeforeTax

Recommended

May be AmountAfterTax

 

@AmountAfterTax

Recommended

May be AmountBeforeTax

 

@CurrencyCode

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / RoomStays / RoomStay / ResGuestRPHs / ResGuestRPH



Recommended



 

@RPH

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGuests / ResGuest



Recommended



 

@ResGuestRPH

Recommended

 

 

@AgeQualifyingCode

Recommended

 

 

@PrimaryIndicator

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGuests / ResGuest / Profiles / ProfileInfo / Profile



Recommended

ResGuest / Profiles refers to the guest details. The person who is staying in the room.

 

@ProfileType

Mandatory

 



@ShareAllOptOutInd

Mandatory

SiteMinder's Certification GDRP Compliance

 

@ShareAllMarketInd

Mandatory

SiteMinder's Certification GDRP Compliance

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGuests / ResGuest / Profiles / ProfileInfo / Profile / Customer / PersonName



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGuests / ResGuest / Profiles / ProfileInfo / Profile / Customer / PersonName / GivenName



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGuests / ResGuest / Profiles / ProfileInfo / Profile / Customer / PersonName / Surname



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGuests / ResGuest / Profiles / ProfileInfo / Profile / Customer / Email



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo



Mandatory



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / GuestCounts / GuestCount



Recommended





@AgeQualifyingCode

Recommended



 

@Count

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / TimeSpan



Mandatory



 

@Start

Mandatory

 

 

@End

Mandatory

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / Total



Mandatory



 

@AmountBeforeTax

Mandatory

May be AmountAfterTax

 

@AmountAfterTax

Mandatory 

May be AmountBeforeTax

 

@CurrencyCode

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / HotelReservationIDs / HotelReservationID



Recommended



 

@ResID_Value

Recommended

 

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / Profiles / ProfileInfo / Profile



Recommended

ResGlobalInfo / Profiles refers to the customer details. The person, company or travel agent who has made the reservation.

 

@ProfileType

Mandatory

 

 

@ShareAllOptOutInd

Mandatory

SiteMinder's Certification GDRP Compliance

 

@ShareAllMarketInd

Mandatory

SiteMinder's Certification GDRP Compliance

OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / Profiles / ProfileInfo / Profile / Customer / PersonName



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / Profiles / ProfileInfo / Profile / Customer / PersonName / GivenName



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / Profiles / ProfileInfo / Profile / Customer / PersonName / Surname



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / Profiles / ProfileInfo / Profile / Customer / Email



Recommended



OTA_HotelResNotifRQ / HotelReservations / HotelReservation / ResGlobalInfo / BasicPropertyInfo



Mandatory



 

@HotelCode

Mandatory