> For the complete documentation index, see [llms.txt](https://developer.siteminder.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.siteminder.com/siteconnect-api/additional-resources/faq.md).

# FAQ

Get answers to frequently asked questions about the SiteConnect API, including features, technical behaviour, and integration details.

### Getting Started

<details>

<summary>How long does SiteConnect integration take?</summary>

Approximately **60 days from initiation to production**, including development, testing, certification and pilot phases.

For more details, review our [Integration Process](https://developer.siteminder.com/siteminder-apis/integration-process) guide.

</details>

<details>

<summary>What are the mandatory components to certify in SiteConnect?</summary>

**Mandatory:**

* Rooms and Rates
* Availability
* Stop Sell
* Rates (PDP or OBP)
* Reservations (Initial Delivery)

**Strongly Recommended:**

* Minimum Stay on Arrival
* Maximum Stay on Arrival
* Minimum Stay Through
* Maximum Stay Through
* Close to Arrival (CTA)
* Close to Departure (CTD)
* Reservation Modifications and Cancellations

</details>

<details>

<summary>What test credentials and resources will SiteMinder provide?</summary>

**SiteMinder will provide:**

* Test endpoints for reservations
* Username and Password for authentication
* RequestorID (channel code)
* Access to test Platform with pre-configured room types and rate plans
* WSDL files (Standard and Inlined versions)

**Booking Channel must provide:**

* Endpoint URL for Rooms and Rates retrieval
* Endpoint URL for receiving ARI updates (or single endpoint for both)
* Username and Password for SiteMinder to authenticate
* HotelCode for test property

</details>

### Authentication

<details>

<summary>What authentication method does SiteConnect use?</summary>

SiteConnect uses **WS-Security (WSSE) UsernameToken** authentication in the SOAP Security Header.

**Key Requirements:**

* Partners provide a single username and password that is global for all hotels
* All communication occurs over HTTPS for encryption
* Plain text passwords are acceptable within the encrypted HTTPS channel
* The `Password @Type` attribute must be: `http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText`

</details>

<details>

<summary>Does SiteConnect require separate credentials for each hotel?</summary>

No, SiteConnect uses **global authentication** where partners provide a single username and password that applies to all hotels.

**How it works:**

* The same authentication credentials are used across all properties
* The `HotelCode` attribute in each message identifies the specific property
* This simplifies credential management while maintaining clear property identification

**Example:** If you connect 100 hotels through SiteConnect, you use the same username and password for all messages, with each hotel distinguished by its unique HotelCode.

</details>

<details>

<summary>We're experiencing WS-Security compatibility issues between .NET and Java. How can we resolve this?</summary>

Compatibility issues can occur with WS-Security between .NET and Java frameworks.

**Solution:** Adjust .NET to accept WebRequests from Java. Refer to [WSSE Authentication for WebRequest/Response](https://www.codeproject.com/Articles/19339/WSSE-Authentication-for-WebRequest-Response) for detailed implementation guidance, including custom authentication modules.

</details>

<details>

<summary>Which Java libraries and versions are recommended for SiteConnect?</summary>

SiteMinder's SiteConnect test environment uses:

**Java Version:**

* Java(TM) SE Runtime Environment (build 1.6.0\_21-b06)
* Java HotSpot(TM) 64-Bit Server VM (build 17.0-b16, mixed mode)

**Framework:**

* Spring Web Services

**Required Libraries:**

* `spring-ws-core-1.5.9.jar`
* `spring-ws-security-1.5.9.jar`

**Note**: These are reference versions used in SiteMinder's environment. Newer compatible versions may also work.

</details>

### Core Concepts <a href="#core-concepts" id="core-concepts"></a>

<details>

<summary>What is the message exchange model for SiteConnect?</summary>

SiteConnect uses a **hybrid PUSH/PULL model**:

**PUSH (SiteMinder → Booking Channel):**

* Availability updates
* Restriction updates
* Rate updates

**PULL (Booking Channel → SiteMinder):**

* Rooms and Rates retrieval (on-demand when mapping is accessed)

**PUSH (Booking Channel → SiteMinder):**

* Reservations (new bookings, modifications, cancellations)

</details>

<details>

<summary>What data will be pushed during first-time connection?</summary>

When connecting to SiteConnect for the first time, the system will push **all Availability, Restrictions, and Rates data** to the booking channel. The requests will be sent back-to-back to ensure the booking channel receives all necessary data to synchronize inventory.

</details>

<details>

<summary>How many days in advance can SiteConnect send updates?</summary>

SiteConnect can send updates for availability, restrictions, and rates up to **750 days in advance**.

**Key Points:**

* The specific update period is configured by SiteMinder during channel setup
* Typical configurations range 365 to 750 days
* Each morning, the system automatically adds one new date at the end of the update period to maintain a rolling window

</details>

<details>

<summary>How does SiteConnect batch and send ARI updates?</summary>

**Update Frequency:**

* New update rounds are sent every **2 minutes**
* Only the most recent version of each room/rate/date combination is sent
* Updates per hotel are single-threaded, but multiple hotels update concurrently

**Message Structure:**

* Each message contains updates for **one room/rate pair only**
* Maximum payload: **210 days** (30 date elements × 7-day spans)
* Date ranges are bundled based on data consistency
* Only changed room/rate/date combinations are sent (delta updates)
* When triggered, ALL availability, rate, and restriction values for that combination are included

**Response Impact:**

* Update frequency depends on how quickly the booking channel responds
* Faster responses enable more frequent updates

</details>

<details>

<summary>Why do we see spikes in ARI updates at certain times?</summary>

ARI update patterns are **customer-driven**, not controlled by SiteMinder:

**Common Causes:**

* Revenue Management Systems (RMS) running scheduled calculations
* Hotels manually updating inventory during business hours
* Bulk updates across the update period
* Time zone differences creating regional activity peaks

**Important:** SiteMinder only passes through actual data changes. Non-delta changes are not forwarded to connectivity partners. Updates arrive as changes are made and as quickly as your system accepts them.

</details>

<details>

<summary>Does SiteConnect support release period?</summary>

No. When a property configures a release period in SiteMinder Platform, the system translates that internally into Stop Sell behaviour for the affected room rates and dates when sending to booking channels.

</details>

<details>

<summary>If a hotel disables/disconnects a channel in SiteMinder Platform, does it also disable in the respective channel extranet?</summary>

**Disabling a channel does not close it.**\
When a hotel disables a channel in the SiteMinder Platform, a warning is displayed confirming that this action does not close the connection with the channel. Once disabled, SiteMinder will stop sending ARI (availability, rates, and restrictions) updates to that channel, but the channel itself remains open and may continue to push reservations.

**Removing a channel connection**\
If a hotel wishes to permanently end a channel connection, it must:

1. Close the connection with the channel, via the channel's own extranet.
2. Remove the channel from the SiteMinder Platform.

If the channel is removed from the SiteMinder Platform while it remains open on the channel's side, any reservation the channel subsequently pushes will be rejected with an error indicating that no matching hotel code exists for the property.

> **Best practice:** Always close the connection on the third-party extranet first, and then remove the channel from the SiteMinder Platform. Following this order avoids reservation errors caused by orphaned connections.

</details>

### Technical Requirements

<details>

<summary>Can we connect using SOAP 1.2?</summary>

No, SiteConnect **only supports SOAP 1.1**. If your system uses SOAP 1.2, you must adjust it to use SOAP 1.1 for SiteConnect integration. This is a mandatory requirement.

</details>

<details>

<summary>What are the Content-Type requirements?</summary>

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

</details>

<details>

<summary>What SSL/TLS versions are supported?</summary>

SiteConnect supports **TLS 1.1 and above** (TLS 1.1, TLS 1.2, TLS 1.3).

**Requirements:**

* Production URI must use HTTPS
* SiteMinder does not support self-signed SSL certificates

</details>

<details>

<summary>What are the response time expectations?</summary>

**Optimal Performance:**

* Aim for **1-2 second average** response times
* Sub-1-second responses are ideal

**Timeout Limits:**

* SiteMinder enforces a **20-second timeout** for ARI update requests
* This is a failsafe - consistent timeouts or prolonged response times should not occur frequently

**Scalability Requirements:**

* Conduct thorough performance testing on production servers
* Ensure systems can scale with the number of connected hotels
* Must handle large data loads (up to 750 days) in short periods
* Must accommodate multiple properties going live simultaneousl

</details>

### Error Handling

<details>

<summary>Will SiteConnect retry failed ARI update requests?</summary>

Yes, SiteConnect has an automatic retry system for availability, restrictions, and rate messages:

**Retry Behavior:**

* Initial timeout: **15 seconds**
* Retry interval: Every **2 minutes**
* New requests queue until a successful response is received
* Connection may be disabled after extended outages

</details>

<details>

<summary>How should errors be returned in SiteConnect?</summary>

Errors must be:

* Returned within a **SOAP Envelope**
* Use the appropriate response message container:
  * `OTA_HotelAvailRS` for Rooms and Rates errors
  * `OTA_HotelAvailNotifRS` for Availability/Restrictions errors
  * `OTA_HotelRateAmountNotifRS` for Rate errors
  * `OTA_HotelResNotifRS` for Reservation errors
* Include appropriate error codes and descriptive error messages

**Important:** For application-level errors, respond with SOAP error messages. Only use HTTP standard error codes (503, 504, etc.) for server-level issues.

</details>

<details>

<summary>Why does SiteConnect accept and process new reservations for a disabled channel instead of returning an error?</summary>

SiteMinder **does not** validate on the active status (enabled/disabled) of the channel when receiving the reservations. \
Our Reservations validation only checks for XML format validation, auth/credentials in the SoapHeader and the HotelCode received in the XML.&#x20;

</details>

### Architecture

<details>

<summary>Are reservation messages processed atomically?</summary>

Yes. All messages in SiteConnect are **atomic** - either the entire message succeeds or the entire message fails.

If you receive an Error response while pushing reservation messages, **none** of the data in that message was processed. You must fix the error and resend the complete message.

</details>

<details>

<summary>What is the HotelCode and why is it important?</summary>

The **HotelCode** is a unique identifier for each property within your booking channel system.

**Requirements:**

* Must be unique for each property per booking channel
* Used in every message to identify which property the message relates to
* Provided by the booking channel and configured in SiteMinder during setup

**Function:** While authentication credentials are global across all hotels, the HotelCode ensures each message is routed to the correct property.

</details>

{% hint style="success" icon="sparkles" %}

## Still have questions?

Use the <i class="fa-gitbook-assistant">:gitbook-assistant:</i> **Ask** button at the top of the page to chat with our AI assistant — it can help you navigate the guide, understand requirements, and troubleshoot issues.

If you need more support, visit [Integration Support](/integration-support/integration-support.md).
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://developer.siteminder.com/siteconnect-api/additional-resources/faq.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
