# Points to remember

**Partial Updates**:

* RG Channel Manager will always send partial updates to the channel.
  * **Purpose**: Allows a hotel to change any specific field (Allocation/ClosedOut/any restriction/Pricing type) for a day.
  * **Validation**: There should not be any validation at the channel end to expect any mandatory field in the update.
* **Allocation**:
  * Manageable at Room level only by a channel partner.
  * Separate RQ for Allocation updates; other fields will be updated in another RQ.
* **Price**:
  * Channel Manager will reject any updates with price=0; this should not be supported for any channel partner.
* **MinLOS and MaxLOS Rule**:
  * MinLOS (Minimum Length of Stay) should always be lesser than or equal to MaxLOS (Maximum Length of Stay).
  * If MinLOS=4 and the current MaxLOS is 3 for the same product, the channel should fail the request with an error message.
* **Monthly Data Updates**:
  * Channel partners should accept an update with 1 month of data in a single RQ.
  * If there are 20 days updated for a month, RezGain will send 1 update RQ with all 20 days included.
* **Invalid Test Scenarios**:
  * Invalid credentials/HotelCode/RoomCode/RateCode cannot be tested through the sandbox; this will be validated during the certification process.
  * Only 14 days of updates can be tested through the sandbox tool.
* **Cross-Month Updates**:
  * Allows a hotel to update multiple dates across the month, e.g., 25 Jan-3 Feb in a single update RQ.
* **Cross-Year Updates**:
  * Allows a hotel to update multiple dates across the year, e.g., 25 Dec-3 Jan in a single update RQ.
* **Continuous and Discontinuous Dates**:
  * A request message can contain data for continuous and discontinuous dates as received from the hotel.

**Multithreading**:

* API should support multiple parallel updates for a single hotel with different Product Types (A Product is a combination of 1 RoomType + 1 RatePlan).
* Example of parallel updates to the `HotelARIUpdate` operation:
  * Update 1: RoomType A + RatePlan 1
  * Update 2: RoomType B + RatePlan 2
  * Update 3: RoomType C + RatePlan 3

| **Request#** | **HotelCode** | **RoomCode** | **RatePlanCode** | **StartDate** | **EndDate**               | **Updates Made**                             |
| ------------ | ------------- | ------------ | ---------------- | ------------- | ------------------------- | -------------------------------------------- |
| RQ1          | HTL1          | DLX          | STD              | 1-May-20      | <p>10-May-</p><p>20  </p> | <p>Allocation=10,</p><p>1Adult=250USD  </p>  |
| RQ2          | HTL1          | SUP          | BAR              | 1-May-20      | <p>10-May-</p><p>20  </p> | <p>Allocation=10,</p><p>1Adult=500USD  </p>  |
| RQ3          | HTL1          | SUI          | ADVP             | 1-May-20      | <p>10-May-</p><p>20  </p> | <p>Allocation=10,</p><p>1Adult=1000USD  </p> |

* &#x20;The partner should implement the API accordingly.           &#x20;
* Alternate date updates allow a hotel to update multiple days with non-continuous dates in a single Update RQ.
* Only 1 MealPlanCode can be supported for a given check-in date.
