Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Formatting

This is part one of the asynchronuous method. The Hotel-Spider will poll the online booking system every minute to check if a reservation / modification / cancellation was made / modified / cancelled on the online booking system. When a reservation is available, the entire reservation should be returned to the Hotel-Spider system 

...

Two distincts endpoints should be provided by the online booking system when starting the integration. One for the staging / testing and one for the production.

Example

...

requests and response

Code Block
languagexml
titleUse case 1: Poll for unconfirmed reservations with stay dates in the future
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria SelectionType="Undelivered" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 2: Poll for confirmed reservations with stay dates in the future
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria SelectionType="PreviouslyDelivered" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 3: Poll for reservations with arrival date between Start and End
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria DateType="ArrivalDate" Start="2015-12-08T12:00:0+01:00" End="2015-12-15T12:00:00+01:00" SelectionType="All" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 4: Poll for reservations with reservation date between Start and End
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria DateType="CreateDate" Start="2015-12-08T12:00:0+01:00" End="2015-12-15T12:00:00+01:00" SelectionType="All" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 5: Poll for reservations with departure date between Start and End
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria DateType="DepartureDate" Start="2015-12-08T12:00:0+01:00" End="2015-12-15T12:00:00+01:00" SelectionType="All" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 6: Poll for reservations with modification date between Start and End
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria DateType="LastUpdateDate" Start="2015-12-08T12:00:0+01:00" End="2015-12-15T12:00:00+01:00" SelectionType="All" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 7: Poll for active reservations
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria ResStatus="Reserved" SelectionType="All" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 8: Poll for cancelled reservations
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest>
       <SelectionCriteria ResStatus="Cancelled" SelectionType="All" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 9: Poll for reservations for a specific hotel
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <ReadRequests>
     <HotelReadRequest HotelCode="HOTELCODE">
       <SelectionCriteria SelectionType="Undelivered" />
     </HotelReadRequest>
  </ReadRequests>
</OTA_ReadRQ>
Code Block
languagexml
titleUse case 10: Poll for a specific reservations
linenumberstrue
<OTA_ReadRQ Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <POS>
    <Source>
      <RequestorID ID="MASTERUSERNAME" MessagePassword="MASTERPASSWORD" />
    </Source>
  </POS>
  <UniqueID Type="14" ID="ABCD-668591" />
  <UniqueID Type="14" ID="DCBA-195866" />
 </OTA_ReadRQ>

...

Code Block
languagexml
titleOTA_ResRetrieveRS request
linenumberstrue
<OTA_ResRetrieveRS Target="Test" EchoToken="7571639933" TimeStamp="2015-11-12T18:05:39+01:00" Version="1.000">
  <ReservationsList>
    <HotelReservation ResStatus="Reserved" OriginalDeliveryMethodCode="11" RoomStayReservation="1" WalkInIndicator="0" CreateDateTime="2015-11-12T18:06:39+01:00" LastModifyDateTime="2015-11-12T18:06:40+01:00">
      <POS>
        <Source>
          <RequestorID ID="ONLINEBOOKINGSYSTEMIDENTIFIER" Type="22" />
          <BookingChannel Type="7">
            <CompanyName>ONLINEBOOKINGSYSTEMNAME</CompanyName>
          </BookingChannel>
        </Source>
      </POS>
      <RoomStays>
        <RoomStay IndexNumber="1" RoomStayStatus="Reserved">
          <RoomTypes>
            <RoomType RoomID="00L55bf507c63634" IsRoom="1">
              <RoomDescription Name="Double Room with lake view"/>
            </RoomType>
          </RoomTypes>
          <RoomRates>
            <RoomRate EffectiveDate="2015-11-20" ExpireDate="2015-11-20" RatePlanID="00L55cdbe855ce0b">
              <Rates>
                <Rate>
                  <Base CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="162.00"/>
                  <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="162.00"/>
                </Rate>
              </Rates>
              <RoomRateDescription>
                <Text>Best Available Rate</Text>
              </RoomRateDescription>
            </RoomRate>
            <RoomRate EffectiveDate="2015-11-21" ExpireDate="2015-11-21" RatePlanID="00L55cdbe855ce0b">
              <Rates>
                <Rate>
                  <Base CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="162.00"/>
                  <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="162.00"/>
                </Rate>
              </Rates>
              <RoomRateDescription>
                <Text>Best Available Rate</Text>
              </RoomRateDescription>
            </RoomRate>
          </RoomRates>
          <GuestCounts>
            <GuestCount AgeQualifyingCode="10" Count="1"/>
          </GuestCounts>
          <TimeSpan Start="2015-11-20" End="2015-11-22" Duration="P2D"/>
          <CancelPenalties>
            <CancelPenalty>
              <Deadline AbsoluteDeadline="2015-11-18T00:00:00+01:00"/>
              <AmountPercent FeesInclusive="1" Amount="162.00" CurrencyCode="CHF"/>
              <PenaltyDescription Name="free cancellation 48 hours"/>
            </CancelPenalty>
          </CancelPenalties>
          <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="324.00"/>
          <BasicPropertyInfo HotelCode="HOTELCODE" HotelName="HOTELNAME" CurrencyCode="CHF"/>
          <ResGuestRPHs>1</ResGuestRPHs>
        </RoomStay>
        <RoomStay IndexNumber="2" RoomStayStatus="Reserved">
          <RoomTypes>
            <RoomType RoomID="00L55bf507c63634" IsRoom="1">
              <RoomDescription Name="Double Room with lake view"/>
            </RoomType>
          </RoomTypes>
          <RoomRates>
            <RoomRate EffectiveDate="2015-11-20" ExpireDate="2015-11-20" RatePlanID="00L55cdbe855ce0b">
              <Rates>
                <Rate>
                  <Base CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="143.00"/>
                  <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="143.00"/>
                </Rate>
              </Rates>
              <RoomRateDescription>
                <Text>Best Available Rate</Text>
              </RoomRateDescription>
            </RoomRate>
            <RoomRate EffectiveDate="2015-11-21" ExpireDate="2015-11-21" RatePlanID="00L55cdbe855ce0b">
              <Rates>
                <Rate>
                  <Base CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="143.00"/>
                  <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="143.00"/>
                </Rate>
              </Rates>
              <RoomRateDescription>
                <Text>Best Available Rate</Text>
              </RoomRateDescription>
            </RoomRate>
          </RoomRates>
          <GuestCounts>
            <GuestCount AgeQualifyingCode="10" Count="1"/>
          </GuestCounts>
          <TimeSpan Start="2015-11-20" End="2015-11-22" Duration="P2D"/>
          <CancelPenalties>
            <CancelPenalty>
              <Deadline AbsoluteDeadline="2015-11-18T00:00:00+01:00"/>
              <AmountPercent FeesInclusive="1" Amount="162.00" CurrencyCode="CHF"/>
              <PenaltyDescription Name="free cancellation 48 hours"/>
            </CancelPenalty>
          </CancelPenalties>
          <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="286.00"/>
          <BasicPropertyInfo HotelCode="HOTELCODE" HotelName="HOTELNAME" CurrencyCode="CHF"/>
          <ResGuestRPHs>2</ResGuestRPHs>
        </RoomStay>
      </RoomStays>
      <ResGuests>
        <ResGuest ResGuestRPH="1">
          <Profiles>
            <ProfileInfo>
              <Profile ProfileType="1">
                <Customer MaritalStatus="Unknown" Gender="Unknown">
                  <PersonName>
                    <GivenName>James</GivenName>
                    <Surname>Bond</Surname>
                  </PersonName>
                  <Email>jamesbond@secretmail.ch</Email>
                  <Address>
                    <StreetNmbr>2</StreetNmbr>
                    <AddressLine>Bahnhofstrasse</AddressLine>
                    <CityName>Zurich</CityName>
                    <PostalCode>1000</PostalCode>
                    <County>Zurich</County>
                    <StateProv>Zurich</StateProv>
                    <CountryName Code="CH">Switzerland</CountryName>
                  </Address>
                </Customer>
              </Profile>
            </ProfileInfo>
          </Profiles>
        </ResGuest>
        <ResGuest ResGuestRPH="2">
          <Profiles>
            <ProfileInfo>
              <Profile ProfileType="1">
                <Customer MaritalStatus="Unknown" Gender="Unknown">
                  <PersonName>
                    <GivenName>Money</GivenName>
                    <Surname>Penny</Surname>
                  </PersonName>
                  <Email>moneypenny@secretmail.ch</Email>
                  <Address>
                    <StreetNmbr>2</StreetNmbr>
                    <AddressLine>Bahnhofstrasse</AddressLine>
                    <CityName>Zurich</CityName>
                    <PostalCode>1000</PostalCode>
                    <County>Zurich</County>
                    <StateProv>Zurich</StateProv>
                    <CountryName Code="CH">Switzerland</CountryName>
                  </Address>
                </Customer>
              </Profile>
            </ProfileInfo>
          </Profiles>
        </ResGuest>
      </ResGuests>
      <ResGlobalInfo>
        <GuestCounts>
          <GuestCount AgeQualifyingCode="10" Count="2"/>
        </GuestCounts>
        <TimeSpan Start="2015-11-20" End="2015-11-22" Duration="P2D"/>
        <Comments>
          <Comment>
            <Text>They are on a secret mission</Text>
          </Comment>
        </Comments>
        <Guarantee GuaranteeType="CC/DC/Voucher">
          <GuaranteesAccepted>
            <GuaranteeAccepted>
              <PaymentCard CardCode="MC" ExpireDate="0717">
                <CardHolderName>Gareth Mallory</CardHolderName>
                <CardNumber Mask="xxxxxxxxxxxx1111">4111111111111111</CardNumber>
              </PaymentCard>
            </GuaranteeAccepted>
          </GuaranteesAccepted>
        </Guarantee>
        <Total CurrencyCode="CHF" AmountBeforeTax="0.00" AmountAfterTax="324.00"/>
        <HotelReservationIDs>
          <HotelReservationID ResID_Source="ONLINEBOOKINGSYSTEMID" ResID_SourceContext="ONLINEBOOKINGSYSTEMNAME" ResID_Type="14" ResID_Value="ABCD-668591"/>
        </HotelReservationIDs>
        <Profiles>
          <ProfileInfo>
            <Profile ProfileType="1">
              <Customer MaritalStatus="Unknown" Gender="Unknown">
                <PersonName>
                  <GivenName>Gareth</GivenName>
                  <Surname>Mallory</Surname>
                </PersonName>
                <Email>garethmallory@secretmail.ch</Email>
                <Address>
                  <StreetNmbr>2</StreetNmbr>
                  <AddressLine>Bahnhofplatz</AddressLine>
                  <CityName>Winterthur</CityName>
                  <PostalCode>4104</PostalCode>
                  <County>Winterthur</County>
                  <StateProv>Winterthur</StateProv>
                  <CountryName Code="CH">Switzerland</CountryName>
                </Address>
              </Customer>
            </Profile>
          </ProfileInfo>
          <ProfileInfo>
            <Profile ProfileType="4">
              <CompanyInfo>
                <CompanyName>Her Majesty's secret services</CompanyName>
                <Email>quartermaster@secretmail.ch</Email>
                <AddressInfo>
                  <StreetNmbr>2</StreetNmbr>
                  <AddressLine>Bahnhofplatz</AddressLine>
                  <CityName>Winterthur</CityName>
                  <PostalCode>4104</PostalCode>
                  <County>Winterthur</County>
                  <StateProv>Winterthur</StateProv>
                  <CountryName Code="CH">Switzerland</CountryName>
                </AddressInfo>
              </CompanyInfo>
            </Profile>
          </ProfileInfo>
        </Profiles>
        <BasicPropertyInfo HotelCode="00L55bf2f4e6c708" HotelName="Hôtel du Port" CurrencyCode="CHF"/>
      </ResGlobalInfo>
    </HotelReservation>
  </ReservationsList>
</OTA_ResRetrieveRS>

...

Mandatory: yes

Attributes:

NameMandatoryDescription
TimeStampYesThe format should respect the ISO 8601 2015-11-16T22:23:48+00:00
TargetYes

When sending updates to the staging environment "Test" must be used.

When sending updates to the production environment "Production" must be used.

VersionYes

The default value should be "1.000"

EchoTokenYesThe value will be returned in the OTA_HotelResNotifRS response

Child elements: POSHotelReservations

...

Parent: OTA_ReadRQ

Mandatory: No

Attributes:

NameMandatoryDescription
TypeYes

Possible values are:

  • 14 (Reservation)
  • 15 (Cancellation) 
IDYesThe reservation number as assigned by the online booking system and communicated to the end customer/guest 

Child elements: None


ReadRequests

...

Mandatory: yes (when ReadRequests is used)

Attributes:

NameMandatoryDescription
HotelCodeNoThe ID of the hotel as defined on the online booking system

Child elements: SelectionCriteria

...

Mandatory: yes (when ReadRequests is used)

Attributes:

NameMandatoryDescription
DateTypeNo 

Possible values are:

 
  • ArrivalDate
  • CreateDate
  • DepartureDate
  • LastUpdateDate
     
ResStatusNo

Possible values are:

 
  • Reserved
  • Cancelled
SelectionTypeNo

Possible values are:

 
  • All
  • PreviouslyDelivered
  • Undelivered
StartNoThe format will respect the ISO 8601 2015-11-16T22:23:48+00:00
EndNoThe format will respect the ISO 8601 2015-11-16T22:23:48+00:00

Child elements: None


Response structure

...

Mandatory: yes

Attributes:

NameMandatoryDescription
TimeStampYesThe format should respect the ISO 8601 2015-11-16T22:23:48+00:00
TargetYes

When sending updates to the staging environment "Test" must be used.

When sending updates to the production environment "Production" must be used.

VersionYes

The default value should be "1.000"

EchoTokenYesThe value from the OTA_ReadRQ should be returned

Child elements: POSReservationsList

...

Mandatory: yes

Attributes:

NameMandatoryDescription
ResStatusYes

Possible values are:

  • Reserved
  • Modify
  • Cancelled
OriginalDeliveryMethodCodeNoThe default value should be "11" for

.

RoomStayReservationNo

The default value should be "1.000"

WalkInIndicatorNoThe value will be returned in the OTA_HotelResNotifRS response
CreateDateTimeYesThe format should respect the ISO 8601 2015-11-16T22:23:48+00:00
LastModifyDateTimeYesThe format should respect the ISO 8601 2015-11-16T22:23:48+00:00

Child elements: RoomStays, ResGuests, Services, ResGlobalInfo

...

Mandatory: yes

Attributes:

NameMandatoryDescription
IndexNumberYesUnique identifier of this specific room stay.
RoomStayStatusYes

Possible values are:

  • Reserved 
  • Cancelled

Child elements: RoomTypes, RoomRates, GuestCounts, TimeSpan, CancelPenalties, Total, BasicPropertyInfo, ResGuestRPHs, ServiceRPHs

...

Mandatory: yes

Attributes:

NameMandatoryDescription
RoomIDYes

The ID of the room as defined on the online booking system. This value should be retrievable via the methods described in Retrieving the room types and the rate plans

IsRoomNoThe default value should be "1"

Child elements: RoomDescription

...

Mandatory: yes

Attributes:

NameMandatoryDescription
NameYes

The name of the room as defined on the online booking system. This value should be retrievable via the methods described in Retrieving the room types and the rate plans

Child elements: None


RoomRates

...

Mandatory: yes

Attributes:

NameMandatoryDescription
EffectiveDateYes

The day on which this rate plan was applied for a reservation. The format should respect the ISO 8601 2015-11-16

ExpireDateNoThe day on which this rate plan was applied for a reservation. The format should respect the ISO 8601 2015-11-16
ExpireDateExclusiveIndNoIn the case of a date span, should the ExpireDate be included (ExpireDateExclusiveInd="0") or excluded (ExpireDateExclusiveInd="1")
RatePlanIDYesThe ID of the rate plan as defined on the online booking system.This value should be retrievable via the methods described in Retrieving the room types and the rate plans

Child elements: Rates, RoomRateDescription

...

Mandatory: yes

Attributes:

NameMandatoryDescription
CurrencyCodeYes

The day on which this rate plan was applied for a reservation. The format should respect the ISO 8601 2015-11-16

AmountBeforeTax / AmountAfterTaxYesThe day rate for this specific product (room type + rate plan) without any additional services

Child elements: None

Note
titleProvide a day rate
The price provided should be applicable per day and only for one room stay.

...

Mandatory: yes

Attributes:

NameMandatoryDescription
CurrencyCodeYes

The day on which this rate plan was applied for a reservation. The format should respect the ISO 8601 2015-11-16

AmountBeforeTax / AmountAfterTaxYesThe day rate for this specific product (room type + rate plan) with additional services

Child elements: None

Note
titleProvide a day rate
The price provided should be applicable per day and only for one room stay.

...

Mandatory: yes

Attributes:

NameMandatoryDescription
AgeQualifyingCodeNo

Possible values are:

  • 7 (Infant) 
  • 8 (Child)
  • 9 (Teenager)
  • 10 (Adult) 
  • 11 (Senior)
CountYes

The number of guests for this specific room stay within a specific age category.

Child elements: None

Info
titleDefault AgeQualifyingCode
Should no AgeQualifyingCode attribute be provided, the Hotel-Spider system will assume that the guest count applies for adults (10).

...

Mandatory: yes

Attributes:

NameMandatoryDescription
StartYes

The arrival day for this room stay. The format should respect the ISO 8601 2015-11-16

EndYes

The departure day for this room stay. The format should respect the ISO 8601 2015-11-16

DurationNoThe number of nights for this room stay. The format should respects the ISO 8601 format PnYnMnDTnHnMnS

Child elements: None

 

Total

...

Mandatory: yes

Attributes:

 

Name
Mandatory
Description
CurrencyCodeYesThe currency in which the price is transmitted. The format will be provided in ISO 4214
AmountBeforeTaxNoThe price for this particular room stay without any taxes
AmountAfterTaxNoThe price for this particular room stay with taxes

 

Child elements: None

Price for the room night + services

 
The value in the Total element will reflect the price of the room stay with any additional services.

...

Mandatory: yes

Attributes:

NameMandatoryDescription
HotelCodeYes

The ID of the hotel as defined on the online booking system

HotelNameYes

The name of the hotel as defined on the online booking system

CurrencyCodeNoThe currency code that has been configured for the hotel on the online booking system.

Child elements: None

Info
titleBasicPropertyInfo per room stay vs BasicPropertyInfo per reservation
Although the vast majority of the reservations transmitted to the Hotel-Spider system will only contain room stays for one single hotel, technically, in accordance with the OTA protocol, it is possible to book multiple room stays across multiple properties. For this reason, the BasicPropertyInfo must always be provided on room stay level.

...

Mandatory: yes

Attributes:

NameMandatoryDescription
IsPerRoomNo

The default value should be "1"

RPHYes

An integer that will uniquely link a service described in the Service element to a RoomStay

Child elements: None


ResGuests

...

Mandatory: yes

Attributes:

NameMandatoryDescription
ResGuestRPHYes

An integer that will uniquely link the current guest profile to a RoomStay

Child elements: Profiles


Profiles

...

Mandatory: yes

Attributes:

NameMandatoryDescription
ProfileTypeYes

Possible values are:

  • 1 (Customer) 
  • 4 (Company)
  • 5 (Travel Agency)

Child elements: Customer, CompanyInfo

...

ProfileType

Mandatory: No

Attributes:

NameMandatoryDescription
PhoneTechTypeYes

Possible values are:

  • 1 (Voice) 
  • 3 (Fax)
  • 5 (Mobile)
PhoneNumberYesThe numerical string representing the telephone number
FormattedIndnoIs the telephone number provided formatted or unformatted
CountryAccessCodenoCode assigned by telecommunications authorities for international country access identifier
AreaCityCodenoCode assigned for telephones in a specific region, city or area

Child elements: None

Info
titleFormattedInd attribute
When the FormattedInd attribute is set, the CountryAccessCode, the AreaCityCode and the PhoneNumber attributes should contain the appropriate information.

...

ProfileType: 1 (Customer)

Mandatory: no

Attributes:

NameMandatoryDescription
FormattedIndNoWhen the address is unformatted (FormattedInd="false") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence.

Child elements: StreetNmbr, AddressLine, PostalCode, CityName, County, StateProv, CountryName

...

ProfileType: 1 (Customer)

Mandatory: no

Attributes:

NameMandatoryDescription
CodeYesISO 3166 alpha 2 code for a county

Child elements: None

Tip
titleCountryName

The CountryName can also be transmitted for readability.

...

ProfileType: 3 (Company), 4 (Travel Agency)

Mandatory: No

Attributes:

NameMandatoryDescription
PhoneTechTypeYes

Possible values are:

  • 1 (Voice) 
  • 3 (Fax)
  • 5 (Mobile)
PhoneNumberYesThe numerical string representing the telephone number
FormattedIndnoIs the telephone number provided formatted or unformatted
CountryAccessCodenoCode assigned by telecommunications authorities for international country access identifier
AreaCityCodenoCode assigned for telephones in a specific region, city or area

Child elements: None

Info
titleFormattedInd attribute
When the FormattedInd attribute is set, the CountryAccessCode, the AreaCityCode and the PhoneNumber attributes should contain the appropriate information.

...

ProfileType: 3 (Company), 4 (Travel Agency)

Mandatory: no

Attributes:

NameMandatoryDescription
FormattedIndNoWhen the address is unformatted (FormattedInd="false") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence.

Child elements: StreetNmbr, AddressLine, PostalCode, CityName, County, StateProv, CountryName

...

ProfileType: 3 (Company), 4 (Travel Agency)

Mandatory: no

Attributes:

NameMandatoryDescription
CodeYesISO 3166 alpha 2 code for a county

Child elements: None

Tip
titleCountryName

The CountryName can also be transmitted for readability.

...

Mandatory: yes

Attributes:

NameMandatoryDescription
AgeQualifyingCodeNo

Possible values are:

  • 7 (Infant) 
  • 8 (Child)
  • 9 (Teenager)
  • 10 (Adult) 
  • 11 (Senior)
CountYes

The total number of guests for this specific reservation within a specific age category.

Child elements: None

Info
titleDefault AgeQualifyingCode
Should no AgeQualifyingCode attribute be provided, the Hotel-Spider system will assume that the guest count applies for adults (10).

...

Parent: ResGlobalInfo

Mandatory: no

Attributes:

NameMandatoryDescription
StartYes

The arrival day for this reservation. The format should respect the ISO 8601 2015-11-16

EndYes

The departure day for this reservation. The format should respect the ISO 8601 2015-11-16

DurationNoThe number of nights for this reservation. The format should respects the ISO 8601 format PnYnMnDTnHnMnS

Child elements: None

Warning
titleNo TimeSpan with different stay dates
Should the arrival and departure dates be different accross the different room stays, then the TimeSpan attribute must not be provided in the ResGlobalInfo container.

...

Parent: ResGlobalInfo

Mandatory: no

Attributes:

NameMandatoryDescription
GuaranteeTypeYes

Possible values are:

  • CC/DC/Voucher
  • Deposit
  • Profile

Child elements: GuaranteesAccepted

...

Parent: ResGlobalInfo

Mandatory: no

Attributes:

NameMandatoryDescription
CardCodeYes

Possible values are:

  • AX (American Express)
  • BC (Bank Card)
  • BL (Carte Bleu)
  • CB (Carte Blance)
  • DN (Diners Club)
  • DS (Discover Card)
  • EC (Eurocard)
  • JC (Japanese Credit Bureau Credit Card)
  • MA (Maestro / Switch)
  • MC (Mastercard)
  • TP (Universal Air Travel Card)
  • VI (Visa)
ExpireDateYesThe expire date of the payment card. The format provided should be mmYY

Child elements: CardHoldername, CardNumber

...

Parent: PaymentCard

Mandatory: No

Attributes:

Name
Mandatory
Description
MaskNo

The masked version of the credit card number. Only the last 4 digits will be displayed.

Child elements: None


Total

...

Mandatory: yes

Attributes:

 

Name
Mandatory
Description
CurrencyCodeYesThe currency in which the price is transmitted. The format will be provided in ISO 4214
AmountBeforeTaxNoThe price for this particular day without any taxes
AmountAfterTaxNoThe price for this particular day with taxes

 

Child elements: None

Price for the room nights + services

 
The value in the Total element will reflect the sum of the room nights with any additional services.

...

Mandatory: yes

Attributes:

NameMandatoryDescription
ResID_TypeYes

Possible values are:

  • 14 (Reservation) 
  •     15 (Cancellation)
ResID_ValueYes

The reservation number as provided by the online booking system to the end customer/guest

ResID_SourceContextNoThe name of the online booking system
ResID_SourceYesThe ID of the online booking system as defined on the Hotel-Spider system.

Child elements: None

 

Profiles

...

Mandatory: yes

Attributes:

NameMandatoryDescription
ProfileTypeYes

Possible values are:

  • 1 (Customer) 
  • 4 (Company)
  • 5 (Travel Agency)

Child elements: Customer, CompanyInfo

...

ProfileType

Mandatory: No

Attributes:

NameMandatoryDescription
PhoneTechTypeYes

Possible values are:

  • 1 (Voice) 
  • 3 (Fax)
  • 5 (Mobile)
PhoneNumberYesThe numerical string representing the telephone number
FormattedIndnoIs the telephone number provided formatted or unformatted
CountryAccessCodenoCode assigned by telecommunications authorities for international country access identifier
AreaCityCodenoCode assigned for telephones in a specific region, city or area

Child elements: None

Info
titleFormattedInd attribute
When the FormattedInd attribute is set, the CountryAccessCode, the AreaCityCode and the PhoneNumber attributes should contain the appropriate information.

...

ProfileType: 1 (Customer)

Mandatory: no

Attributes:

NameMandatoryDescription
FormattedIndNoWhen the address is unformatted (FormattedInd="false") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence.

Child elements: StreetNmbr, AddressLine, PostalCode, CityName, County, StateProv, CountryName

...

ProfileType: 1 (Customer)

Mandatory: no

Attributes:

NameMandatoryDescription
CodeYesISO 3166 alpha 2 code for a county

Child elements: None

Tip
titleCountryName

The CountryName can also be transmitted for readability.

...

ProfileType: 3 (Company), 4 (Travel Agency)

Mandatory: No

Attributes:

NameMandatoryDescription
PhoneTechTypeYes

Possible values are:

  • 1 (Voice) 
  • 3 (Fax)
  • 5 (Mobile)
PhoneNumberYesThe numerical string representing the telephone number
FormattedIndnoIs the telephone number provided formatted or unformatted
CountryAccessCodenoCode assigned by telecommunications authorities for international country access identifier
AreaCityCodenoCode assigned for telephones in a specific region, city or area

Child elements: None

Info
titleFormattedInd attribute
When the FormattedInd attribute is set, the CountryAccessCode, the AreaCityCode and the PhoneNumber attributes should contain the appropriate information.

...

ProfileType: 3 (Company), 4 (Travel Agency)

Mandatory: no

Attributes:

NameMandatoryDescription
FormattedIndNoWhen the address is unformatted (FormattedInd="false") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence.

Child elements: StreetNmbr, AddressLine, PostalCode, CityName, County, StateProv, CountryName

...

ProfileType: 3 (Company), 4 (Travel Agency)

Mandatory: no

Attributes:

NameMandatoryDescription
CodeYesISO 3166 alpha 2 code for a county

Child elements: None

Tip
titleCountryName

The CountryName can also be transmitted for readability.

...

Parent: ResGlobalInfo

Mandatory: No

Attributes:

NameMandatoryDescription
HotelCodeYes

The ID of the hotel as defined on the online booking system

HotelNameYes

The name of the hotel as defined on the online booking system

CurrencyCodeNoThe currency code that has been configured for the hotel on the online booking system.

Child elements: None

Warning
titleNo BasicPropertyInfo for room stays accross different properties
Should the reservation have been made for more than one hotel, in order words not all the room stays are for the same hotel, then the BasicPropertyInfo should not be used in the ResGlobalInfo container.