Uso dei bundle della stanza

Per impostazione predefinita, i dati dell'itinerario rappresentano le camere a doppia occupazione meno costose. Tuttavia, se si definiscono i dati della sala e del pacchetto (vedere Creazione di un feed di prezzo dei metadati (in precedenza messaggio transazione), è possibile includere altre stanze nei dati dell'itinerario usando i bundle delle sale.

Ecco l'aspetto di un itinerario predefinito della stanza di 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>

Per aggiungere tipi di sala e pacchetti all'itinerario, aggiungere un <elemento RoomBundle> come elemento figlio di Result. È possibile aggiungere uno o più pacchetti di camere, ma una delle tariffe dei pacchetti di camere deve corrispondere alla tariffa dell'itinerario. È necessario basare la tariffa della camera sulla sua occupazione; 2 e 4 camere di occupazione non possono avere la stessa tariffa.

Nota

È necessario specificare l'occupazione all'interno di un elemento bundle della stanza.

<?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>

Rimozione dei bundle della stanza

Ogni itinerario deve contenere l'elenco completo delle camere disponibili. Se una stanza o un pacchetto non è più disponibile, è sufficiente rimuovere il bundle dall'itinerario.

Precedenza per i dati di itinerario, sala e pacchetto

I dati relativi all'itinerario, alla sala e al pacchetto includono alcuni degli stessi campi. Di seguito è riportato l'ordine di precedenza usato dal servizio Hotel per decidere quali oggetti utilizzare.

  • RoomBundle (più alto)
  • PackageData
  • RoomData (più basso)

Se un bundle di sale fa riferimento alla stanza e al pacchetto seguenti, la sala è una stanza a doppia occupazione in base alle regole di precedenza (il pacchetto ha una precedenza superiore rispetto a una stanza e l'elemento del Occupancy pacchetto è impostato su 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>