Tariffe agevolate

Le tariffe agevolate sono un tipo di regola tariffaria che ti consente di offrire tariffe diverse per gli itinerari, in base a criteri quali il dispositivo, il paese o l'accesso dell'utente a Google.

Se hai più di una tariffa pubblica o agevolata per un itinerario o un pacchetto camera, l'utente vedrà la tariffa più bassa. Google sceglie sempre la tariffa idonea più bassa per l'utente.

Panoramica

Le tariffe agevolate sono visibili negli slot dei prezzi standard e vengono mostrate solo agli utenti le cui ricerche soddisfano i criteri della tariffa agevolata associata. Questi criteri possono essere basati su quanto segue:

Per attivare le tariffe agevolate, modifica quanto segue:

Tariffe agevolate specifiche per dispositivo

Le tariffe specifiche per dispositivo sono tariffe di hotel visibili e prenotabili solo dagli utenti su un dispositivo specifico, come un dispositivo mobile, un tablet o un computer. Le tariffe sono fornite dai partner di Google e gli utenti finali possono visualizzare e prenotare le stesse tariffe specifiche per dispositivo sul sito del partner.

fenced_rates

Tariffe agevolate specifiche per paese

Le tariffe specifiche per paese sono tariffe di hotel visibili e prenotabili solo dagli utenti che cercano hotel da un paese specifico. Google determina il paese utilizzando l'indirizzo IP dell'utente finale. Le tariffe sono fornite dai partner di Google e gli utenti finali possono visualizzare e prenotare le stesse tariffe specifiche per paese sul sito specifico del partner.

Tariffe agevolate specifiche per lingua

Le tariffe specifiche per lingua sono visibili solo agli utenti che cercano hotel mentre utilizzano una specifica impostazione di lingua in Google. Le condizioni specifiche della lingua vengono definite utilizzando l'elemento <LanguageCode>.

Tariffe agevolate per campione ridotto

Le tariffe agevolate per campione ridotto sono visibili solo a un sottoinsieme casuale di tutti gli utenti idonei. La frequenza di campionamento viene definita utilizzando l'elemento <MaxUsersPercent> e calcolata come segue:

MaxUsersPercent = (number of users selected to view rate)/(total eligible users)

Tariffe agevolate con accesso eseguito

Le tariffe con accesso eseguito sono visibili solo agli utenti che hanno eseguito l'accesso con un Account Google. I partner di Google forniscono le tariffe, mentre gli utenti possono visualizzarle e prenotarle sul sito del partner. Le tariffe con accesso eseguito vengono definite utilizzando l'elemento <UserSignedIn>.

Poiché Google seleziona sempre la tariffa idonea più bassa, se una tariffa agevolata è superiore a quella impostata a livello di <Result>, la tariffa agevolata non verrà mai selezionata. Per evitare che questo accada, rimuovi la tariffa a livello di <Result> e applica una condizione a tutte le tariffe. In alternativa, chiedi al tuo Technical Account Manager informazioni sull'utilizzo di una regola tariffaria predefinita per i prezzi impostati a livello di <Result>.

Creare un file XML delle regole tariffarie

Le regole tariffarie per le tariffe agevolate vengono definite utilizzando un file XML delle regole tariffarie. Per ulteriori informazioni, consulta il riferimento XML sulle regole tariffarie.

Aggiorna il feed del prezzo

Le tariffe agevolate vengono impostate utilizzando l'elemento in un messaggio Transaction.

L'elemento <Rate> può anche essere utilizzato come più elementi secondari di <Rates> all'interno degli elementi <RoomBundle> o <Result>. Per utilizzarlo come tariffa condizionale, devi impostare il valore dell'attributo rate_rule_id in modo che corrisponda all'ID della regola tariffaria definito nel file XML delle regole tariffarie.

Se non disponi di una tariffa pubblica predefinita per il doppio numero di persone, imposta l'elemento secondario <Baserate> del messaggio <Result> su -1. In questo caso, tutti i valori <Rates> condizionali inviati a Google saranno considerati validi.

Esempi

Di base + condizionale

L'esempio seguente mostra un messaggio Transaction che contiene una tariffa di base e una tariffa agevolata:

<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
  <Result>
    <Property>1234</Property>
    <Checkin>2023-04-10</Checkin>
    <Nights>1</Nights>

    <Baserate currency="USD">200.00</Baserate>
    <Tax currency="USD">20.00</Tax>
    <OtherFees currency="USD">1.00</OtherFees>

    <Rates>
      <!-- The rate_rule_id is required when using conditional rates -->
      <Rate rate_rule_id="mobile">
        <!-- Override base rate and taxes for conditional rates -->
        <Baserate currency="USD">180.00</Baserate>
        <Tax currency="USD">18.00</Tax>
        <!-- NOTE: OtherFees is inherited from the above setting -->
        <Custom1>ratecode123</Custom1>
      </Rate>
    </Rates>

  </Result>
</Transaction>

Singolo RoomBundle

L'esempio seguente mostra un messaggio Transaction che contiene una singola tariffa in un <RoomBundle>:

<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
  <Result>
    <Property>1234</Property>
    <Checkin>2023-04-10</Checkin>
    <Nights>2</Nights>

    <Baserate currency="USD">300.00</Baserate>
    <Tax currency="USD">30.00</Tax>
    <OtherFees currency="USD">2.00</OtherFees>

    <RoomBundle>
      <RoomID>single</RoomID>
      <Baserate currency="USD">300.00</Baserate>
      <Tax currency="USD">30.00</Tax>
      <OtherFees currency="USD">2.00</OtherFees>
    </RoomBundle>

    <RoomBundle>
      <RoomID>3</RoomID>  <!-- Links to data in metadata -->
      <RatePlanID>basic</RatePlanID>
      <Baserate currency="USD">275.00</Baserate>
      <Tax currency="USD">27.50</Tax>
      <ChargeCurrency>web</ChargeCurrency>
      <BreakfastIncluded>1</BreakfastIncluded>

      <Rates>
        <Rate rate_rule_id="mobile">
          <Baserate currency="USD">269.00</Baserate>
          <Tax currency="USD">2.69</Tax>
          <OtherFees currency="USD">1.00</OtherFees>
        </Rates>
      </Rates>

    </RoomBundle>
  </Result>
</Transaction>

Più RoomBundle

L'esempio seguente mostra un messaggio Transaction che contiene più tariffe in un <RoomBundle>:

<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">
  <Result>
    <Property>1234</Property>
    <Checkin>2023-04-10</Checkin>
    <Nights>2</Nights>
    <!-- When Google receives new room bundle information for an itinerary, all
    previous room bundle pricing is dropped from Google's cache. Thus, if you
    want to delete a specific room bundle from Google's cache, you may do so
    by simply not providing that specific room bundle in subsequent transaction
    messages. -->
    <RoomBundle>
     ...
      <!-- RoomID is required, PackageID is recommended. -->
      <RoomID>5</RoomID>
      <PackageID>ABC</PackageID>
      <!-- Baserate is required. -->
      <Baserate currency="USD">275.00</Baserate>
      <Tax currency="USD">27.50</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>5-ABC</RatePlanID>

      <!-- Occupancy is mandatory for RoomBundle elements. -->
      <!-- Elements below will get inherited to nested rate elements. -->
      <Occupancy>2</Occupancy>
      <OccupancyDetails>
        <NumAdults>2</NumAdults>
      </OccupancyDetails>
      <InternetIncluded>1</InternetIncluded>


      <!-- Rate rule "mobile" overrides chargeCurrency, "us_or_gb" doesn't. -->
      <ChargeCurrency>web</ChargeCurrency>
      <Custom1>ratebasic</Custom1>
      <!-- Neither rate overrides Custom2. -->
      <Custom2>ratebasic</Custom2>

      <Rates>
        <Rate rate_rule_id="mobile">
          <Baserate currency="USD">258.33</Baserate>
          <Tax currency="USD">25.83</Tax>
          <OtherFees currency="USD">1.00</OtherFees>
          <!-- The value below overrides ChargeCurrency from roombundle. -->
          <ChargeCurrency>hotel</ChargeCurrency>
          <!-- The value below overrides Custom1 from roombundle. -->
          <Custom1>ratecode321</Custom1>
          <!-- Custom2 is inherited from roombundle. -->
        </Rate>
        <Rate rate_rule_id="us_or_gb">
          <Baserate currency="USD">268.33</Baserate>
          <Tax currency="USD">26.83</Tax>
          <OtherFees currency="USD">1.00</OtherFees>
          <!-- The value below overrides Custom1 from roombundle. -->
          <Custom1>ratecode432</Custom1>
          <!-- Custom2 is inherited from roombundle. -->
        </Rate>
      </Rates>
    </RoomBundle>
  </Result>
</Transaction>

Non dispone di camera doppia pubblica

L'esempio seguente mostra un messaggio Transaction che contiene tariffa agevolata senza tariffa pubblica per due persone:

<?xml version="1.0" encoding="UTF-8" ?>
<Transaction timestamp="2023-05-18T16:20:00-04:00" id="42">

  <Result>
    <Property>1234</Property>
    <Checkin>2023-04-10</Checkin>
    <Nights>1</Nights>

    <!-- <Unavailable/> should not be specified when available nested rates
    exist. -->
    <Baserate currency="USD">-1</Baserate>
    <Tax currency="USD">0</Tax>
    <OtherFees currency="USD">0</OtherFees>

    <Rates>
      <!-- The rate_rule_id is required when using conditional rates. -->
      <Rate rate_rule_id="mobile">
        <Baserate currency="USD">180.00</Baserate>
        <Tax currency="USD">18.00</Tax>
        <OtherFees currency="USD">1.00</OtherFees>
        <Custom1>ratecode123</Custom1>
      </Rate>
    </Rates>

  </Result>
</Transaction>

Aggiornare il file della pagina di destinazione

Per assicurarti che gli utenti finali idonei possano prenotare la tariffa scontata tramite un link diretto, modifica il file della pagina di destinazione. Potrebbe essere necessaria anche un'ulteriore implementazione sul sito web di prenotazione per mostrare e soddisfare correttamente le tariffe scontate.

Ci aspettiamo che i partner rispettino il prezzo indicato nel link diretto alla tariffa agevolata.

In un link diretto dinamico, puoi includere la regola tariffaria tramite il nome, l'attributo id dell'elemento <RateRule>, con la variabile RATE-RULE-ID.

Nell'esempio seguente viene aggiunto l'ID regola tariffaria:

https://bookingsite.com/landing.do?id=(PARTNER-HOTEL-ID)&arrival=(CHECKINDAY)-(CHECKINMONTH)-(CHECKINYEAR)&departure=(CHECKOUTDAY)-(CHECKOUTMONTH)-(CHECKOUTYEAR)&lang=(USER-LANGUAGE)&currency=(USER-CURRENCY)&prid=(RATE-RULE-ID)

Il file della pagina di destinazione supporta anche l'istruzione IF-RATE-RULE-ID, che ti consente di definire in modo condizionale le parti dell'URL, a seconda che la regola tariffaria esista o meno:

https://bookingsite.com/(IF-RATE-RULE-ID)privatelanding.do(RATE-RULE-ID)(ELSE)landing.do(ENDIF)?id=(PARTNER-HOTEL-ID)&arrival=(CHECKINDAY)-(CHECKINMONTH)-(CHECKINYEAR)&departure=(CHECKOUTDAY)-(CHECKOUTMONTH)-(CHECKOUTYEAR)&lang=(USER-LANGUAGE)&currency=(USER-CURRENCY)

Questo esempio sceglie tra due pagine di destinazione, a seconda che sia impostato o meno l'ID regola tariffaria.

Per ulteriori informazioni, consulta la sezione Utilizzo di variabili e condizioni.