Skip to content

Transmission of guests

Operationcode: GUEST

GUEST

Guests are directly transferred from SIHOT.PMS to SIHOT.WEB and from SIHOT.WEB to external systems.

Direction

SIHOT.PMS → SIHOT.WEB

SIHOT.WEB → External system

Message

<?xml version="1.0" encoding="ISO-8859-1"?>
<SIHOT-DOCUMENT>
    <OC>GUEST</OC>
    <ID>1</ID>
    <TN>1</TN>
    <RC>0</RC>
    <MSG>OK</MSG>
    <AGUESTLIST>
        <GUEST>
            <MATCHCODE>test2</MATCHCODE>
            <PWD>pass56</PWD>
            <ADDRESS/>
            <GUESTTYPE>
                <!-- 0 = Guest, 1 = Company -->
            </GUESTTYPE>
            <INTERNALGUESTTYPE>0</INTERNALGUESTTYPE>
            <TITLE/>
            <COMPANY-NAME>Company</COMPANY-NAME>
            <NAME/>
            <NAME2>und Co</NAME2>
            <DOB/>
            <STREET>Strasse</STREET>
            <ZIP>Postleitzahl</ZIP>
            <CITY>Stadt</CITY>
            <STATE>Region oder Bundesland</STATE>
            <COUNTRY>DE</COUNTRY>
            <COUNTRYDESCR>Deutschland</COUNTRYDESCR>
            <LANG>de</LANG>
            <PHONE1>Telefon1</PHONE1>
            <PHONE2>Telefon2</PHONE2>
            <FAX1>Fax1</FAX1>
            <FAX2>Fax2</FAX2>
            <EMAIL1>Email1</EMAIL1>
            <EMAIL2>Email2</EMAIL2>
            <CCNO>4111 1111 1111 1111</CCNO>
            <CCVAL>2004-12-12</CCVAL>
            <CCTYPE>VM</CCTYPE>
            <CVC>2323</CVC>
            <SPECIALPRICE>
                <!-- 0 = no Special price,1 = has special prices -->
            </SPECIALPRICE>
            <PERS-TYPE>AD</PERS-TYPE>
            <CENTRALGUEST-ID>675378456</CENTRALGUEST-ID>
            <CONTACT>
                <PERS-TYPE>AD</PERS-TYPE>
                <ADDRESS>Herr</ADDRESS>
                <TITLE>Dr</TITLE>
                <NAME>Name</NAME>
                <NAME2>Name2</NAME2>
                <STREET>Strasse</STREET>
                <ZIP>Postleitzahl</ZIP>
                <CITY>Stadt</CITY>
                <STATE>Region oder Bundesland</STATE>
                <COUNTRY>DE</COUNTRY>
                <PHONE1>Telefon1</PHONE1>
                <PHONE2>Telefon2</PHONE2>
                <FAX1>Fax1</FAX1>
                <FAX2>Fax2</FAX2>
                <EMAIL1>Email1</EMAIL1>
                <EMAIL2>Email2</EMAIL2>
            </CONTACT>
            <COMPANY>
                <MATCHCODE>matchcode of mother company</MATCHCODE>
                <PWD/>
                <CENTRALGUEST-ID/>
                <GUESTTYPE/>
            </COMPANY/>
        </GUEST>
    </AGUESTLIST>
</SIHOT-DOCUMENT>

Attributes Message

If <GUESTTYPE> is 0 = Guest, <CONTACT> contains the family member. If <GUESTTYPE> is 1 = Company, <CONTACT> contains the contact persons.

General

<AGUESTLIST> contains any number of <GUEST> elements. If the guest is a company, one contact person at maximum can be sent in the <CONTACT> element.

Element Description Data type
MATCHCODE Matchcode of the guest String
MATCHCODE-ADM Special Matchcode of the guest String
MATCHCODE-ISN Special Matchcode of the guest String
MATCHCODE-SM Special Matchcode of the guest String
PASSWORD Password of the guest String
PWD Password of the guest in lower cases String
CENTRALGUEST-ID Central guest ID of the guest Unsigned long
CENTRAL-COMPANY-ID Central ID of the guest’s company Unsigned long
OBJID Unique ID of the guest Unsigned long
PAYMENTINSTRUCTION-REFCOUNTER Counter for payment instructions for this guest profile (needs to be activated by SIHOT registry) long
LANG Language of the guest (ISO 639 coded). String
GUESTTYPE

0->Guest, 1->Company.

If the reg key “SIHOT.WEB”->” USEINTERNALGUESTTYPEFORRESPONSES” ist set, the internal guest type will be returned

Char
INTERNALGUESTTYPE Internal guest type Char
NAME Family name of the guest. If set, the orderer is an individual and <COMPANY> is empty String
COMPANY-NAME Name of the company String
TITLE Title of the guest String
DOB Date of birth Date
ADDRESS Address (see reservation) Char
NAME2 Last name String
STREET Street String
ZIP Postal code String
CITY Town String
STATE State String
COUNTRY Country (ISO 3166 (A2) coded). String
COUNTRYDESCR Long description for the country String
CCVAL Validity date of the credit card. Date
PERS-TYPE Guest type String
PHONE1 Phone number String
PHONE2 Alternative phone number String
FAX1 Fax number String
FAX2 Alternative fax number String
EMAIL1 e-mail String
EMAIL2 Alternative e-mail String
INVOICE-EMAIL The email address for invoices String
MOBIL1 Cell phone number String
MOBIL2 Alternative cell phone number String
T-SMOKER Guest is smoker String
LOYALTY-FLAG

User defined field.

Guest was asked about loyalty card (bitmask)

0 = initial value

1 = tbd

2 = tbd

4 = tbd

long
LOYALTY-DATE Date when the guest was asked the last time. Date
LOYALTY-STATUS

Status about the loyalty.

‘0’ = Declined

‘1’ = Accepted

2 = Ask later

‘\0’ = Initial Value

Char
T-TITLE Title ID String
DOCUMENT-TYPE Document type such as ID card, passport etc. String
DOCUMENT-NO Document number String
DOCUMENT-DATE Issue date for the document Date
DOCUMENT-EXPIRE-DATE Document expire date Date
DOCUMENT-EXPEDITION-COUNTRY Issuing country for the document String
DOCUMENT-SUBNR Sub number of the document String
DOCUMENT-SUBNR2 Second sub number of the document String
TAX-NUMBER1 Tax registration number 1 String
TAX-NUMBER2 Tax registration number 2 String
TAX-NUMBER3 Tax registration number 3 String
EMAIL-SUBSCRIPTION-HOTEL If, guest subscribes to email notification of the hotel such as newsletter, 1 = YES, 0 = No Char
EMAIL-SUBSCRIPTION-PARTNER If, guest subscribes to email notification of the hotel and their partners such as newsletter, 1 = YES, 0 = No Char
EMAIL-SUBSCRIPTION-DATE Email subscription date, applies to both fields, EMAIL-SUBSCRIPTION-HOTEL and EMAIL-SUBSCRIPTION-PARTNER Date
DATA-PROTECTION

Defines if the guest allows the storage of contact data

0 = NO

1 = YES

2 = Anonymization after check-out

Char
VIP VIP field of the guest String
VIP2 VIP2 field of the guest String
CCNO* Credit card number String
CCTYPE* Credit card type String
CCVAL* Expire date Date
RATE-TYPES Filter for available rates Long
SPECIALPRICE

0 = no special rates,

1 = special rates

Char

*In case of PCI compliance the credit card fields are not transferred.

Additional fields for companies

If the company has got a contact person, the CONTACT Block with following fields is exported:

Element Description Data type
TITLE Title of the contact person String
ADDRESS Salutation Char
NAME First name String
NAME2 Last name String
MATCHCODE Matchcode of the contact person String
OBJID Unique ID of the contact person Unsigned long
CENTRALGUEST-ID Central guest ID of the contact person Unsigned long
STREET Street String
ZIP Postal code String
CITY Town String
COUNTRY Country (ISO 3166 (A2) coded) String
COUNTRYDESCR Long description for the country String
PERS-TYPE Guest type String
LANG Language (ISO 639 coded) String
PHONE1 Phone number String
PHONE2 Alternative phone number String
FAX1 Fax number String
FAX2 Alternative fax number String
EMAIL1 e-mail String
EMAIL2 Alternative e-mail String
INVOICE-EMAIL The email address for invoices String
MOBIL1 Cell phone number String
MOBIL2 Alternative cell phone number String

Mother Company

If the guest has a mother company, following field are exported inside a COMPANY-Block:

Element Description Data type
MATCHCODE Matchcode of mother company String
PASSWORD Password of the mother company String
PWD Password of the mother company in lower cases String
CENTRALGUEST-ID Central guest ID of the mother company Unsigned long
GUESTTYPE “1” Char
COMPANY Name of the mother company String

ACARDLIST

The ACARDLIST Block contains several CARD-Blocks each containing the card data: | Element | Description | Data type | |--------------------|-----------------------------------------------|-----------| | NO | Card number | String | | TYPE | Credit card type | String | | VALID-FROM | Start date | Date | | VALID-TO (or VAL) | Expire date | Date | | HOLDER-NAME | Owner of the card | String | | STATUS | Card status (a=active, i=inactive, g=blocked) | Char | | STATUS-REASON | Reason for the card status | String | | EXT-REF | External reference | String | | CCHANDLE | Pseudo card number | String | | CCHANDLEVALIDUNTIL | Expire date of the pseudo card number | Date |

ASSIGNED-AS-CONTACT-PERSON-LIST

The ASSIGNED-AS-CONTACT-PERSON-LIST Block contains several COMPANY-Blocks each containing the card data: | Element | Description | Data type | |----------------------------|--------------------------------------------------------|---------------| | OBJID | OBJID of the company profile | Unsigned long | | CENTRALGUEST-ID | Central guest ID of the company profile | Unsigned long | | GUESTNO | Guest number of the company profile | Long | | GUESTTYPE | Guest type of the company profile | String | | LASTNAME | Last name of the company profile | String | | FIRSTNAME | First name of the company profile | String | | STATUS-AS-CONTACT-PERSON | Status of the contact person assigned to the company | String | | FUNCTION-AS-CONTACT-PERSON | Function of the contact person assigned to the company | String |

Response

This is the answer from SIHOT.WEB and/or from the external system:

<?xml version="1.0" encoding="ISO-8859-1"?>
<SIHOT-DOCUMENT>
    <OC>GUEST</OC>
    <ID>1</ID>
    <TN>1</TN>
    <RC>0</RC>
    <MSG>OK</MSG>
    <AGUESTLIST>
        <GUEST>
            <MATCHCODE>BERGER</MATCHCODE>
            <MATCHCODE-ADM/>
            <MATCHCODE-ISN/>
            <MATCHCODE-SM/>
            <PASSWORD/>
            <PWD/>
            <CENTRALGUEST-ID>0</CENTRALGUEST-ID>
            <OBJID>64</OBJID>
            <GUESTTYPE>0</GUESTTYPE>
            <NAME>Berger</NAME>
            <COMPANY-NAME/>
            <T-TITLE/>
            <TITLE/>
            <DOB/>
            <ADDRESS/>
            <NAME2/>
            <STREET/>
            <ZIP/>
            <CITY/>
            <STATE/>
            <COUNTRY/>
            <COUNTRYDESCR/>
            <PERS-TYPE/>
            <DISCOUNT-GROUP/>
            <LANG>DE</LANG>
            <PHONE1/>
            <PHONE2/>
            <FAX1/>
            <FAX2/>
            <EMAIL1/>
            <EMAIL2/>
            <MOBIL1/>
            <MOBIL2/>
            <DOCUMENT-TYPE/>
            <DOCUMENT-NO/>
            <DOCUMENT-DATE/>
            <DOCUMENT-EXPIRE-DATE/>
            <DOCUMENT-EXPEDITION-COUNTRY>
            </DOCUMENT-EXPEDITION-COUNTRY>
            <DOCUMENT-SUBNR/>
            <DOCUMENT-SUBNR2/>
            <TAX-NUMBER1/>
            <TAX-NUMBER2/>
            <TAX-NUMBER3/>
            <T-MAIL/>
            <EMAIL-SUBSCRIPTION-HOTEL>NO KEY
            </EMAIL-SUBSCRIPTION-HOTEL>
            <EMAIL-SUBSCRIPTION-PARTNER>NO KEY
            </EMAIL-SUBSCRIPTION-PARTNER>
            <EMAIL-SUBSCRIPTION-DATE/>
            <DATA-PROTECTION/>
            <VIP1/>
            <VIP2/>
            <T-DELETED>0</T-DELETED>
            <T-SMOKER/>
            <RATE-TYPES>0</RATE-TYPES>
            <SPECIALPRICE>0</SPECIALPRICE>
            <CONTACT>
                <TITLE>Professor Doktor</TITLE>
                <ADDRESS>2</ADDRESS>
                <NAME>Berger</NAME>
                <NAME2>Karin</NAME2>
                <MATCHCODE/>
                <MATCHCODE-ADM/>
                <MATCHCODE-ISN/>
                <MATCHCODE-SM/>
                <OBJID>176</OBJID>
                <CENTRALGUEST-ID>0</CENTRALGUEST-ID>
                <STREET/>
                <ZIP/>
                <CITY/>
                <COUNTRY>AE</COUNTRY>
                <COUNTRYDESCR>Vereinigte Arabische Emirate</COUNTRYDESCR>
                <PERS-TYPE>1A</PERS-TYPE>
                <DISCOUNT-GROUP/>
                <LANG>DE</LANG>
                <PHONE1>+49 40 1234567</PHONE1>
                <PHONE2/>
                <FAX1>+49 40 1234567</FAX1>
                <FAX2/>
                <EMAIL1/>
                <EMAIL2/>
                <MOBIL1/>
                <MOBIL2/>
            </CONTACT>
            <CONTACT>
                <TITLE/>
                <ADDRESS>1</ADDRESS>
                <NAME>Berger</NAME>
                <NAME2>Maxi</NAME2>
                <MATCHCODE/>
                <MATCHCODE-ADM/>
                <MATCHCODE-ISN/>
                <MATCHCODE-SM/>
                <OBJID>221</OBJID>
                <CENTRALGUEST-ID>0</CENTRALGUEST-ID>
                <STREET/>
                <ZIP/>
                <CITY/>
…
            </CONTACT>
            <ACARDLIST>
                <CARD>
                    <NO>4242424242424242</NO>
                    <TYPE>VI</TYPE>
                    <VALID-FROM>VI</VALID-FROM>
                    <VALID-TO>VI</VALID-TO>
                    <VAL>2011-01-31</VAL>
                    <HOLDER-NAME/>
                    <STATUS/>
                    <STATUS-REASON/>
                    <EXT-REF/>
                    <CCHANDLE/>
                    <CCHANDLEVALIDUNTIL/>
                </CARD>
            </ACARDLIST>
            <INVOICEHOLDER-LIST>
                <INVOICEHOLDER>
                    <PAYMENT-INST>0</PAYMENT-INST>
                    <ADDRESS>2</ADDRESS>
                    <PERS-ADDRESS>2</PERS-ADDRESS>
                    <CENTRALGUEST-ID>0</CENTRALGUEST-ID>
                    <CITY>Resort</CITY>
                    <CITY2/>
                    <COUNTRY>DE B</COUNTRY>
                    <COUNTRY-CODE>DE</COUNTRY-CODE>
                    <STATE>B</STATE>
                    <POST-AREA/>
                    <NATION/>
                    <DOB/>
                    <DOCUMENT-TYPE/>
                    <DOCUMENT-NUMBER/>
                    <DOCUMENT-EXPEDITIONCOUNTRY>
                    </DOCUMENT-EXPEDITIONCOUNTRY>
                    <DOCUMENT-EXPEDITIONDATE>
                    </DOCUMENT-EXPEDITIONDATE>
                    <DOCUMENT-EXPIREDATE>
                    </DOCUMENT-EXPIREDATE>
                    <DOCUMENT-SUBNR/>
                    <DOCUMENT-SUBNR2/>
                    <EMAIL1/>
                    <FAX1/>
                    <FAX2/>
                    <GUEST-TYPE>1</GUEST-TYPE>
                    <SEX>2</SEX>
                    <LANG>DE</LANG>
                    <MATCHCODE>MUELLER</MATCHCODE>
                    <MATCHCODE-SM/>
                    <NAME2>Hans</NAME2>
                    <NAME>Müller</NAME>
                    <NAME1X/>
                    <PHONE1/>
                    <PHONE2/>
                    <MOBIL1/>
                    <MOBIL2/>
                    <STREET>Hauptstraße</STREET>
                    <ZIP>66540</ZIP>
                    <INSURANCETYPE/>
                    <VIP/>
                    <VIP2/>
                    <PO-BOX/>
                    <INTERNET-PWD/>
                    <ADDRESS-CORRESPONDENCE>
                    </ADDRESS-CORRESPONDENCE>
                    <NAME-CORRESPONDENCE>
                    </NAME-CORRESPONDENCE>
                    <FIDELITYORDERERLIST>
                    </FIDELITYORDERERLIST>
                </INVOICEHOLDER>
            </INVOICEHOLDER-LIST>
        </GUEST>
    </AGUESTLIST>
</SIHOT-DOCUMENT>

Attributes Response

If = 0, the guest was created correctly. In all other cases, an error occurred:

RC MSG Description
0 OK Guest was created correctly.
1 PROCESSING OF THIS MESSAGE FAILED An unexpected error occurred during the creation of the guest. For further information check the log file named “SIHOTTOWEB.log”.
11 YOUR MESSAGE DOES NOT CONTAIN ANY GUESTS The elements or are not set.
12 ONE GUEST HAS NO MATCHCODE The element is not set or empty.
13 GUEST GROUP –XY- FROM GUEST –YZ- COULD NOT BE USED With the value of the element under element a creation of a person group is impossible.
14 GUEST DATA FROM GUEST –YZ- COULD NOT BE TRANSFORMED TO THE SIHOT.WEB DATABASE FORMAT An error occurred during the conversion of one or more elements of the element .
15 GUEST –YZ- COULD NOT INSERTED INTO THE SIHOT.WEB DATABASE The guest could not be write in the tables T_Gast and T_HotGast.
16 CONTACT PERSONS OF GUEST –YZ- COULD NOT BE USED During the creation of a contact person an error occurred. The elements of the contact person have to be checked.