Pacchetti camera

I pacchetti camera consentono di definire più tipi di camera per una singola proprietà o combinare l'itinerario di una camera con caratteristiche della tariffa (servizi aggiuntivi inclusi in una tariffa e condizioni di vendita) e presentarle agli utenti in aggiunta al prezzo standard.

Concetti chiave e flusso di lavoro

I pacchetti camera consentono di offrire combinazioni aggiuntive di tipi di camere fisiche con pacchetti di servizi diversi.

Esempi

Le seguenti immagini mostrano esempi di pacchetti camera su computer e dispositivi mobili:

Pacchetti camera con immagini

Questo esempio è la versione mobile dei pacchetti camera, che comprende tutti i diversi tipi di camere per il numero richiesto di persone e le rispettive immagini.

Nota: i pacchetti camera senza immagini vengono sostituiti con un'immagine segnaposto del letto.

Caratteristiche della tariffa

Le seguenti immagini mostrano esempi di caratteristiche della tariffa:

La visualizzazione di pacchetti camera e caratteristiche delle tariffe nei risultati di ricerca è regolata dalla stessa procedura di selezione delle tariffe delle camere standard.

Pacchetti camera

Puoi definire i pacchetti camera e le caratteristiche delle tariffe nei messaggi Transaction. L'elemento principale di un messaggio Transaction è <Transaction>.

La struttura del messaggio Transaction dipende dall'operazione che devi eseguire: definire i metadati del pacchetto camera o della caratteristica della tariffa o aggiornare il prezzo o la disponibilità del pacchetto camera.

Metadati
Per definire i metadati di un pacchetto camera e delle caratteristiche della tariffa, utilizza un elemento <PackageData> in un elemento <PropertyDataSet>. Per ulteriori informazioni, consulta la sezione Definire i metadati di camere e pacchetti. Per le descrizioni delle camere fisiche dei pacchetti camera vengono utilizzati gli elementi <RoomData> esistenti.
Prezzi e disponibilità
Per definire prezzi e disponibilità dei pacchetti camera, utilizza un elemento <RoomBundle> in un elemento <Result> per ogni combinazione pacchetto/itinerario. Per ulteriori informazioni, consulta la sezione Definire prezzi e disponibilità.

Se non vengono utilizzati con i pacchetti camera, la tariffa, le tasse e altre commissioni della camera base sono obbligatorie ai sensi di <Result> e possono essere rimosse se utilizzate con i pacchetti camera. Se stai implementando i pacchetti di camere utilizzando un account attivo, segui questi passaggi:

  1. Includi la tariffa, le tasse e le altre commissioni della camera base in <Result> e aggiungi un pacchetto camera corrispondente al pacchetto camera base.

  2. Se necessario, definisci altri pacchetti camera all'interno dello stesso blocco <Result> per altri tipi di camere nella struttura o pacchetti di servizi diversi.

  3. Dopo il lancio del pacchetto camera, rimuovi la tariffa, le tasse e altre commissioni della camera base.

Metadati dei pacchetti camera

Quando definisci i pacchetti camera e le caratteristiche delle tariffe, in genere definisci in anticipo la descrizione, i servizi aggiuntivi inclusi nella tariffa e altre informazioni sul pacchetto camera. Queste informazioni sono note come i metadati dei pacchetti camera. Successivamente farai riferimento a questi metadati negli aggiornamenti dei prezzi, senza includerli nei messaggi di aggiornamento.

Quando definisci i pacchetti camera, utilizza gli elementi <RoomData> esistenti per le descrizioni fisiche delle camere e gli elementi <PackageData> per le caratteristiche e i termini delle tariffe che non fanno parte della descrizione fisica della camera.

L'utilizzo degli elementi <RoomData> e <PackageData> può ridurre significativamente le dimensioni dei feed elenco hotel e prezzo dell'hotel perché riduce la quantità di dati ripetitivi inviati nei messaggi Transaction.

Ad esempio, dati come il nome e la descrizione di una camera vengono in genere ripetuti per ogni itinerario. Puoi utilizzare gli elementi <RoomData> e <PackageData> per definire questo tipo di dati una sola volta. I dati dei pacchetti camera specifici per l'itinerario vengono quindi uniti alle definizioni della camera e del pacchetto archiviati per mostrarli all'utente finale.

Google associa i metadati ai dati specifici dell'itinerario per visualizzare i contenuti dei tuoi annunci. Uno speciale processo di elaborazione combina nomi e descrizioni presenti negli elementi <RoomData> e <PackageData>, consentendoti quindi di descrivere la camera fisica in <RoomData> e le caratteristiche della tariffa e i dettagli del pacchetto in <PackageData>.

Se definisci sia i dati del pacchetto sia i dati della camera per una camera singola o un pacchetto camera, Google li include nell'output dell'annuncio, separati da un trattino.

Linee guida relative alle foto

Quando invii le foto della camera, ecco alcune linee guida da seguire per assicurarti che vengano mostrate agli utenti:

  • Invia foto per ogni tipo di camera, incluse le foto delle camere accessibili, ad esempio camere designate come accessibili con vari accessori per il bagno, come la doccia con accesso per disabili.

  • Includi almeno quattro foto della stanza e almeno una foto del bagno.

  • Le foto devono essere della camera stessa e non della proprietà. Le foto più importanti sono quelle del letto, dell'intera camera, del bagno, dello spazio abitativo, della vista dalla camera (con il resto della camera nella stessa foto) e, se applicabile, del balcone, del patio o della terrazza.

    È utile anche scattare foto della scrivania, della cucina, della macchinetta del caffè/del bollitore e delle caratteristiche distintive della camera.

  • Evita foto di persone e proprietà, ad esempio esterni o comfort della proprietà, visite turistiche/turismo e cibo.

  • Evita i primi piani di oggetti, ad esempio primi piani di calici.

  • Evita brand e marchi, anche se è possibile includere set di cortesia etichettati o con brand all'interno di una foto che ritrae l'intera area del bagno. Le foto non devono contenere grandi blocchi di testo, loghi o filigrane.

  • Fornisci foto standard orizzontali (paesaggio) con un ampio campo visivo. Eviti foto con effetto fisheye e distorte. Scatta foto con la massima risoluzione per migliorare il ranking. Non è necessario inviare la stessa foto in varie risoluzioni.

Precedenza dei dati

I dati del pacchetto camera vengono raccolti da tutte le fonti e combinati in base a regole di precedenza per produrre i dati definitivi per un determinato hotel, itinerario e pacchetto camera. L'ordine è il seguente, partendo dalla precedenza minima:

  1. (Precedenza minima) Dati dei partner
  2. Dati della proprietà
  3. <RoomData>, dove <RoomID> corrisponde a <RoomID> nel blocco <RoomBundle>
  4. <PackageData>, dove <PackageID> corrisponde a <PackageID> nel blocco <RoomBundle>
  5. (Precedenza massima) <RoomBundle>

Definisci prezzi e disponibilità

Per definire i prezzi e la disponibilità dei pacchetti camera, utilizza un elemento <RoomBundle> in un messaggio Transaction per ogni combinazione di pacchetti o itinerari. L'elemento <RoomBundle> deve essere all'interno dell'elemento <Result>. Di seguito è mostrato un codice campione per due elementi <RoomBundle>. Tieni presente che, in questo esempio, i due elementi <RoomBundle> fanno riferimento ai metadati di camera e pacchetto utilizzando <RoomID> e <PackageID>.

Per ogni <Result>, l'insieme contenuto di pacchetti camera sovrascrive l'insieme esistente per quella proprietà o combinazione di itinerario. Se non definisci pacchetti camera o caratteristiche della tariffa nell'elemento <Result>, tutti i pacchetti camera verranno rimossi e nei risultati di ricerca verrà mostrata solo la camera base per l'hotel o l'itinerario.

Assicurati di utilizzare elementi come <Name> per rendere i tuoi pacchetti camera più interessanti per i potenziali clienti e di verificare che corrispondano alla pagina di destinazione dell'hotel. In questo esempio, i metadati vengono utilizzati per definire i nomi e altre informazioni descrittive.

<RatePlanID> è facoltativo e rappresenta l'identificatore univoco di una combinazione di camera e pacchetto. Consigliamo vivamente di utilizzare RatePlanID come variabile per creare l&#39;URL della tua pagina di destinazione dinamica (in precedenza Punto di vendita). Per maggiori dettagli, consulta la sezione Utilizzare variabili e condizioni.

Nei pacchetti camera sono facoltativi i seguenti elementi:

<Baserate>
<Tax>
<OtherFees>
<RoomID>
<PackageID>
<Occupancy>
<OccupancyDetails>

Quando implementi il pacchetto camera in un account attivo, rimuovi <Baserate> dopo aver attivato il pacchetto camera.

<Result>
  <!-- Note: When using Room Bundles, the top level result price is no
       longer necessary. -->
  <Property>180054</Property>
  <Checkin>2017-10-07</Checkin>
  <Nights>2</Nights>
  <!-- Base Room Bundle -->
  <RoomBundle>
    <RoomID>060773</RoomID>
    <PackageID>P54321</PackageID>
    <Baserate currency="USD">199.99</Baserate>
    <Tax currency="USD">25.12</Tax>
    <OtherFees currency="USD">2.00</OtherFees>
    <!-- RatePlanID is optional and represents the unique identifier for a
    room and package data combination. We strongly recommend using RatePlanID
    as a variable to build your dynamic landing page (formerly Point of Sale)
    URL. For details, see Using Variables and Conditions. -->
    <RatePlanID>060773-P54321</RatePlanID>
  </RoomBundle>
  <!-- Premium Room Bundle -->
  <RoomBundle>
    <RoomID>436233</RoomID>
    <PackageID>P12345</PackageID>
    <!-- Price for 4 ("occupancy") -->
    <Baserate currency="USD">298.88</Baserate>
    <Tax currency="USD">42.12</Tax>
    <OtherFees currency="USD">10.00</OtherFees>
    <RatePlanID>436233-P12345</RatePlanID>
  </RoomBundle>
</Result>

Definire i metadati di camere e pacchetti

Per definire i metadati di un pacchetto camera, utilizza gli elementi <PackageData> e <RoomData> all'interno dell'elemento <PropertyDataSet> di un messaggio Transaction.

Devi definire i metadati di camere e pacchetti in un messaggio Transaction distinto dai dati su prezzi e disponibilità. Definendo questi dati in anticipo, non dovrai includere nei tuoi aggiornamenti dei prezzi informazioni ripetitive come descrizioni, URL di foto, comfort e altri dati relativi a ogni camera o pacchetto per ogni singolo itinerario.

Google archivia i metadati e li inserisce negli annunci quando vengono visualizzati. Puoi aggiornare i metadati di camere e pacchetti in qualsiasi momento con un nuovo messaggio Transaction.

Nel messaggio Transaction, devi impostare un ID pacchetto e un ID camera per ogni blocco a cui farai poi riferimento nei blocchi <Result> degli aggiornamenti dei prezzi.

Se i dati di camere e pacchetti cambiano, ad esempio se aggiungi un nuovo tipo di camera in una proprietà, invia un nuovo messaggio Transaction contenente i dati aggiornati. Google sostituisce i metadati esistenti relativi a una camera o un pacchetto con i nuovi dati.

Google consiglia di definire i metadati durante la configurazione iniziale. Dopo aver predefinito i metadati, negli aggiornamenti dei prezzi dovrai solo fare riferimento ai valori di <RoomID> e <PackageID>, anziché includere di nuovo tutte queste informazioni. Google utilizza questi ID per associare le camere e i pacchetti camera ai metadati archiviati. Ciò può ridurre notevolmente le dimensioni complessive dei messaggi Transaction.

Poiché i prezzi delle combinazioni di camere o itinerari cambiano molto più spesso delle descrizioni della camera o del pacchetto, definire i metadati una sola volta e farvi poi riferimento è un utilizzo molto più efficiente dei messaggi Transaction. Inoltre, errori come descrizioni delle camere non corrispondenti possono essere eliminati utilizzando i metadati anziché definire i dati in linea.

Di seguito è riportato il metodo consigliato e più efficiente per definire separatamente metadati e prezzi:

<!-- Efficient method of defining Room Bundles -->
<!----- Occupancy of 2 and 4 example ------>

<Transaction timestamp="2019-04-18T16:20:00-04:00" id="12345678">
  <!-- Part1: Define RoomData and PackageData in PropertyDataSet -->
  <!-- Note: Once defined it does not have to be repeated for future Transaction Messages. -->
  <!--       PropertyDataSets can also be defined and sent in their own Transaction Message -->
  <!--       separately from pricing. Google can be configured to pull just PropertyDataSets -->
  <!--       once per day (or on a predefined frequency). -->
  <PropertyDataSet>
    <Property>180054</Property>
    <!-- Can be reused by multiple Room Bundles -->
    <RoomData>
      <RoomID>060773</RoomID>
      <Name>
        <Text text="Single Queen Room - Non-Smoking" language="en"/>
        <Text text="Chambre de la Roi Premium - Pas de Fumeurs" language="fr"/>
      </Name>
      <!-- Room can accommodate 4, but bundle is for 2 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageQueen.jpg</URL>
        <Caption>
          <Text text="A bright and breezy way to enjoy your mornin'
            cuppa tea." language="en"/>
          <Text text="Une façon lumineuse et aérée pour profiter
            de votre journée tasse de thé." language="fr"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <RoomData>
      <RoomID>436233</RoomID>
      <Name>
        <Text text="Premium King Room - Non-Smoking" language="en"/>
        <Text text="Chambre de le Roi Premium - Pas de Fumeurs" language="fr"/>
      </Name>
      <!-- Room can accommodate 4 and bundle is for 4 -->
      <Capacity>4</Capacity>
      <PhotoURL>
        <URL>http://www.foo.com/static/bar/imageKing.jpg</URL>
        <Caption>
          <Text text="A bright and breezy way to enjoy your mornin'
            cuppa tea." language="en"/>
          <Text text="Une façon lumineuse et aérée pour profiter
            de votre journée tasse de thé." language="fr"/>
        </Caption>
      </PhotoURL>
    </RoomData>
    <!-- Can be reused by multiple Room Bundles -->
    <PackageData>
      <PackageID>P54321</PackageID>
      <Occupancy>2</Occupancy>
      <ChargeCurrency>web</ChargeCurrency>
      <Refundable available="1" refundable_until_days="7"
           refundable_until_time="18:00:00"/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
    <PackageData>
      <PackageID>P12345</PackageID>
      <Occupancy>4</Occupancy>
      <ChargeCurrency>web</ChargeCurrency>
      <Refundable available="1" refundable_until_days="1"
           refundable_until_time="18:00:00"/>
      <BreakfastIncluded/>
      <ParkingIncluded>1</ParkingIncluded>
      <InternetIncluded>1</InternetIncluded>
    </PackageData>
  </PropertyDataSet>

    <!-- Efficient method of defining Room Bundles -->
    <!-- Part 2: Reference RoomData and PackageData through ID -->
  <Result>
    <Property>180054</Property>
    <Checkin>2017-10-07</Checkin>
    <Nights>2</Nights>

    <!-- Base Room Bundle -->
    <RoomBundle>
      <RoomID>060773</RoomID>
      <PackageID>P54321</PackageID>
      <Baserate currency="USD">199.99</Baserate>
      <Tax currency="USD">25.12</Tax>
      <OtherFees currency="USD">2.00</OtherFees>
      <!-- RatePlanID is optional and represents the unique identifier for a
      room and package data combination. We strongly recommend using RatePlanID
      as a variable to build your dynamic landing page (formerly Point of Sale)
      URL. For details, see Using Variables and Conditions. -->
      <RatePlanID>060773-P54321</RatePlanID>
    </RoomBundle>
    <!-- Premium Room Bundle -->
    <RoomBundle>
      <RoomID>436233</RoomID>
      <PackageID>P12345</PackageID>
      <!-- Price for 4 ("occupancy") -->
      <Baserate currency="USD">298.88</Baserate>
      <Tax currency="USD">42.12</Tax>
      <OtherFees currency="USD">10.00</OtherFees>
      <RatePlanID>060773-P12345</RatePlanID>
    </RoomBundle>
    <!-- Continue providing all available RoomBundle rates under matched
         property for any other occupancies -->
  </Result>
</Transaction>

Numero di persone e capienza

Durante la definizione dei pacchetti camera, devi saper distinguere tra numero di persone e capienza:

Numero di persone
Il numero di ospiti a cui è destinato un pacchetto camera. Ad esempio, il "Pacchetto Luna di miele" ha un numero di persone pari a due. Per impostare il valore del numero di persone di un pacchetto devi utilizzare l'elemento secondario <Occupancy> degli elementi <PackageData> o <RoomBundle>.
Capacità
Il numero massimo di persone che una camera può ospitare fisicamente. La capienza di una camera è sempre uguale o superiore al numero di persone. Ad esempio, la "Suite Luna di miele" nel tuo hotel ha una capacità massima di sei persone, ma il prezzo di un pacchetto è per due persone. Per impostare il valore della capienza di un pacchetto devi utilizzare l'elemento secondario <Capacity> dell'elemento <RoomData>.

Quando definisci il prezzo di un pacchetto camera, devi fornire il prezzo in base al numero di ospiti a cui è destinato (il valore specificato nell'elemento <Occupancy> del pacchetto). Se <Occupancy> è impostato su 2, il prezzo nel pacchetto deve essere per due persone. Non puoi impostare <Occupancy> su 4 ospiti e impostare il prezzo del pacchetto per 2 ospiti.

Camere condivise

Puoi anche utilizzare gli elementi Occupancy e Capacity nei pacchetti camera per impostare i prezzi delle camere condivise, ad esempio gli ostelli. Ad esempio, per impostare il prezzo a persona per una camerata da 8 letti, devi impostare Occupancy su 1 e Capacity su 8, quindi identificare la camerata come tale nel nome in <RoomData>. Esempio.

Aggiornare i pacchetti camera

Questa sezione descrive come rimuovere un pacchetto camera non più disponibile e come aggiornare il prezzo di un pacchetto camera esistente.

Rimozione del pacchetto camera

La rimozione dei pacchetti camera è diversa rispetto alla procedura per i prezzi degli hotel.

Per rimuovere una combinazione di camere o itinerari dall'inventario, devi impostare <Baserate> dell'elemento <Result> su -1. Per rimuovere un pacchetto camera per una determinata camera o un determinato itinerario, devi rimuovere l'elemento <RoomBundle> dal blocco <Result> nel messaggio Transaction.

I pacchetti camera nei tuoi feed di dati sono considerati come un insieme, con numero di elementi compreso tra 0 e varie decine. Quando invii i pacchetti camera a Google, invii il set completo e attuale. Non puoi modificare i valori di un singolo pacchetto camera per contrassegnare un prodotto precedentemente disponibile come non disponibile. Qualunque insieme di pacchetti sia presente nel messaggio Transaction più recente, sostituisce l'insieme attuale.

Ad esempio, supponiamo di avere i pacchetti A, B, C e D. Per prima cosa, devi inviare un messaggio che definisce l'insieme dei pacchetti camera A, B, C e D. Successivamente, se il pacchetto B va esaurito, devi inviare di nuovo l'intero insieme, ma solo con i pacchetti A, C e D. Se tutti i pacchetti camera sono esauriti, invia un insieme di pacchetti camera vuoto.

Aggiustamenti dei prezzi

Per modificare il prezzo di un pacchetto camera, imposta il nuovo <Baserate> nell'elemento <Result>.

Ogni volta che aggiorni il blocco <Result> di una combinazione camera/itinerario nei messaggi Transaction, devi includere un insieme completo di pacchetti camera disponibili per ogni <Result>. Google sostituisce l'insieme di pacchetti camera esistente con il nuovo insieme. Se non includi pacchetti camera in <Result>, Google rimuove tutti i pacchetti relativi a quella camera o a quell'itinerario.

Aggiornamenti dei metadati

Per aggiornare i metadati dei pacchetti camera devi utilizzare una risposta a un messaggio <Query> di Google.

Devi rispondere a un messaggio Query con un messaggio Transaction che definisce i metadati di camere e pacchetti per gli hotel specificati. Per ulteriori informazioni, vedi Messaggi query.