Partilhar via


Utilizar pacotes de salas

Por predefinição, os seus dados de itinerário representam as suas salas de ocupação dupla e menos caras. No entanto, se definir dados de salas e pacotes (consulte Criar um feed de preços de metadados), pode incluir outras salas nos seus dados de itinerário através de pacotes de salas.

Eis o aspeto de um itinerário predefinido da sala base:

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-05-25T20:44:56-04:00" id="de0be689-d094-406e-
8027-724309deb373">
  <Result>
    <Property>13579</Property>
    <Checkin>2017-05-26</Checkin>
    <Nights>1</Nights>
    <Baserate currency="USD">159.99</Baserate>
    <Tax currency="USD">20.00</Tax>
    <OtherFees currency="USD">4.00</OtherFees>
    <AllowablePointsOfSale>
      <PointOfSale id="mobile"/>
      <PointOfSale id="desktop"/>
    </AllowablePointsOfSale>
  </Result>
</Transaction>

Para adicionar tipos de sala e pacotes ao itinerário, adicione um <elemento RoomBundle> como subordinado de Result. Pode adicionar um ou mais pacotes de salas, mas uma das tarifas dos pacotes de sala tem de corresponder à taxa do itinerário. Tem de basear a taxa da sala na sua ocupação; 2 e 4 salas de ocupação não podem ter a mesma taxa.

Nota

Tem de especificar a ocupação dentro de um elemento de pacote de sala.

<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-05-25T20:44:56-04:00" id="de0be689-d094-406e-
8027-724309deb373">
  <Result>
    <Property>13579</Property>
    <Checkin>2017-05-26</Checkin>
    <Nights>1</Nights>
    <Baserate currency="USD">159.99</Baserate>
    <Tax currency="USD">20.00</Tax>
    <OtherFees currency="USD">4.00</OtherFees>
    <AllowablePointsOfSale>
      <PointOfSale id="mobile"/>
      <PointOfSale id="desktop"/>
    </AllowablePointsOfSale>

    <!-- This is the double-occupancy room that matches the itinerary's rate -->
    <RoomBundle>  
      <RoomID>12345</RoomID>
      <PackageID>67890</PackageID>
      <Baserate currency="USD">159.99</Baserate>
      <Tax currency="USD">20.00</Tax>
      <OtherFees currency="USD">4.00</OtherFees>
      <Occupancy>2</Occupancy>
    </RoomBundle>

    <RoomBundle>
      <RoomID>11111</RoomID>
      <PackageID>22222</PackageID>
      <Baserate currency="USD">236.00</Baserate>
      <Tax currency="USD">42.00</Tax>
      <OtherFees currency="USD">4.00</OtherFees>
      <Occupancy>4</Occupancy>
    </RoomBundle>

  </Result>
</Transaction>

A remover pacotes de salas

Cada itinerário tem de conter a lista completa de salas que estão disponíveis. Se uma sala ou pacote já não estiver disponível, basta remover esse pacote do itinerário.

Precedência para itinerário, sala e dados de pacote

Os dados de itinerário, sala e pacote incluem alguns dos mesmos campos. Segue-se a ordem de precedência que o serviço Hotel utiliza para decidir que campos de objetos utiliza.

  • RoomBundle (mais alto)
  • PackageData
  • RoomData (mais baixo)

Se um pacote de sala referenciar a seguinte sala e pacote, a sala é uma sala de ocupação dupla com base nas regras de precedência (o pacote tem precedência superior a uma sala e o elemento do Occupancy pacote está definido como 2).

  <RoomData>
    <RoomID>12345</RoomID>
    <Name>
      <Text text="Double queen room - Non-smoking" language="en" />
    </Name>
    <Capacity>4</Capacity>
    <Occupancy>4</Occupancy>
  </RoomData>

  <PackageData>
    <PackageID>67890</PackageID>
    <Name>
      <Text text="Business" language="en" />
    </Name>
    <Occupancy>2</Occupancy>
    <ChargeCurrency>Web</ChargeCurrency>
    <Refundable available="true" refundable_until_days="2" refundable_until_time="17:00:00" />
    <BreakfastIncluded/>
    <ParkingIncluded>true</ParkingIncluded>
    <InternetIncluded>1</InternetIncluded>
  </PackageData>