Le tariffe agevolate sono un tipo di regola tariffaria che ti consente di offrire diverse tariffe per gli itinerari, in base a criteri quali il dispositivo, il paese o se l'utente ha eseguito o meno l'accesso a Google.
Quando disponi di più di una tariffa pubblica o agevolata per un itinerario il pacchetto camera, l'utente vedrà la tariffa più bassa. Google sceglie sempre il livello più basso la tariffa idonea per l'utente.
Panoramica
Le tariffe agevolate sono visibili nelle aree di prezzo standard e vengono mostrate solo agli utenti le cui ricerche soddisfano i criteri della tariffa agevolata associata. Questi criteri possono essere basati sui seguenti criteri:
- Dispositivo dell'utente finale
- Paese dell'utente finale
- Preferenza relativa alla lingua dell'utente finale
- Sottoinsieme ridotto di tutti gli utenti
- Se l'utente finale ha eseguito l'accesso
Per attivare le tariffe agevolate, modifica quanto segue:
File XML delle regole tariffarie: Definisci le condizioni in cui vengono applicate le tariffe agevolate.
Feed del prezzo: utilizza la proprietà
<Rate>
in un messaggio Transaction per impostare le tariffe.File delle pagine di destinazione: aggiungi valori specifici delle regole tariffarie ai tuoi link diretti.
Tariffe agevolate specifiche per dispositivo
Le tariffe specifiche per dispositivo sono tariffe dell'hotel visibili e prenotabili solo da agli utenti di un dispositivo specifico, ad esempio cellulare, tablet o computer. Le tariffe sono forniti dai partner di Google e gli utenti finali possono visualizzare e prenotare lo stesso tariffe specifiche per dispositivo sul sito del partner.
Tariffe agevolate specifiche per paese
Le tariffe specifiche per paese sono tariffe dell'hotel che sono visibili e prenotabili solo dagli utenti che cercano hotel in un determinato paese. Google determina il paese utilizzando l'indirizzo IP dell'utente finale. Le tariffe sono indicate dai partner di Google e gli utenti finali possono visualizzare e prenotare le medesime tariffe sul sito specifico per il paese del partner.
Tariffe agevolate specifiche per lingua
Le tariffe specifiche per lingua sono visibili solo agli utenti che cercano hotel
utilizzando una specifica impostazione di lingua di Google. Lingua specifica
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 tutte
utenti idonei. La frequenza di campionamento viene definita utilizzando l'attributo <MaxUsersPercent>
e calcolata utilizzando:
MaxUsersPercent = (number of users selected to view rate)/(total eligible users)
Tariffe agevolate con accesso eseguito
Le tariffe per gli accessi sono visibili solo agli utenti che hanno eseguito l'accesso con un
. I partner di Google forniscono le tariffe e gli utenti possono visualizzare e prenotare
le tariffe sul sito del partner. Le tariffe per gli utenti che hanno eseguito l'accesso sono definite utilizzando
Elemento <UserSignedIn>
.
Poiché Google seleziona sempre la tariffa idonea più bassa, se è disponibile una tariffa agevolata,
è superiore al prezzo impostato a livello di <Result>
, la tariffa agevolata
non verrà mai selezionato. Per evitare che ciò accada, rimuovi il
conv. alla <Result>
tutte le tariffe. In alternativa, rivolgiti al tuo Technical Account Manager
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 per ulteriori informazioni, consulta la sezione XML delle regole tariffarie Riferimento.
Aggiornare il feed del prezzo
Le tariffe agevolate vengono impostate utilizzando l'elemento in una Messaggio Transaction.
L'elemento <Rate>
può essere utilizzato anche come più elementi secondari di <Rates>
negli elementi <RoomBundle>
o <Result>
. Per utilizzarlo come condizionale
devi impostare il valore dell'attributo rate_rule_id
in modo che corrisponda a
L'ID regola tariffaria definito nel file XML delle regole tariffarie.
Se non hai una tariffa pubblica predefinita per due persone, imposta <Baserate>
elemento secondario del messaggio <Result>
per -1
. Qualsiasi condizione condizionale
<Rates>
inviati a Google in questo caso saranno considerati validi.
Esempi
Base + condizionale
L'esempio seguente mostra un messaggio Transaction che contiene una 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 un singolo
tariffa inferiore a 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ù elementi RoomBundle
L'esempio seguente mostra un messaggio Transaction che contiene più elementi
tariffe al di sotto di 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>
Camera doppia pubblica non disponibile
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 fare in modo che gli utenti finali idonei possano prenotare la tariffa scontata tramite un modifica la pagina di destinazione . Implementazione aggiuntiva potrebbe essere necessaria anche sul sito web di prenotazione per mostrare e soddisfare tariffe scontate.
Ci aspettiamo che i partner rispettino il prezzo mostrato nel link diretto alla tariffa agevolata.
In un link diretto dinamico, puoi includere la regola tariffaria tramite il nome,
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)¤cy=(USER-CURRENCY)&prid=(RATE-RULE-ID)
Il file della pagina di destinazione supporta anche l'istruzione IF-RATE-RULE-ID
che consente
definisci in modo condizionale le parti dell'URL, a seconda che la regola tariffaria
esiste:
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)¤cy=(USER-CURRENCY)
Questo esempio sceglie tra due pagine di destinazione, a seconda che la percentuale l'ID regola sia impostato.
Per ulteriori informazioni, consulta la sezione Utilizzo di Condizioni.