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>