Skip to content


SIHOT.RMS SOAP interface

The SIHOT.RMS SOAP interface is the further development of the SIHOT POS interface from an Ascii-based interface to an XML-based one.


SIHOT.RMS webservices are SOAP services that are published via HTTPS. Depending on the use case and version there are more or less service endpoints available. On this documentation all publically available services for the current SIHOT version are documented. Example requests are provided on each message page. A complete WSDL file is available at


To consume a webservice an access token (securityID) is required within the message communication. This SecurityID is generated via an AuthenticationRequest. Check also Authentication for more details. A positive response will be communicated with a HTTP 200, and the body of the message gives the response detail. There are a range of negative responses, depending on the operation being performed. Successful responses may contain a payload which is formatted depending of the interface specification. The structure of the body depends on the type of request.


Even while the URLS for different locations may vary the below standard principals should apply. https://{DNS of service}/{customerid}/API/{protocol}/

This translates in example for a message of the SIHOT.PMS-RMS-Interface to:


  • Ordinal numbers for the configured way of transfer (depending on the configuration: supercat, middlecat, articlecat or articleno) have to be in the range from 1 to 100.
  • In case that the shift function is used, the range for supercat, middlecat, articlecat or articleno will be 1 to 25.
  • Shift numbers have to be in the range from 1 to 4, if used.
  • Cash register numbers/outlets have to be in the range from 1 to 30. We support 5 different vat rates.
  • The services are unique via the combination of VAT (VAT code), Cat ID and cash register number
  • A mapping of the services can be created on the part of the cash register company. The service numbers must then be sent in the ServiceID tag.
  • In a multi property environment, the mandator can be sent in the requests to find the correct account. In a standard installation, this tag should not be used since the interface will automatically search for the guest in the correct mandator.

Error codes

Error code Meaning
roomnotfound The given room is not created in the SIHOT.PMS
cardnotfound The given card number is not created in the SIHOT.PMS
roomnotoccupied The given room (by room- or card number) is not occupied.
noaccount The given account is not available
accountlocked The given account is locked
accountclosed The given account is already closed
accounthasnoowner The given account has no owner
illegaltype Syntax error in request
limitexceeded The limit of the given account is exceeded.
toolate The answer to the dayclose (dayclose or repdayclose) was received too late.
nobooking There was a request with no bookings.
nopaymenttypes In the SIHOT.PMS are no payment types configured.
illegalblocktype We expect a block service or payment.
multipleidents In an answer or request we found in a block an identifier more than one time.
identundefined There was answer or request with an unknown identifier.
illegalgroup The „group“-number (supercat, middlecat, articlecat or articleno) is not in the range of 1..100.
illegalcashno The number of the cash is out of the range 1..30.
unknownvat This VAT type is not available in the SIHOT.PMS.
vatnotsupported The given VAT is valid but not supported. Valid types are 1 – 5.
identundefined We found an invalid identifier in a block.
unknownpaymenttype This type of payment is not configured in the SIHOT.PMS.
internalerror Internal error. Additional information can be found in the extra-data.
uniqueid This data, identified by this uniqueid is not available.
guestmodify It was not possible to create / modify a guest.
gueststatistic It was not possible to set the static values for a guest.
couldnotcreatecrosspropertyposting It was not possible to create the chargeback posting.
unknownrequest The request was not recognized, normally a syntax problem in the request.
duplicateTransNo RMS detected a transno that was not bigger than the latest one received, so it discards the record to avoid posting the same items twice.