Message promotionnel

Présentation

Le message Promotions définit des règles de remise sur les tarifs à l'aide de OTA_HotelRateAmountNotifRQ. Pour chaque tarif, les promotions définies sont évaluées, et la remise la plus élevée autorisée est appliquée au tarif. Ce type de message est facultatif. Vous ne devez définir des promotions que si elles sont utilisées dans votre système pour appliquer des remises.

Vous pouvez combiner des promotions et les appliquer à différents attributs utilisateur, tels que le type d'appareil (mobile, tablette, ordinateur) et les codes pays.

Pour obtenir des exemples de différents scénarios liés aux promotions, consultez les guides pratiques.

Les sections suivantes présentent les consignes générales, un exemple de base et des tutoriels pour commencer à ajouter et à mettre à jour des promotions.

Consignes

Cette section présente les consignes courantes et les instructions spéciales pour définir des promotions.

Respectez les consignes suivantes pour les promotions:

Actions

Supprimer
Utilisez une action delete dans l'élément <Promotion> pour supprimer une seule promotion à l'aide de son ID.
Superposition
Utilisez une action overlay dans l'élément <HotelPromotions> pour remplacer toutes les promotions d'un établissement.
Delta
Si aucune action n'est spécifiée, toutes les promotions spécifiées dans <HotelPromotions> sont ajoutées ou remplacées. Si une promotion portant cet ID n'a jamais été ajoutée ou a été supprimée, elle est ajoutée. Si une promotion portant cet ID existe, elle est remplacée par la nouvelle définition.

Questions d'ordre général

  • Il peut y avoir une seule promotion ou un ensemble de promotions pour chaque établissement, et chaque promotion est associée à un ensemble de conditions. Cette promotion ne peut être appliquée que si les conditions sont remplies.

  • Si vous souhaitez qu'une promotion ne s'applique qu'à une date, un type de chambre ou un plan tarifaire spécifique, indiquez-le dans les conditions de cette promotion. Si la promotion ne s'applique pas à une date, un type de chambre ou un plan tarifaire spécifique, vous n'avez pas besoin de les définir.

  • Chaque promotion est liée à un établissement spécifique. Si vous utilisez la même promotion pour plusieurs établissements, vous devez l'envoyer séparément pour chaque établissement. Pour spécifier votre identifiant de propriété, utilisez l'attribut hotel_id de l'élément <HotelPromotions>.

  • Vous pouvez inclure jusqu'à 99 promotions. Contactez votre TAM Google si vous avez besoin d'inclure d'autres éléments.

  • Utilisez l'élément <Stacking> pour spécifier la manière dont les promotions peuvent être combinées. Par défaut, Google utilise le type d'empilement base, ce qui signifie que la meilleure promotion de base éligible est sélectionnée et appliquée en premier, avant les autres. Notez que l'élément base ne peut être associé qu'à second ou any, et qu'il ne peut pas être associé à un autre élément base ou none.

  • Même si plusieurs promotions peuvent être appliquées ensemble, cette pile peut ne pas être celle utilisée s'il existe une autre promotion ou pile de promotions offrant la remise plus importante. La promotion (combinaison) offrant la remise la plus importante est appliquée à la réservation lorsque plusieurs promotions (combinaisons de promotions) sont éligibles.

  • Envoyez un message d'information sur les promotions chaque fois que des modifications affectant vos promotions se produisent.

La meilleure promotion (ou pile de promotions) est appliquée au montant AmountAfterTax. Si seul AmountBeforeTax est spécifié, les promotions sont appliquées à AmountBeforeTax.

Exemple

Cette section fournit un exemple de base de message Promotions utilisant des éléments obligatoires et facultatifs. Une fois que vous avez préparé votre fichier, envoyez-le à Google via un message POST à ce point de terminaison:

https://www.google.com/travel/hotels/uploads/promotions

Pour en savoir plus sur l'envoi/la publication du message, consultez la section Envoyer des messages.

Pour l'attribut hotel_id de <HotelPromotions>, utilisez l'ID d'hôtel unique que vous avez utilisé dans votre système pour identifier l'établissement. Cette valeur doit correspondre à l'identifiant de l'hôtel spécifié à l'aide de <id> dans l'élément <listing> du flux Hotel List Feed. La cohérence avec votre système est essentielle pour vous assurer que Google affiche correctement vos données.

UserCountry permet de répertorier les zones géographiques des utilisateurs (pays) éligibles à la promotion. Si cette option est spécifiée, seuls les utilisateurs situés dans les pays listés bénéficient du tarif réduit.

Cet exemple montre comment définir une remise de 15% pour un séjour prolongé pour les utilisateurs basés aux États-Unis et en Italie:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123_abc"
            timestamp="2022-05-30T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="15"/>
      <UserCountries>
        <Country code="US"/>
        <Country code="IT"/>
      </UserCountries>
    </Promotion>
  </HotelPromotions>
</Promotions>

Pour obtenir plus d'exemples, consultez la section Exemples de promotions.

Guides pratiques

Cette section fournit des solutions aux scénarios que vous pouvez rencontrer lors de la configuration de promotions.

Scénario 1: Ajouter une remise pour un séjour prolongé

Description

Vous souhaitez proposer des nuitées à prix réduit certains jours de séjours prolongés.

Solution

Utilisez le paramètre FreeNights pour personnaliser le type de remise appliquée en fonction du nombre de nuitées.

Échantillon

Cet exemple montre comment ajouter une remise de 20% pour deux nuits toutes les sept nuits pour la plage de dates de réservation spécifiée. Pour un séjour de 15 nuits, une remise de 20% s'applique à un total de quatre nuits.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-05T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-02-01" end="2022-06-30"/>
      </BookingDates>
      <Discount>
        <FreeNights stay_nights="7"
                    discount_nights="2"
                    discount_percentage="20"
                    night_selection="cheapest"
                    repeats="true"/>
      </Discount>
    </Promotion>
  </HotelPromotions>
</Promotions>

Scénario 2: Définir des types d'appareils

Définissez devices pour spécifier les appareils des utilisateurs éligibles à la promotion. Si elle est spécifiée, seuls les utilisateurs des appareils listés bénéficient du tarif réduit.

Description

Vous souhaitez spécifier le type d'appareil d'utilisateur concerné par la promotion.

Solution

Définissez le type d'appareil sur une ou plusieurs des valeurs suivantes: desktop, tablet ou mobile.

Échantillon

L'exemple suivant montre comment spécifier une remise de 25% pour les utilisateurs de mobiles et de tablettes:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="25"/>
        <Devices>
          <Device type="mobile"/>
          <Device type="tablet"/>
        </Devices>
    </Promotion>
  </HotelPromotions>
</Promotions>

Scénario 3: Remplacer les anciennes promotions par de nouvelles promotions

Description

L'ensemble actuel de promotions pour un établissement est obsolète ou incorrect et doit être remplacé par un nouvel ensemble.

Solution

Utilisez l'action overlay pour remplacer les promotions.

Échantillon

L'exemple suivant montre les deux remises d'origine de 20% et 30% pour l'établissement.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-06-01" end="2022-07-31"/>
      </BookingDates>
      <Discount percentage="20"/>
    </Promotion>
    <Promotion id="2">
      <BookingDates>
        <DateRange start="2022-08-01" end="2022-08-31"/>
      </BookingDates>
      <Discount percentage="30"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

L'exemple suivant montre comment utiliser overlay pour remplacer les deux promotions existantes par une seule promotion de 15% de remise pour l'établissement.

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-25T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1" action="overlay">
    <Promotion id="1">
      <BookingDates>
        <DateRange start="2022-06-01" end="2022-07-31"/>
      </BookingDates>
      <Discount percentage="15"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Scénario 4: Supprimer une promotion ou toutes les promotions

Description

Vous souhaitez supprimer une ou toutes les promotions (sans les remplacer), car la propriété a supprimé toutes ses promotions sans en définir de nouvelles, ou vous avez commis une erreur et devez la corriger.

Solution

Utilisez l'action delete si vous ne souhaitez supprimer que des promotions individuelles spécifiques pour un établissement, et l'action overlay (et non delete) pour supprimer toutes les promotions existantes sans les remplacer.

Pour savoir comment remplacer des promotions à l'aide de overlay, consultez le scénario 3.

Samples

L'exemple suivant montre comment supprimer une seule promotion pour un établissement:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1" action="delete"/>
  </HotelPromotions>
</Promotions>

Cet exemple montre comment supprimer toutes les promotions sans remplacer un établissement:

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1" action="overlay"/>
</Promotions>

Scénario 5: Superposer les promotions

La superposition indique comment les promotions peuvent être combinées. S'il n'est pas spécifié, la valeur de type est considérée comme base, ce qui signifie que la meilleure promotion de base éligible est sélectionnée et appliquée en premier, avant les autres. Lorsque l'attribut type de Stacking est défini sur any, il peut être associé à n'importe quelle autre promotion.

Description

Vous souhaitez que l'utilisateur ait la possibilité d'utiliser plusieurs promotions à la fois pour le même établissement.

Solution

Utilisez la pile pour définir plusieurs remises par propriété. Une pile peut comporter au maximum une base et une second, mais un nombre illimité de any. any peut être combiné avec les autres types, à l'exception de none.

Échantillon

Cet exemple montre comment empiler les types de pile base, second et any. Pour une remise combinée de 15%, 25 % ou 10%, le prix total de 100 $s'élève à 57,38 $ (100 × 0,85 × 0,75 × 0,9).

<?xml version="1.0" encoding="UTF-8"?>
<Promotions partner="account_x"
            id="123"
            timestamp="2022-05-20T16:20:00-04:00">
  <HotelPromotions hotel_id="Property_1">
    <Promotion id="1">
      <Discount percentage="15"/>
      <Stacking type="base"/>
    </Promotion>
    <Promotion id="2">
      <Discount percentage="25"/>
      <Stacking type="second"/>
    </Promotion>
    <Promotion id="3">
      <Discount percentage="10"/>
      <Stacking type="any"/>
    </Promotion>
    <Promotion id="4">
      <Discount percentage="40"/>
      <Stacking type="none"/>
    </Promotion>
  </HotelPromotions>
</Promotions>

Notez que la remise combinée pour les promotions d'imbrication 1 à 3 est meilleure que pour la promotion 4. La promotion 4 ne peut pas être combinée avec d'autres promotions en raison de son type d'empilement (none). Si la promotion 4 présente une remise de 43% ou plus, elle sera utilisée à la place de la combinaison des promotions 1 à 3.