SiteMinder APIs
Help CentrePartner ContactsTest Extranet LoginBecome a SiteMinder Partner
  • Hub
  • Quickstart
  • Integration Process
  • CHANNELS
    • Introduction
      • SiteConnect
        • Getting Started
        • Developer Guide
          • Integration Requirements
          • Message Structure
          • Error Handling
        • API Reference
          • Rooms and Rates
          • Availability and Restrictions
          • Rates
          • Reservations
            • Reservation XML Sample
        • Testing and Certification
        • Changelog
        • FAQ
      • Channels Plus
        • Getting Started
        • Developer Guide
          • Partner Portal
          • Deals
          • Invoicing: Gross vs. Net
        • API Reference
          • Properties
          • Property
          • Lock Reservation
          • Confirm Reservation
          • Modify Reservation
          • Cancel Reservation
        • Testing and Certification
        • Swagger
        • Changelog
        • FAQ
  • PMS / RMS
    • Introduction
      • pmsXchange
        • Getting Started
        • Developer Guide
          • Integration Requirements
          • Message Structure
          • Error Handling
        • API Reference
          • Rooms and Rates
          • Availability and Restrictions
          • Rates
          • Reservations
            • Reservations PULL
            • Reservations Import
            • Reservations Upload
              • Reservation Types
            • Payment Transaction Record
            • Credit Card Tokenization
            • Reservations XML Samples
              • Reservations PULL Samples
              • Reservations Upload Samples
        • Testing and Certification
        • Changelog
        • FAQ
  • APPS
    • Introduction
      • SiteMinder Exchange
        • Getting Started
        • Developer Guide
          • Integration Requirements
          • Message Structure
          • Error Handling
        • API Reference
          • Availability and Rates
            • Publishers
            • Hotels
            • RoomTypes
            • RatePlans
            • Availability
            • Rates
            • Models
            • Response Samples
              • Publishers Sample
              • Hotels Sample
              • RoomTypes Samples
              • RatePlans Samples
              • Availability Samples
              • Rates Sample
            • ARI 1-Way Guidelines
          • Reservations
            • Maximum Content Sample
            • Minimum Content Sample
        • Testing and Certification
        • Activation & Deactivation Process for Hotels
          • Activation Process for Hotels
          • Activation Form Parameterisation
          • Deactivation Process for Hotels
        • Changelog
          • Reservations API Changelog
          • ARI API Changelog
        • FAQ
  • Additional Resources
    • Reference Tables
      • Booking Agent Codes
      • Document Type Code (DOC)
      • Error Codes (ERR)
      • Error Warning Types (EWT)
      • Fee Tax Type (FTT)
      • Handling HTTP 500
      • Meal Plan Type (MPT)
      • OpenTravel Codes List
      • Payment Card Provider Codes
      • Service and Extra Charge
      • Strong Customer Authentication Codes
      • Test Credit Cards
    • Glossary
    • FAQ
Powered by GitBook
On this page
  • Guidelines
  • Open Travel Alliance (OTA)
  • Security
  • SSL/TLS
  • Strong Password Policy
  • Application General
  • SOAP Message
  • Content-Type
  • Endpoints
  • Error Handling
  • HotelCode
  • Reservation Regions
  • API General
  • EchoTokens
  • TimeStamp
  • Line Spacing

Was this helpful?

  1. CHANNELS
  2. Introduction
  3. SiteConnect
  4. Developer Guide

Integration Requirements

Last updated 1 month ago

Was this helpful?

Guidelines

As outlined in the API Services Terms of Use Agreement, these guidelines ensure the efficient and proper use of the SiteConnect API.

All OTAs that integrate with SiteMinder must adhere to the following requirements. OTAs with existing integrations may need to update their setup to comply. Due to the growing number of OTA installations, SiteMinder can no longer accommodate exceptions.

Failure to comply with these guidelines may result in the deactivation of the OTA interface. If non-compliance is not resolved within three months of notification, SiteMinder reserves the right to disable the interface until corrections are made. In cases where non-compliance poses a risk to SiteMinder's production environment, the interface may be disabled immediately.

Open Travel Alliance (OTA)

The SiteMinder Web Service is based on the Open Travel Alliance (OTA) specifications for version 2010A. Although this document attempts to be technically comprehensive it is expected that the connecting system’s developers be familiar with the OTA specifications found here: .

Security

SSL/TLS

SiteMinder supports TLSv1.1 and above. The production URI must use HTTPS. SiteMinder does not support self-signed SSL certificates.

Encryption should be provided by the transport layer via HTTPS. Each message contains a WS-Security (WSSE) UsernameToken SOAP header for authentication/authorisation purposes.

Strong Password Policy

Passwords must be at least 8 characters long and should include a mix of uppercase and lowercase letters, numbers, and at least one special character (e.g., ! @ # ? ]).

Avoid using “<”, “>”, “&”, “““, and “'” in passwords or usernames, as these characters can cause issues with the Web Service.

Application General

SOAP Message

All communication between SiteMinder and the Booking Channel must use SOAP messages transmitted over secure HTTP (HTTPS). These messages include a SOAP Security header for authentication and a SOAP Body containing the OTA message. The communication operates through synchronous request/response pairs, where each message is considered atomic—processed entirely or not at all by the Web Service.

Content-Type

All SOAP XML requests to SiteMinder must have a Content-Type of 'text/xml; charset=utf-8'. Other Content-Types will not be accepted.

Endpoints

Partners should provide a single URI endpoint for all messages. If not possible, SiteMinder can handle up to two URIs (one for the Rooms and Rates and one for the Availability, Restrictions and Rate PUSH).

Error Handling

HotelCode

The HotelCode is a unique identifier provided by the booking channel, and it must be unique for each property per channel.

Reservation Regions

SiteMinder supports two regions for reservation delivery: APAC (Asia Pacific) and EMEA/AMERS (Europe, Africa, Middle East & Americas). Your connection should be capable of sending reservations to different endpoints.

Most properties will be in their specific production region, but exceptions may occur, particularly with Whitelabel partners. As a result, APAC properties might be in the EMEA/AMERS environment, and vice versa.


API General

EchoTokens

EchoTokens are crucial for all requests made over SiteMinder. Each EchoToken must be unique per request to ensure that every request can be individually identified for troubleshooting in both testing and production environments. Every request from SiteMinder will include an EchoToken, and the Booking Channel's response must include the same EchoToken as received.

TimeStamp

The TimeStamp format must follow ISO 8601 Date and Time standards. There are two ways to handle time zone offsets:

  • UTC time is indicated by a "Z" at the end (e.g., 2021-11-05T13:15:30Z for UTC time).

  • Local time includes a time zone offset (e.g., 2021-11-05T08:15:30-05:00 for US Eastern Standard Time, which is 5 hours behind UTC).

Line Spacing

All SOAP XML requests to SiteMinder must be minified, containing no line spacing or newline characters. Keeping the XML on a single line helps our support teams extract messages from logs more efficiently.

<SOAP-ENV:Envelope	xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><OTA_HotelAvailRS xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0"><Success/><RoomStays><RoomStay><RoomTypes><RoomType RoomTypeCode="SGL"><RoomDescription Name="Single Room"><Text>Single bed for single occupancy.</Text></RoomDescription><Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/></RoomType></RoomTypes><RatePlans><RatePlan RatePlanCode="BAR"><RatePlanDescription Name="Best Available Rate"><Text>Best Available Rate.</Text></RatePlanDescription></RatePlan></RatePlans></RoomStay></RoomStays></OTA_HotelAvailRS></SOAP-ENV:Body></SOAP-ENV:Envelope>
<SOAP-ENV:Envelope
	xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
	<SOAP-ENV:Body
		xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
		<OTA_HotelAvailRS
			xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
			<Success/>
			<RoomStays>
				<RoomStay>
					<RoomTypes>
						<RoomType RoomTypeCode="SGL">
							<RoomDescription Name="Single Room">
								<Text>Single bed for single occupancy.</Text>
							</RoomDescription>
							<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
						</RoomType>
					</RoomTypes>
					<RatePlans>
						<RatePlan RatePlanCode="BAR">
							<RatePlanDescription Name="Best Available Rate">
								<Text>Best Available Rate.</Text>
							</RatePlanDescription>
						</RatePlan>
					</RatePlans>
				</RoomStay>
			</RoomStays>
		</OTA_HotelAvailRS>
	</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Your application must include robust error handling, with a queuing mechanism and a reliable retry strategy. Refer to the documentation for more details.

Ensure that your EchoTokens are highly unique to facilitate quick and efficient log searching for troubleshooting. Using GUIDs (Globally Unique Identifiers) is recommended. For more information, refer to the guidelines.

http://www.opentravel.org
Error Handling
Universally Unique Identifier