OTA_UpdateInventoryRQ
This is not an official OTA message!
The method is only activated for individual OTA partners.
Example and end point:
No OTA standard attributes are used in the response.
UpdateInventory - Request via POST
Update Inventory Request (RQ) and Response (RS) using the example of the test hotel
authentication@login(Agent-Login): stringauthentication@password(Agent-Password): stringinventoryUpdate@hotelId(Hotel-ID): integer
Example UpdateInventory Request
<?xml version="1.0" encoding="UTF-8"?>
<message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<authentication login="my-agent-login" password="xxxxxx" />
<inventoryUpdate hotelId="7730">
<room id="32110">
<inventory>
<availability from="2022-11-06" to="2022-11-06" quantity="4" />
<availability from="2022-11-07" to="2022-11-08" quantity="3" />
<availability from="2022-05-01" to="2022-05-31" quantity="11" />
<availability from="2022-05-09" to="2022-05-10" quantity="0" />
</inventory>
</room>
<room id="32109">
<inventory>
<availability from="2022-11-17" to="2022-11-21" quantity="91" />
</inventory>
</room>
</inventoryUpdate>
</message>
Example of request with optional Rates and BookingRules / RestrictionStatus
When using the optional parameters @rateCode, the combined room and rate level availabilities processed.
Parameters:
@rateCode- RatePlan-Id or RatePlanCode-
@rateName- optional for rate name -
planning@from- the start date (YYYY-MM-DD) planning@to- the end date (YYYY-MM-DD)
The @rateCode can either be a string (BEST-BAR) or alternatively an offer ID (integer value) to be sent.
The rate plan code can be stored in the Kurzurlaub.de backend of the hotelier for each offer,
to map offers and rates in the OTA backend or hotel software better and more clearly.
Optional parameters for booking rules and restrictions
-
we normally ignore
LengthOfStayattributes, but can process it, if required- LengthOfStay (normally called
SetMinLOSorSetMaxLOS) can be sent optionally asminimumStayormaximumStay
- LengthOfStay (normally called
-
we process the
RestrictioninRestrictionStatuswithOpen/Closee.g.- Master
isClosed="false"oderisClosed="true") - Close to arrival - CTA
noArrival="false"odernoArrival="true") - Close to departure - CTD
noDeparture="false"odernoDeparture="true")
- Master
-
If rate is available and not closed a unit price per person can be send(
personCount="2" unitPrice="510.00") - RestrictionStatus with master
Openis usually sent (isClosed="false") - RestrictionStatus with master
Closeis sent (isClosed="true") with no rates for the persons - RestrictionStatus for Close to arrival (
noArrival="false" noDeparture="false" isClosed="false") - LengthOfStay (normally called
SetMinLOSorSetMaxLOS) can be sent optionally asminimumStayormaximumStay
Example CUSTOM_InventoryUpdateRQ Request to send rates and booking rules / RestrictionStatus
<inventoryUpdate hotelId="7730">
<room id="32110">
<inventory>
<availability from="2023-08-24" to="2023-08-24" quantity="6" />
</inventory>
<rate currency="EUR" rateCode="431774" rateName="TEST-BAR-KU-2PAX">
<planning from="2023-08-24" to="2023-08-24" minimumStay="3" maximumStay="4" noArrival="false" noDeparture="false" isClosed="false">
<occupancy personCount="1" unitPrice="1050.50" isClosed="false" />
<occupancy personCount="2" unitPrice="525.25" isClosed="false" />
</planning>
<planning from="2023-08-25" to="2023-08-25" minimumStay="3" maximumStay="4" noArrival="false" noDeparture="true" isClosed="false">
<occupancy personCount="1" unitPrice="1020.00" isClosed="false" />
<occupancy personCount="2" unitPrice="510.00" isClosed="false" />
</planning>
<planning from="2023-08-26" to="2023-08-26" minimumStay="3" maximumStay="4" noArrival="true" noDeparture="false" isClosed="false">
<occupancy personCount="1" unitPrice="1010.00" isClosed="false" />
<occupancy personCount="2" unitPrice="505.00" isClosed="false" />
</planning>
</rate>
...
<rate currency="EUR" rateCode="BEST-BAR" rateName="Best available rate">
<planning from="2023-08-24" to="2023-08-26" minimumStay="1" maximumStay="7" noArrival="true" noDeparture="true" isClosed="true">
<!-- send only isClosed without unitPrice -->
<occupancy personCount="1" isClosed="true" />
<occupancy personCount="2" isClosed="true" />
</planning>
</rate>
</room>
</inventoryUpdate>
Usually a <Success/> is sent in response or appropriate error messages
Example UpdateInventory Response
<?xml version="1.0" encoding="UTF-8"?>
<message xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
EchoToken="61d7255ffa4a667ac0eadfea4faeebcc" PrimaryLangID="de" TimeStamp="2022-03-08T14:40:51+01:00"
Target="Production" Version="2.01">
<Success/>
</message>