Offres de chambres

Les offres de chambres vous permettent de définir plusieurs types de chambres pour un même établissement ou de combiner un séjour d'une chambre avec des caractéristiques tarifaires (services supplémentaires assortis d'un tarif et de conditions de vente) à un tarif supérieur.

Concepts clés et processus

Avec les offres de chambres, vous pouvez proposer des combinaisons supplémentaires alliant types de chambres et différentes formules de services.

Exemples

Les images suivantes montrent des exemples d'offres de chambres sur ordinateur et sur mobile :

Offres de chambres avec images

Cet exemple est la version mobile des offres de chambres, qui comprend tous les différents types de chambres pour le nombre d'occupants requis et leurs images respectives.

Remarque : Les offres de chambres sans image sont remplacées par une image d'espace réservé représentant un lit.

Fonctionnalités relatives aux tarifs

Les images suivantes illustrent des exemples de caractéristiques tarifaires :

L'affichage des offres de chambres et des caractéristiques tarifaires dans les résultats de recherche suit le même processus de sélection que les tarifs des chambres standards.

Offres de chambres

Vous définissez les offres de chambres et les caractéristiques tarifaires dans les messages Transaction. L'élément racine d'un message Transaction est <Transaction>.

La structure de ce message dépend de l'opération que vous souhaitez effectuer : définir les métadonnées de l'offre de chambres ou de la caractéristique tarifaire, ou mettre à jour les tarifs ou les disponibilités d'une offre de chambres.

Métadonnées
Définissez les métadonnées d'offre de chambres et de caractéristique tarifaire avec <PackageData> dans un élément <PropertyDataSet>. Pour en savoir plus, consultez Définir des métadonnées de chambres et de formules. Les offres de chambres utilisent les éléments <RoomData> existants pour la description des chambres physiques.
Prix et disponibilités
Définissez les prix et les disponibilités d'offre de chambres avec l'élément <RoomBundle> dans un élément <Result> pour chaque combinaison formule/séjour. Pour en savoir plus, consultez la section Définir les tarifs et les disponibilités.

Le tarif, les taxes et les autres frais de la chambre de base sont obligatoires sous <Result> lorsqu'ils ne sont pas utilisés avec des offres de chambres et peuvent être supprimés lorsqu'ils sont utilisés avec des offres de chambres. Si vous implémentez des packages de chambres à l&#39;aide d&#39;un compte actif, procédez comme suit:

  1. Incluez le tarif de base de la chambre, les taxes et autres frais sous <Result>, puis ajoutez une offre de chambres qui correspond à l'offre de chambre de base.

  2. Si nécessaire, définissez des offres de chambres supplémentaires dans le même bloc <Result> pour d'autres types de chambres dans l'établissement ou pour différents services et formules.

  3. Une fois l'offre de chambres lancée, supprimez le prix de base, les taxes et les autres frais de la chambre.

Métadonnées de l'offre de chambres

Lorsque vous définissez des offres de chambres et des caractéristiques tarifaires, vous indiquez généralement à l&#39;avance la description, les services supplémentaires inclus dans le tarif et d&#39;autres renseignements. Toutes ces informations sont appelées les métadonnées de l&#39;offre de chambres. Vous faites ensuite référence à ces métadonnées dans les messages de mise à jour de vos prix, mais sans les inclure.

Lorsque vous définissez des offres de chambres, utilisez les éléments <RoomData> existants pour les descriptions des chambres physiques, et des éléments <PackageData> pour les conditions et caractéristiques tarifaires qui ne font pas partie de la description des chambres physiques.

L'utilisation des éléments <RoomData> et <PackageData> peut réduire considérablement la taille de votre liste d'hôtels et de votre flux Prix de l'hôtel, car elle réduit la quantité de données répétitives envoyées dans les messages Transaction.

Par exemple, des données comme le nom et la description d'une chambre sont généralement répétées pour tous les séjours. Vous pouvez utiliser les éléments <RoomData> et <PackageData> pour définir ce type de données une seule fois. Les données d'offre de chambres spécifiques au séjour sont ensuite fusionnées avec les définitions de chambres et de formules stockées pour être présentées à l'utilisateur final.

Google met en correspondance vos métadonnées avec les données spécifiques au séjour afin d&#39;afficher le contenu de vos annonces. L'association des noms et descriptions des éléments <RoomData> et <PackageData> fait l'objet d'un traitement spécial, qui permet de décrire la chambre physique dans <RoomData>, et d'indiquer les caractéristiques tarifaires et les détails des formules dans <PackageData>.

Si vous définissez à la fois des données de chambre et des données de formule pour une même chambre ou offre de chambres, Google affiche ces deux types de données dans votre annonce, en les séparant par un trait d'union.

Consignes relatives aux photos

Lorsque vous envoyez des photos de votre chambre, suivez ces consignes pour vous assurer qu'elles sont diffusées auprès des utilisateurs :

  • Envoyez des photos de chaque type de chambre, y compris des chambres accessibles, par exemple des chambres accessibles désignées avec différents équipements de salle de bain, comme une douche accessible en fauteuil roulant.

  • Incluez au moins quatre photos de la chambre et au moins une photo de la salle de bain.

  • Les photos doivent représenter la chambre elle-même et non l'établissement. Les photos les plus importantes sont le lit, la chambre entière, la salle de bain, l'espace de vie et la vue de la chambre (avec le reste de la pièce sur la même photo) et, le cas échéant, le balcon, le patio ou la terrasse.

    Il est également utile de prendre des photos du bureau, de la cuisine, des cafetières/théières et des caractéristiques distinctes de la chambre.

  • Évitez les photos de personnes et de biens (par exemple, l'extérieur ou les équipements de la propriété), de sites touristiques/touristiques et de nourriture.

  • Évitez les gros plans d'objets, comme des verres à pied.

  • Évitez les marques, même si vous pouvez inclure des articles de toilette portant une étiquette ou une marque dans une photo qui montre l'ensemble de la salle de bain. Les photos ne doivent pas comporter de grands blocs de texte, de logos ni de filigranes.

  • Fournissez des photos standards en mode paysage (horizontal) avec un large champ de vision. Évitez les photos en mode fisheye et celles déformées. Prenez des photos en haute résolution pour améliorer votre classement. Vous n'avez pas besoin d'envoyer la même photo dans différentes résolutions.

Priorité des données

Les données sur les offres de chambres sont recueillies auprès de toutes les sources disponibles. Elles sont associées selon des règles de priorité afin d'afficher les données finales pour l'hôtel, le séjour et l'offre de chambres sélectionnés. L'ordre de priorité est le suivant, de la priorité la plus basse à la plus élevée:

  1. (Priorité la plus faible) Données partenaire
  2. Données établissement
  3. <RoomData>, où <RoomID> correspond à <RoomID> dans le bloc <RoomBundle>
  4. <PackageData>, où <PackageID> correspond à <PackageID> dans le bloc <RoomBundle>
  5. (Priorité la plus élevée) <RoomBundle>

Définir les tarifs et la disponibilité

Pour définir les prix et les disponibilités d'une offre de chambres, utilisez un élément <RoomBundle> dans un message Transaction pour chaque combinaison formule ou séjour. L'élément <RoomBundle> doit se trouver dans l'élément <Result>. Un exemple de code pour deux éléments <RoomBundle> est présenté ci-dessous. Notez que, dans cet exemple, les deux éléments <RoomBundle> font référence aux métadonnées de chambre et de formule à l'aide de <RoomID> et de <PackageID>.

Pour chaque <Result>, l'ensemble d'offres de chambres inclus remplace l'ensemble existant pour cette combinaison d'hôtel ou de séjour. Si vous ne définissez aucune offre de chambres ou caractéristique tarifaire dans l'élément <Result>, toutes les offres de chambres sont supprimées, et seule la chambre de base pour cet hôtel ou ce séjour s'affiche dans les résultats de recherche.

Veillez à utiliser des éléments tels que <Name> afin que vos offres de chambres soient plus attrayantes pour les clients potentiels, et assurez-vous qu'elles correspondent à la page de destination de l'hôtel. Dans cet exemple, vous allez définir des noms et d'autres informations descriptives dans les métadonnées.

<RatePlanID> est une valeur facultative qui représente l'identifiant unique d'une combinaison chambre/formule. Nous vous recommandons vivement d'utiliser RatePlanID comme variable pour créer l'URL de votre page de destination dynamique (anciennement "point de vente"). Pour en savoir plus, consultez la page Utiliser des variables et des conditions.

Les éléments suivants sont facultatifs dans les offres de chambres :

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

Lorsque vous implémentez une offre de chambres dans un compte actif, supprimez <Baserate> une fois l'offre de chambres activée.

<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>

Définir des métadonnées de chambres et de formules

Pour définir des métadonnées d'offres de chambres, utilisez les éléments <PackageData> et <RoomData> dans l'élément <PropertyDataSet> d'un message Transaction.

Définissez les métadonnées de chambres et de formules dans un message Transaction distinct des données sur les tarifs et les disponibilités. Si vous fournissez ces données à l'avance, vos messages de mise à jour des prix n'ont pas besoin d'inclure des informations répétitives comme les descriptions, les URL de photos, les services proposés et d'autres données concernant chaque chambre ou formule pour tous les séjours.

Google stocke les métadonnées pour vous et les insère dans vos annonces lorsqu'elles sont affichées. Vous pouvez mettre à jour les métadonnées de vos chambres et de vos formules à tout moment à l'aide d'un nouveau message Transaction.

Dans le message Transaction, vous définissez un ID de formule et un ID de chambre sur chaque bloc que vous référencez ensuite dans les blocs <Result> de vos mises à jour de prix.

Si les données de chambre et de formule changent (par exemple, si vous ajoutez un nouveau type de chambre dans un établissement), envoyez un nouveau message Transaction contenant les données de chambre et de formule modifiées. Google remplacera alors les métadonnées existantes pour une chambre ou une formule par les nouvelles données transmises.

Google vous recommande de définir les métadonnées lors de la configuration initiale. Après avoir prédéfini les métadonnées, il vous suffit de référencer les valeurs <RoomID> et <PackageID> dans vos mises à jour de tarifs au lieu d'inclure de nouveau toutes ces informations. Google utilise ces ID pour faire correspondre les chambres et les offres de chambres avec les métadonnées stockées. Cela peut réduire considérablement la taille globale de vos messages Transaction.

Étant donné que les prix pour les combinaisons chambre ou séjour changent beaucoup plus fréquemment que les descriptions des chambres ou des formules, le fait de définir une seule fois les métadonnées et d'y faire référence ensuite est une utilisation bien plus efficace des messages Transaction. De plus, vous pouvez éviter des erreurs comme la non-correspondance des descriptions de chambres en utilisant des métadonnées plutôt qu'en définissant les données de façon intégrée.

La méthode recommandée (et la plus efficace) pour définir séparément les métadonnées et la tarification est présentée ci-dessous:

<!-- 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>

Nombre de personnes et capacité

Lorsque vous définissez des offres de chambres, vous devez comprendre la différence entre l'occupation et la capacité :

Nombre de personnes
Nombre de personnes pour lequel une offre de chambres est prévue. Par exemple, la "Formule Lune de miel" propose une occupation pour deux personnes. Vous définissez la valeur d'occupation d'une formule à l'aide de l'élément enfant <Occupancy> des éléments <PackageData> ou <RoomBundle>.
Capacité
Nombre maximal de personnes que peut accueillir une chambre. La capacité d'une salle est toujours égale ou supérieure au nombre de personnes. Par exemple, la "Suite Lune de miel" de votre hôtel possède une capacité d'accueil de six personnes, mais vous présentez le tarif d'une offre pour deux personnes. Vous définissez la valeur de la capacité d'un package à l'aide de l'élément enfant <Capacity> de l'élément <RoomData>.

Lorsque vous fixez le prix d'une offre de chambres, vous devez le fixer pour le nombre de personnes visé par l'offre (valeur spécifiée dans l'élément <Occupancy> de l'offre). Si la valeur de l'élément <Occupancy> est "2", le prix de cette offre doit être pour deux personnes. Vous ne pouvez pas définir <Occupancy> pour quatre personnes et fixer le prix de l'offre pour deux personnes.

Chambres partagées

Vous utilisez également l'occupation et la capacité dans les offres de chambres pour définir les prix des chambres partagées (comme en auberge de jeunesse). Par exemple, pour définir le prix par personne dans un dortoir composé de huit lits, vous devez définir l'occupation sur 1 et la capacité sur 8, puis identifier le concept dans le nom <RoomData>. Voir un exemple

Modifier des offres de chambres

Cette section explique comment supprimer une offre de chambres qui n'est plus disponible et mettre à jour le prix d'une offre de chambres existante.

Suppression d'une offre de chambres

Vous devez procéder différemment pour supprimer les offres de chambres et les prix de l'hôtel.

Pour supprimer une combinaison de chambre ou d'itinéraire de l'inventaire, vous devez définir le paramètre <Baserate> de l'élément <Result> sur -1. Pour supprimer une offre de chambres pour une chambre ou un séjour donnés, supprimez l'élément <RoomBundle> du bloc <Result> dans le message Transaction.

Dans les flux de données, les offres de chambres sont considérées comme un ensemble d'éléments (au nombre de zéro comme des dizaines). Lorsque vous envoyez des offres de chambres à Google, vous envoyez l'ensemble actuel complet. Vous ne remplacez pas les valeurs d'une offre de chambres individuelle pour que l'une des offres disponibles précédemment devienne indisponible. L'ensemble des offres figurant dans le message Transaction le plus récent remplace l'ensemble actuel.

Par exemple, vous proposez les offres A, B, C et D. Vous envoyez d'abord un message qui définit l'ensemble des offres de chambres A, B, C et D. Par la suite, si l'offre B n'est plus disponible, vous devez renvoyer l'ensemble complet avec uniquement les offres A, C et D. Si toutes les offres de chambres sont épuisées, envoyez un ensemble vide d'offres.

Ajustements des prix

Pour modifier le prix d'une offre de chambres, définissez la nouvelle valeur <Baserate> dans l'élément <Result>.

Chaque fois que vous mettez à jour le bloc <Result> d'une chambre ou d'un séjour dans vos messages Transaction, vous devez inclure l'ensemble complet des offres de chambres disponibles pour chaque élément <Result>. Google remplace l'ensemble d'offres de chambres existant par le nouvel ensemble. Si vous n'indiquez aucune offre de chambres dans le bloc <Result>, Google supprime toutes les offres de chambres pour cette chambre ou ce séjour.

Mises à jour des métadonnées

Pour mettre à jour les métadonnées d'offre de chambres, répondez à un message <Query> de Google.

Vous répondez à un message Query avec un message Transaction qui définit les métadonnées de chambre et de formule pour les hôtels spécifiés. Pour en savoir plus, consultez la section Messages de requête.