Panoramica
Il messaggio Transaction (Property Data) di ARI definisce le informazioni sui tipi di camera e sui pacchetti (o piani tariffari) di ogni proprietà. I dati di ogni tipo di camera includono
un identificatore univoco (RoomID), nome localizzato, descrizione e URL delle foto
della camera. I dati di ogni pacchetto includono un identificatore univoco (PackageID), nome localizzato, descrizione, occupazione e servizi aggiuntivi.
Puoi utilizzare un messaggio transazionale per:
- Definisci i dati per una o più proprietà.
- Definisci le informazioni sul tipo di camera e sul pacchetto per ogni proprietà.
- Controllare le offerte dei prodotti.
Inoltre, puoi impostare le azioni per eseguire le seguenti operazioni:
Aggiungi un tipo di camera e un pacchetto a una proprietà.
Rimuovere un tipo di camera e un pacchetto da una proprietà.
Aggiungi punti fedeltà, un programma fedeltà a un pacchetto o a una proprietà.
Per esempi di messaggi Transaction, vedi Esempi di Transaction (Property Data).
Elementi obbligatori e facoltativi
Il documento XML Reference fornisce le descrizioni degli elementi obbligatori e facoltativi. Per informazioni dettagliate sugli attributi e sugli elementi secondari, vedi Elementi e attributi di Transaction (Property Data).
Sintassi e schemi
Utilizza l'esempio di sintassi di Transazione (dati della proprietà) come riferimento quando crei il messaggio Transazione per assicurarti di seguire il formato corretto.
Puoi utilizzare uno strumento XML di terze parti come xmllint per convalidare i tuoi feed con gli schemi pubblicati prima di inviarli a Google. Per lo schema dei messaggi Transaction, consulta Schemi di Hotel Ads.
Linee guida
Segui queste indicazioni per un messaggio Transaction:
- Azioni:
delta: utilizzalo per aggiungere o aggiornare nuovi tipi di camere e pacchetti (piani tariffari).overlay: utilizzalo per sostituire tutti i tipi di camere e i pacchetti di una proprietà con un nuovo set. Devono includere informazioni su tutti i tipi di camere e i piani tariffari che vuoi ancora vendere.- Supporto delle lingue:
Specifica una o due lingue (inglese e una lingua locale per la proprietà se necessario) per i campi Nome, Descrizione e Sottotitoli codificati. Se necessario, puoi aggiungere più di due lingue.
- Tipi di camera e pacchetti:
Quando aggiorni un tipo di camera o un pacchetto, devi inviare tutte le informazioni correlate per quel tipo di camera o pacchetto. Ad esempio, quando aggiungi una foto, devi includere anche il nome e la descrizione.
<AllowablePackageIDs>e<AllowableRoomIDs>sono facoltativi e, se non impostati, è possibile creare qualsiasi combinazione di tipo di camera e piano tariffario. Devi comunque inviare disponibilità e tariffe con gli ID tipo di camera e piano tariffario. Questi elementi ti consentono di controllare i prodotti e disattivare le combinazioni non più supportate dal tuo sistema.Invia a Google un aggiornamento del messaggio Transaction ogni volta che si verifica una modifica ai tipi di camere o ai pacchetti oppure quando è necessario aggiungere dettagli importanti sui tipi di camere o sui pacchetti.
- Punti fedeltà:
Per includere o escludere il programma fedeltà nel tuo pacchetto, configura una configurazione dei punti fedeltà con Google. Verranno visualizzati i punti guadagnati associati al pacchetto. Scopri di più sui punti fedeltà.
Utilizza l'elemento
<MilesIncluded>per definire o aggiornare la campagna fedeltà. Per saperne di più, consulta Transaction(Property Data). I punti fedeltà possono essere inclusi con<PackageData>.
Esempio
Questa sezione fornisce un esempio di base di un messaggio Transaction ARI che utilizza
elementi obbligatori e facoltativi. Per aggiungere o aggiornare tipi di camera e pacchetti, utilizza un'azione per delta per aggiungere o aggiornare tipi di camera e pacchetti oppure overlay per sostituire tutte le definizioni di tipi di camera e pacchetti (elimina le voci precedenti).
Devi specificare da una a due lingue (inglese e una lingua locale per la proprietà, se necessario) per i campi Nome, Descrizione e Sottotitoli codificati. Poi aggiungi le informazioni sui dati della proprietà, inclusi i link alle foto.
Per <PropertyID> e <RoomID>, utilizza gli stessi ID che utilizzi nel tuo sistema
per i piani tariffari e i tipi di camera (rispettivamente). La coerenza con il tuo sistema è
fondamentale per garantire che Google mostri correttamente i prezzi e i dati.
Dopo aver preparato il file, devi inviarlo a Google tramite un messaggio POST
al seguente endpoint: https://www.google.com/travel/hotels/uploads/property_data
Per scoprire di più su come eseguire il push/POST del messaggio, consulta Push dei messaggi.
L'esempio seguente mostra come impostare il messaggio Transaction utilizzando un'azione delta:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="202X-XX-XXT00:00:00-0X:00" id="12345678" partner="partner_key">
<PropertyDataSet action="delta">
<Property>PROPERTYID</Property>
<RoomData>
<RoomID>ROOMID</RoomID>
<Name><Text text="ROOM NAME" language="en"/></Name>
<Description>
<Text text="ROOM DESCRIPTION TEXT" language="en"/>
</Description>
<Capacity>4</Capacity>
<PhotoURL>
<Caption><Text text="ROOM PHOTO CAPTION TEXT" language="en"/></Caption>
<URL>https://LINK TO PHOTO</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>BASE</PackageID>
<Name><Text text="Internet Special" language="en"/></Name>
<Description><Text text="Direct Booking through Hotel Website" language="en"/></Description>
<Refundable available="true" refundable_until_days="2" refundable_until_time="12:00"/>
</PackageData>
</PropertyDataSet>
</Transaction>
Per altri esempi, ad esempio come utilizzare l'azione overlay, aggiungere un tipo di camera e un pacchetto ai dati della proprietà esistenti e rimuovere i tipi di camera e i pacchetti esistenti, consulta Esempi di Transaction (Property Data).
Procedure
Questa sezione fornisce soluzioni a scenari che potresti riscontrare durante l'invio di messaggi Transaction.
Scenario 1: come rimuovere i dati del tipo di camera
Come faccio a rimuovere i dati esistenti relativi a pacchetti e/o tipi di camera?
Descrizione
Hai inviato più tipi di camere, tra cui camere King e Queen, per la struttura. Tutti i tipi di camere con letto queen size non sono disponibili durante i lavori di ristrutturazione e al momento sono disponibili solo i tipi di camere con letto king size.
Soluzione
- Non è necessario aggiornare la disponibilità, le tariffe o l'inventario notturni per gli ID tipo di camera e pacchetto che sono stati rimossi o disattivati.
- Se il tipo di camera o il pacchetto è stato rimosso o disattivato, invia un nuovo
messaggio Transaction con
action="overlay"che include solo i tipi di camera e i pacchetti ancora attivi ed esclude il tipo di camera o il pacchetto rimossi.
Esempio
Questo snippet XML mostra come utilizzare l'azione overlay per rimuovere un tipo di camera.
Di seguito è riportata l'azione delta originale che include i tipi di camera King e Queen:
<PropertyDataSet action="delta">
<Property>Property_1</Property>
<RoomData>
<RoomID>King</RoomID>
<Name>
<Text text="King" language="en"/>
</Name>
<Capacity>2</Capacity>
</RoomData>
<PackageData>
<PackageID>Standard</PackageID>
<Name>
<Text text="Standard" language="en"/>
</Name>
<Description>
<Text text="Standard rate" language="en"/>
</Description>
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>0</BreakfastIncluded>
</PackageData>
<RoomData>
<RoomID>Queen</RoomID>
<Name>
<Text text="Queen" language="en"/>
</Name>
<Capacity>2</Capacity>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
</PropertyDataSet>
Puoi quindi impostare overlay per rimuovere il tipo di camera Queen e mantenere il tipo di camera King:
<PropertyDataSet action="overlay">
<Property>Property_1</Property>
<RoomData>
<RoomID>King</RoomID>
<Name>
<Text text="King" language="en"/>
</Name>
<Capacity>2</Capacity>
</RoomData>
<PackageData>
<PackageID>Standard</PackageID>
<Name>
<Text text="Standard" language="en"/>
</Name>
<Description>
<Text text="Standard rate" language="en"/>
</Description>
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>0</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
Scenario 2: come controllare i prodotti utilizzando AllowablePackageIDs
Come faccio a controllare i prodotti (combinazioni di pacchetti e tipi di camera) quando i pacchetti sono raggruppati per tipo di camera?
Descrizione
Hai determinati pacchetti disponibili solo per alcuni tipi di camere. Ad esempio, se la tua struttura ha quattro tipi di camere (inclusa la suite presidenziale) e sei pacchetti diversi, ma solo alcuni pacchetti sono idonei per la suite presidenziale, puoi specificare l'idoneità.
Soluzione
Invia un messaggio Transaction aggiornato che specifichi quali prodotti sono inclusi
nel pacchetto utilizzando <AllowablePackageIDs>.
Esempio
Questo snippet XML mostra come utilizzare <AllowablePackageIDs> per specificare i pacchetti
utilizzati con un determinato tipo di camera. In questo caso, il tipo di camera suite attico consente solo
il pacchetto all inclusive attico o il pacchetto colazione inclusa, mentre il
tipo di camera suite king size consente solo il pacchetto all inclusive king size o il
pacchetto pet friendly.
<RoomData>
<RoomID>penthouse_suite</RoomID>
<AllowablePackageIDs>
<AllowablePackageID>penthouse_all_inclusive</AllowablePackageID>
<AllowablePackageID>free_breakfast</AllowablePackageID>
</AllowablePackageIDs>
<!-- Additional child elements omitted. -->
</RoomData>
<RoomData>
<RoomID>king_suite</RoomID>
<AllowablePackageIDs>
<AllowablePackageID>king_all_inclusive</AllowablePackageID>
<AllowablePackageID>pet_friendly</AllowablePackageID>
</AllowablePackageIDs>
<!-- Additional child elements omitted. -->
</RoomData>
<PackageData>
<PackageID>penthouse_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
<PackageID>free_breakfast</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
<PackageID>king_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
<PackageID>pet_friendly</PackageID>
</PackageData>
Scenario 3: come controllare i prodotti utilizzando AllowableRoomIDs
Come faccio a controllare i prodotti (combinazioni di pacchetti e tipi di camera) quando i tipi di camera sono raggruppati per pacchetto?
Descrizione
Una combinazione di tipo di camera e pacchetto non viene più venduta come prodotto oppure vuoi controllare cosa è incluso in un nuovo pacchetto. Ad esempio, vuoi specificare solo determinati tipi di camere, come le camere King e Queen con vista sull'oceano, con un pacchetto.
Soluzione
Invia un messaggio Transaction aggiornato che specifichi i prodotti esatti inclusi
nel pacchetto utilizzando l'elemento <AllowableRoomIDs>.
Esempio
Questo snippet XML mostra come utilizzare <AllowableRoomID> per specificare i tipi di camera King e Queen con vista sull'oceano nel pacchetto.
<PackageID>RO</PackageID>
<AllowableRoomIDs>
<AllowableRoomID>king_oceanview</AllowableRoomID>
<AllowableRoomID>queen_oceanview</AllowableRoomID>
</AllowableRoomIDs>