Request for available rate
Rates can be locked and released directly in SIHOT.PMS. This is used if:
- Special rates are available for certain persons, like wholesaler or travel agents.
- Seasonal specials are introduced.
Direction
SIHOT.PMS ← SIHOT.WEB
Message
The request for available rates is only allowed for the interaction between SIHOT.WEB and SIHOT.PMS.
Special rates are e. g. needed for packages with weekend rates. If
special rates are requested for a guest, the element <MATCHCODE>
is
set.
<?xml version="1.0" encoding="ISO-8859-1"?>
<SIHOT-DOCUMENT>
<OC>RR</OC>
<ID>1</ID>
<FLAGS>SIMULATE-CITY-TAX;RETURNBOOKINGCONDITIONS;INCLUDE-FOLLOW-UP-SERVICES-DETAILED;INCLUDE-FOLLOW-UP-SERVICES</FLAGS>
<IDLIST>
<ID>1</ID>
<ID>2</ID>
</IDLIST>
<TN>1</TN>
<RESCHANNELLIST>
<RESCHANNEL>
<IDX>0</IDX>
<MATCHCODE>WHOLESALER</MATCHCODE>
<CENTRALGUEST-ID>123</CENTRALGUEST-ID>
</RESCHANNEL>
<RESCHANNEL>
<IDX>1</IDX>
<MATCHCODE>TRAVEL AGENT</MATCHCODE>
<CENTRALGUEST-ID>666</CENTRALGUEST-ID>
</RESCHANNEL>
</RESCHANNELLIST>
<MATCHCODE>GUBSE</MATCHCODE>
<CENTRALGUEST-ID>123456</CENTRALGUEST-ID>
<ALLOTMENT-NO>ALLOT-NO</ALLOTMENT-NO>
<SCOPE>ALL</SCOPE>
<!--compulsory -->
<ARATELIST>
<RATE>
<IDX>0</IDX>
<!--compulsory -->
<FROM>2013-08-22</FROM>
<TO>2013-08-23</TO>
<SID/>
<!--optional -->
<CAT/>
<!--optional -->
<NOROOMS>5</NOROOMS>
<!--optional -->
<PERS-TYPE>1A</PERS-TYPE>
<ROOM-OCCUPATION>
<PERS-TYPE>
<TYPE>1A</TYPE>
<NO>1</NO>
</PERS-TYPE>
<PERS-TYPE>
<TYPE>1B</TYPE>
<NO>1</NO>
</PERS-TYPE>
</ROOM-OCCUPATION>
</RATE>
<RATE>
<IDX>1</IDX>
<!--compulsory -->
<FROM>2013-09-01</FROM>
<TO>2013-09-01</TO>
<SID/>
<!--optional -->
<CAT/>
<!--optional -->
<NOROOMS>5</NOROOMS>
<!--optional -->
<PERS-TYPE>1A</PERS-TYPE>
<ROOM-OCCUPATION>
<PERS-TYPE>
<TYPE>1A</TYPE>
<NO>1</NO>
</PERS-TYPE>
<PERS-TYPE>
<TYPE>1B</TYPE>
<NO>1</NO>
</PERS-TYPE>
</ROOM-OCCUPATION>
</RATE>
</ARATELIST>
</SIHOT-DOCUMENT>
Elements | Description | Data type | Usage |
---|---|---|---|
FLAGS | See next table | String | Optional |
CURRENCY | Key for the currency | String | Optional |
RESCHANNELLIST | List of reservation channels | Optional | |
RESCHANNEL | Single reservation channel | Optional | |
IDX (reschannel) | Index of the reservation channel (0=client, 1 = travel agency, 2 = travel point) | Short | Optional |
MATCHCODE | Matchcode of the guest/company | String | Optional |
CENTRALGUEST-ID | Central guest id if HQ system is attached | Unsigned long | Optional |
ISPRICEOWNER | Used to indicate if the reservation channel is price owner | Char | Optional |
ALLOTMENT-NO | Internal number of the allotment. See notes below. | Long | Optional |
ALLOTMENT-EXT-NO | External number of the allotment. See notes below. | Long | Optional |
GUEST-RATE-TYPES | Used to indicate the rate types of the guests | String | Optional |
SCOPE | See following table for more details | String | Mandatory |
ARATELIST | List of requested rates | Mandatory | |
RATE | Block with requested rate data | Mandatory | |
IDX (rate) | Index of the rate, needed for proper assignment with the corresponding rate block in the answer | Short | Mandatory |
FROM | Start date of the requested rate | Date | Mandatory |
TO | End date of the requested rate | Date | Mandatory |
SID | Code for the requested rate | String | Optional |
CAT | Room type information for the requested rate | String | Optional |
NOROOMS | Number of rooms | Integer | Optional |
PERS-TYPE | Guest type | String | Optional |
RATE-SEGMENT | Rate segment | String | Optional |
DISCOUNT-GROUP | Discount group | String | Optional |
LOS | Length of stay | Integer | Optional |
LOS-ADD-TOLERANCE | Tolerance plus | Integer | Optional |
LOS-SUB-TOLERANCE | Tolerance minus | Integer | Optional |
ROOM-OCCUPATION | Block with special room occupation data | Optional | |
PERS-TYPE | Block with type and number of pax | Optional | |
TYPE | Person type | String | Optional |
NO | Number of pax for the given type | Integer | Optional |
RELEASE-CODE | This is only needed to get a more specific price when using rate schemes | String | Optional |
RELEASE-CODE-SPECIAL | This is only needed to get a more specific price when using rate schemes special | String | Optional |
FLAGS |
Description |
---|---|
SIMULATE-CITY-TAX | The response will contain city tax values. |
RETURN-ALL-CITY-TAX-AS-INCLUDED | All city tax which are not included, are calculated to the unit price and the <CITY-TAX-INCLUDED> |
RETURNBOOKINGCONDITIONS | The response contains information about the booking conditions. |
INCLUDE-FOLLOW-UP-SERVICES | The response contains the total amount of follow-up-services |
INCLUDE-FOLLOW-UP-SERVICES-DETAILED | The response contains detailed information about all follow up services |
RETURN-INTERSECTING-BOOKINGCONDITIONS | The response contains only the intersection booking rules. If date related booking rules intersect the standard booking rule will not returned |
Regarding to the attribute SCOPE
the request returns different
information. Following scopes are handled:
SCOPE |
Description |
---|---|
AVAILABLE | only available rates are send |
NOCOMISSION | if commissions are not required |
DAY-PRICES | if day-prices are required |
DESCRIPTIONS | If descriptions are required |
RESTRICTIONS | If restrictions are required |
USERESTRICTIONS | only restricted-free results are sent |
USEBOOKINGPERIODS | If the rate is not available in this period due to booking period restrictions, it’s not exported |
SUPPRESS-ZERO-PRICE | No zero rates are exported |
CONTAINERDETAILS | if package-container-details are required |
RETURNRULEINFOS | If rule handling is activated rule info can be retrieved with this scope |
ALL | Includes the scopes: DAY-PRICES, DESCRIPTIONS, RESTRICTIONS and CONTAINERDETAILS |
SKIP-HIDDEN-ROOM-TYPES | Room types hidden in PMS are not exported |
ONLY-RETURN-WEB-ROOM-TYPES | Only room types configured for SIHOT.WEB are exported, only available with version >= 3.0 send in element <VER> |
BEDS | If bed details are required (min-pax, max-pax, etc.) |
RETURNLOCKEDRATES | If locked rates are required |
ONLY-SERVICE | No packages, only services are exported* |
SERVICE-PACKAGES | Packages and services are exported* |
ONLY-WEB-SERVICES | These two scopes consider the settings if the packages should be considered as services or the other way round. This is configured in SIHOT.PMS and the setting is valid for SIHOT.WEB only.* |
ONLY-WEB-PACKAGES | |
PROCESSRATESCHEMA | Needs to be set if RELEASE-CODE and RELEASECODE-SPECIAL will be used |
SHOWALLCOUNTER | If this flag is set, the response contains all counter restriction blocks for the requested period, the RESTRICTIONS scope is therefore required. |
A combination of these values is also possible, e.g. AVAILABLE;NOCOMMISSION.
*By default, only packages are exported. Only none or exactly one of these scopes can be send.
Note: This request is done per night.
As shown above (<IDX>0</IDX>
) the request is from 2013-08-22 to 2013-08-23 means departure on 23rd.
Rate request for allotments
The request can contain the elements ALLOTMENT-NO and ALLOTMENT-EXT-NO. The ALLOTMENT-EXT-NO (external allotment number) is visible to the users in the SIHOT.PMS GUI, while the ALLOTMENT-NO is not. Both numbers are unique for a specific allotment and either one or both can be sent in the request. If both numbers are sent, they have to belong to the same allotment. Even if one of the elements if given, the result contains rates for the packages which are not linked to a specific allotment since assigning special rates to an allotment is optional in SIHOT.
Response
After an RR request, SIHOT.PMS sends the following answer:
<?xml version="1.0" encoding="ISO-8859-1"?>
<SIHOT-Document>
<VER>1.0</VER>
<OC>RR</OC>
<TN>1</TN>
<ID>1</ID>
<RC>0</RC>
<MSG>OK</MSG>
<ARATELIST>
<SYSTEM>
<ID>1</ID>
<RATE>
<IDX>0</IDX>
<FROM>2005-08-22</FROM>
<TO>2005-08-23</TO>
<SID>BR1</SID>
<BKZ/>
<CURRENCY>EUR</CURRENCY>
<CAT>DZ</CAT>
<IS-HIDDEN>N</IS-HIDDEN>
<PROCESSING>0</PROCESSING>
<T-PROCESSING>per room</T-PROCESSING>
<PERS-TYPE/>
<RATE-SEGMENT/>
<T-SID>rate 2</T-SID>
<T-CAT>Double Room</T-CAT>
<T-PERS-TYPE/>
<T-RATE-SEGMENT/>
<R>
<DAY-PRICE>
<D>2005-08-22</D>
<PPU>243</PPU>
<NO>33</NO>
<COMMISSIONS/>
</DAY-PRICE>
<DAY-PRICE>
<D>2005-08-23</D>
<PPU>243</PPU>
<CITY-TAX>0</CITY-TAX>
<CITY-TAX-INCLUDED>0</CITY-TAX-INCLUDED>
<FOLLOW-UP-SERVICES-AMOUNT>5</FOLLOW-UP-SERVICES-AMOUNT>
<FOLLOW-UP-SERVICES>
<SERVICE>
<SID>BR1</SID>
<PRICE>5</PRICE>
</SERVICE>
</FOLLOW-UP-SERVICES>
<CURRENCY>EUR</CURRENCY>
<NO>33</NO>
<COMMISSIONS/>
</DAY-PRICE>
</R>
<GUARANTEE-TYPE>PP</GUARANTEE-TYPE>
</RATE>
<RATE>
<IDX>1</IDX>
<FROM>2005-09-01</FROM>
<TO>2005-09-01</TO>
<SID>U2</SID>
<CAT>DZ</CAT>
<IS-HIDDEN>Y</IS-HIDDEN>
<PROCESSING>1</PROCESSING>
<T-PROCESSING>per person</T-PROCESSING>
<PERS-TYPE/>
<RATE-SEGMENT/>
<T-SID>rate 5</T-SID>
<T-CAT>Double Room</T-CAT>
<T-PERS-TYPE/>
<T-RATE-SEGMENT/>
<BOOKINGRULELIST>
<BOOKINGRULE>
<DATE-FROM>2016-10-01</DATE-FROM>
<DATE-TO>2016-10-30</DATE-TO>
<GUARANTEE-TYPE>4</GUARANTEE-TYPE>
<GUARANTEE-TYPE-DESC>Deposit fully paid</GUARANTEE-TYPE-DESC>
<CANCELLATION-TYPE>A</CANCELLATION-TYPE>
<CANCELLATION-TYPE-DESC>1 day prior to arrivaldate</CANCELLATION-TYPE-DESC>
<PREPAID-TYPE>PE</PREPAID-TYPE>
<PREPAID-TYPE-DESC>Prepaid Extern</PREPAID-TYPE-DESC>
</BOOKINGRULE>
</BOOKINGRULELIST>
<R>
<DAY-PRICE>
<D>2005-09-01</D>
<PPU>133</PPU>
<CITY-TAX>5</CITY-TAX>
<CITY-TAX-INCLUDED>0</CITY-TAX-INCLUDED>
<NO>33</NO>
<COMMISSIONS/>
</DAY-PRICE>
</R>
<GUARANTEE-TYPE>CC</GUARANTEE-TYPE>
</RATE>
</SYSTEM>
</ARATELIST>
</SIHOT-Document>
If the scope contains RETURNRULEINFOS additional information about rules
are provided in the RATE-Block (for details see Answer
<RATE>
…
<RULE>
<RULEID>R1</RULEID>
…
</RULE>
<RULE>
…
</RULE>
…
</RATE>
If the scope contains CONTAINERDETAILS
additional information about
package-container-entries are provided in the RATE-Block:
<RATE>
…
<CONTAINERDETAILS>
<CONTAINERENTRY>
<SID>LNP</SID>
<CURRENCY>NSP</CURRENCY>
<PERS-TYPE/>
<RATE-SEGMENT/>
<TOTAL-PPU>106</TOTAL-PPU>
</CONTAINERENTRY>
<CONTAINERENTRY>
<SID>VPK</SID>
<CURRENCY>CHF</CURRENCY>
<PERS-TYPE/>
<RATE-SEGMENT/>
<TOTAL-PPU>26.5</TOTAL-PPU>
</CONTAINERENTRY>
<CONTAINERENTRY>
<SID>LHP</SID>
<CURRENCY>HSP</CURRENCY>
<PERS-TYPE/>
<RATE-SEGMENT/>
<TOTAL-PPU>0</TOTAL-PPU>
</CONTAINERENTRY>
</CONTAINERDETAILS>
…
</RATE>
If counter restriction handling is active and the scope includes RESTRICTIONS, additional information about counter restrictions is provided in the restriction list block. It will contain always the lowest remaining counter item found for the given period. If you have equal counters (rate level and service allocation), it will return the rate level allocation item.
To see all counter items add the SHOWALLCOUNTER
flag to the scope.
<RATE>
…
<A-RESTRICT-LIST>
<COUNTER>
<TYPE>2</TYPE>
<SCOPE>30</SCOPE>
<REMAINING>27</REMAINING>
<DATE>2018-05-25</DATE>
<CAT/>
</COUNTER>
</A-RESTRICT-LIST>
…
</RATE>
Attribute/Element | Description | Data type |
---|---|---|
TYPE | 1 = Service level allocation 2 = Rate level allocation |
Integer |
SCOPE | Defined counter scope for this day | Integer |
REMAINING | Remaining counter for this day | Integer |
DATE | Date of this counter element | Date |
CAT | Category tag if the counter restriction is for a specific room category | String |
Attributes Response
Attribute/Element | Description | Data type |
---|---|---|
SYSTEM | Block that groups the requested IDs | |
ID | SIHOT.WEB ID | String |
RATE | Requested rates are exported in a RATE block | |
TOTAL-PPU | Charges for the requested rate | Decimal |
NO | free rooms for the requested rate | Integer |
NOOVB | available rooms for the requested rate, including overbooking defined in the PMS | Integer |
Explanation of RATE-block elements
Attribute/Element | Description | Data type |
---|---|---|
IDX | Index from the request | Long |
FROM | Start date | Date |
TO | End date | Date |
SID | Package code | String |
BKZ | Posting code. Possible values are: 1: only in Hotel 2: only in HQ 3: only in Top HQ |
Char |
ORDER | Number which represents the sorting on the invoice | Short |
CURRENCY | Currency code | String |
CAT | Room type | String |
IS-HIDDEN | Indicates if the rate is hidden or not. Possible values ‘Y’ or ‘N’ | Char |
PROCESSING | Indicates if the rate’s price is: 0: per room 1: per person 2: per reservation Possible values are: 0,1,2 |
Integer |
T-PROCESSING | Text of the processing value in the current language. Possible values in English: per room, per person, per reservation |
String |
CAT-BEDS | Exported if SCOPE contains BEDS | |
PERS-TYPE | Person type | String |
RATE-SEGMENT | Price segment | String |
GUEST-RATE-TYPES | Filter for guest rates | Long |
T-SID | Long description for the package | String |
T-CAT | Long description for the room type | String |
T-PERS-TYPE | Description for the guest type | String |
T-RATE-SEGMENT | Description for the price segment | String |
L-COMMENTS | Block with comments for the package, see here | |
RULE | Several blocks with rule information, see here | |
A-RESTRICT-LIST | Block with restriction data, see here | |
R | Block with daily rates | |
COMPANY-NR | Number of the company in SIHOT.PMS, if package is for a specific company | Long |
BOOKINGRULELIST | Block with BOOKINGRULE information | |
ALLOTMENT-NO | Internal allotment number, if the package is available for a specific allotment only | Long |
ALLOTMENT-EXT-NO | External allotment number, if the package is available for a specific allotment only. | Long |
GUARANTEE-TYPE | Guarantee type: “PP” for PrePaid or “CC” for Credit Card | Char 2 |
TRACKING-CODE | Corresponds to the Promo-Code from the reservation. | String |
Elements inside CAT-BEDS-Block
Element | Description | Data type |
---|---|---|
STD-PAX | Default number of guests in this room | Short |
MIN-PAX | Number of persons necessary for bookings | Short |
MAX-PAX | Max. number of base persons allowed | Short |
EXTRA-PAX | Max. number of extra persons allowed | Short |
Elements inside R-Block
Elements inside R-Block are returned in several DAY-PRICE-blocks which include the following elements:
Element | Description | Data type |
---|---|---|
D | Day | Date |
PPU | Price for this day | Decimal |
CITY-TAX | City tax price | Decimal |
CITY-TAX-INCLUDED | If true, the PPU value contains the city tax. This value is also true if the flag RETURN-ALL-CITY-TAX-AS-INCLUDED is set. | Bool |
FOLLOW-UP-SERVICE-AMOUNT | The total amount of all follow up services | Decimal |
FOLLOW-UP-SERVICES | Contains a list of the number and price of all follow up services | |
SERVICE | Block with follow up service | |
CURRENCY | Currency code | String |
NO | Number of free rooms | Integer |
NOOVB | Number of available rooms (including overbooking data) | Integer |
NO2STOPSELL | Number of free rooms until stop sell, only if stop sell is set | Integer |
NOOVB2STOPSELL | Number of available rooms until stop sell, only if stop sell is set | Integer |
CONTAINERDETAILS | Block with container details | |
COMMISSIONS | Block with several RESCHANNEL blocks |
Elements inside SERVICE block
Element | Description | Data type |
---|---|---|
SID | Service ID | String |
PRICE | Rate for the service | Decimal |
T-SID | Service description | String |
Elements in CONTAINERENTRY
The CONTAINERDETAILS –Block includes several CONTAINERENTRY blocks:
Element | Description | Data type |
---|---|---|
SID | Package code | String |
CURRENCY | Currency code | String |
PERS-TYPE | Guest type | String |
RATE-SEGMENT | Price segment | String |
PPU/TOTAL-PPU | Price/total price per unit | Decimal |
Elements inside RESCHANNEL-block
Element | Description | Data type |
---|---|---|
IDX | Commission index | Integer |
PC | Commission percentage | Decimal |
TOTAL | Commission amount | Decimal |
Elements in Block: BOOKINGRULELIST
The BOOKINGRULELIST –Block includes several BOOKINGRULE blocks:
Element | Description | Data type |
---|---|---|
GUARANTEE-TYPE | Code of the guarantee type | String |
GUARANTEE-TYPE-DESC | Description of the guarantee type | String |
CANCELLATION-TYPE | Code of the cancellation type | String |
CANCELLATION-TYPE-DESC | Description of the cancellation type | String |
PREPAID-TYPE | Code of the prepaid type | String |
PREPAID-TYPE-DESC | Description of the prepaid type | String |