Documentation de référence XML sur les règles d'offres

Le fichier XML de règles d'offres définit les règles de diffusion des tarifs sous conditions et des tarifs préférentiels. Vous pouvez ajouter ou modifier un fichier XML de règles d'offres sur la page Règles d'offres d'Hotel Center. Pour en savoir plus sur les tarifs sous conditions et les tarifs préférentiels, consultez la section Tarifs préférentiels et sous conditions.

Chaque règle d'offres nécessite un élément id, qui peut être référencé dans l'élément <Rate> d'un message Transaction. Un élément <Rate> qui fait référence à un ID de règle d'offres n'est diffusé qu'auprès des utilisateurs et selon les conditions définies par la règle d'offres. Un ID de règle d'offres peut également être référencé à l'aide d'une variable dans une URL de page de destination.

<RateRuleSettings>

Élément racine du fichier XML de règles d'offres. L'élément <RateRuleSettings> (anciennement <PrivateRates>) contient les éléments suivants:

  • Les éléments <UserRateCondition> qui définissent les conditions à respecter pour les tarifs sous conditions et préférentiels. Par exemple, vous pouvez créer un tarif sous conditions qui correspond à la condition de tous les utilisateurs d'un pays donné.

  • Les éléments <RateRule>, chacun définissant une règle d'offres pour référence dans un <Rate> dans un message Transaction. Chaque <RateRule> spécifie les conditions et le traitement dans l'interface utilisateur qui créent un tarif sous conditions ou privé.

L'élément <RateRuleSettings> apparaît à l'emplacement suivant dans la hiérarchie XML des règles d'offres:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Syntaxe

L'élément <RateRuleSettings> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="some_id" op="[all|any|none]">
    ...
  </UserRateCondition>
  <!-- Required -->
  <RateRule id="rate_rule_id">
    <!-- Required -->
    <UserRateCondition op="[all|any|none]">
      ...
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Attributs

L'élément <RateRuleSettings> ne comporte aucun attribut.

Éléments enfants

L'élément <RateRuleSettings> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<RateRule> Required <RateRule>

Définit les conditions de correspondance, les modifications et l'éligibilité à la diffusion d'un tarif sous conditions ou privé. Nécessite un attribut id, qui peut être référencé dans un élément <Rate> d'un message Transaction ou dans une URL de page de destination.

<UserRateCondition> Optional <UserRateCondition>

Définit une ou plusieurs conditions qui entraînent la diffusion de tarifs préférentiels ou sous conditions.

Les conditions peuvent être définies de manière intégrée à l'aide d'éléments enfants <UserRateCondition>, en référence à un autre élément <UserRateCondition> à l'aide de l'attribut reference_id, ou des deux éléments intégrés et par référence. Toutefois, tout <UserRateCondition> avec un reference_id ne doit avoir aucun enfant.

Un élément <UserRateCondition> de premier niveau sous <RateRuleSettings> doit comporter un attribut id.

Exemples de tarifs sous conditions

Les exemples suivants présentent des méthodes de base pour définir des tarifs sous conditions.

Il est recommandé de faire référence à des conditions prédéfinies, comme indiqué dans l'exemple Utilisateurs mobiles.

Mobinautes

L'exemple de tarifs sous conditions suivant définit une règle d'offres qui correspond à tous les mobinautes en référençant un <UserRateCondition> prédéfini:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="mobile">
    <UserDeviceType>mobile</UserDeviceType>
  </UserRateCondition>
  <RateRule id="mobile">
    <!-- Referencing pre-defined conditions is recommended -->
    <UserRateCondition reference_id="mobile"/>
  </RateRule>
</RateRuleSettings>

Utilisateurs aux États-Unis

L'exemple de tarifs sous conditions suivant définit une règle d'offres qui correspond à tous les utilisateurs effectuant une recherche aux États-Unis en référençant un <UserRateCondition> prédéfini:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="us">
    <UserCountry>US</UserCountry>
  </UserRateCondition>
  <RateRule id="us">
    <UserRateCondition reference_id="us"/>
  </RateRule>
</RateRuleSettings>

<RateRule>

Conteneur permettant de spécifier:

  • Conditions de diffusion d'un tarif
  • Toute modification du prix et de l'interface utilisateur concernant le tarif, le cas échéant
  • Utilisation de traitements cachés dans l'interface utilisateur pour les tarifs préférentiels

L'élément <RateRule> apparaît à l'emplacement suivant dans la hiérarchie XML des règles d'offres:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Syntaxe

L'élément <RateRule> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <UserRateCondition ...>
  ...
  </UserRateCondition>
  <!-- At least one RateRule is required. The id attribute is required -->
  <RateRule id="rate_rule_id">
    <!-- One or more UserRateCondition elements (inline or referenced) are required. -->
    <UserRateCondition op="[all|any|none]"> // Inline example
      <Description>user_rate_condition_description</Description>
      <!-- Uses the member rate visible UI treatment -->
      <AlwaysEligibleMembershipProgram>program_name</AlwaysEligibleMembershipProgram>
      <LanguageCode>language_code</LanguageCode>
      <MaxUsersPercent>20</MaxUsersPercent> // 20% of users
      <!-- Requires <RateIneligibility> -->
      <MembershipProgram>program_name</MembershipProgram>
      <UserRateCondition reference_id="user_rate_condition_id"/>
      <UserCountry>country_code</UserCountry>
      <UserDeviceType>[mobile|desktop|tablet]</UserDeviceType>
      <UserListId>id</UserListId>
      <UserSignedIn>[true|false]</UserSignedIn>
      <IsDomestic>[true|false]</IsDomestic>
    </UserRateCondition>
    <RateIneligibility>
      <IneligibilityType>[exact|price_band|existence]</IneligibilityType>
      <IneligibilityReason>[program_member]</IneligibilityReason>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>[free_wifi]</HotelAmenity>
    </RateModification>
  </RateRule>
</RateRuleSettings>

Attributs

L'élément <RateRule> possède les attributs suivants :

Attribute Requis ? Type Description
id Obligatoire chaîne

Identifiant unique de la règle d'offres. Cet identifiant est référencé à l'aide de l'attribut rate_rule_id d'un <Rate> dans un message Transaction afin de diffuser un tarif sous conditions ou privé. La règle d'offres id peut également être référencée à l'aide d'une variable et de conditions dans une URL de page de destination.

Le nombre maximal de caractères autorisés est de 40.

Éléments enfants

L'élément <RateRule> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<RateIneligibility> Optional <RateIneligibility> Spécifie les valeurs qui déterminent le traitement spécifique de l'interface utilisateur pour un tarif <MembershipProgram>.

Valide uniquement lorsque <MembershipProgram> est spécifié dans <UserRateCondition>.

<UserRateCondition> Required <UserRateCondition>

Définit une ou plusieurs conditions qui entraînent la diffusion de tarifs préférentiels ou sous conditions.

Les conditions peuvent être définies de manière intégrée à l'aide d'éléments enfants <UserRateCondition>, en référence à un autre élément <UserRateCondition> à l'aide de l'attribut reference_id, ou les deux à la fois.

Notez toutefois que lorsqu'un élément <UserRateCondition> est un enfant de <RateRule>, l'élément <UserRateCondition> ne peut pas avoir d'attribut id et ne peut pas être référencé par un autre élément <UserRateCondition>.

<RateModification> Optional <RateModification> Modifie le traitement dans l'interface utilisateur pour les tarifs préférentiels.
<PromoCode> Optional string Spécifie un code à associer au tarif si cette règle d'offres est appliquée. comme indiqué dans la variable de page de destination PROMO-CODE.

<UserRateCondition>

Définit une ou plusieurs conditions qui entraînent la diffusion de tarifs préférentiels ou sous conditions.

L'élément <UserRateCondition> apparaît à l'emplacement suivant dans la hiérarchie XML des règles d'offres:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Syntaxe

L'élément <UserRateCondition> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <!-- "op" is required for more than one child element -->
  <UserRateCondition id="some_id" op="[all|any|none]">
    <UserDeviceType>device_type</UserDeviceType>
  </UserRateCondition>
  <UserRateCondition id="some_other_id" op="[all|any|none]">
    <UserDeviceType>device_type</UserDeviceType>
  </UserRateCondition>
  <!-- At least one RateRule is required -->
  <RateRule id="rate_rule_id">
    <UserRateCondition reference id="some_id"/>
  </RateRule>
  <RateRule id="rate_rule_id">
    <UserRateCondition reference id="some_other_id"/>
  </RateRule>
  <RateRule id="rate_rule_id">
    <UserRateCondition>
      <UserDeviceType>device_type</UserDeviceType>
    </UserRateCondition>
  </RateRule>
<span class="nocode"></RateRuleSettings></span>

Attributs

L'élément <UserRateCondition> possède les attributs suivants :

Attribute Requis ? Type Description
id Required (if top-level under <RateRuleSettings>) string

Identifiant unique pour ce <UserRateCondition>. Elle peut être référencée par un attribut id <RateRule> ou par un attribut reference_id <UserRateCondition>.

op Optional enum

L'attribut op est obligatoire lorsque <UserRateCondition> comporte plusieurs éléments enfants. La valeur de l'attribut peut être l'une des suivantes:

  • all: inclut les utilisateurs finaux qui correspondent à toutes les conditions définies par cette règle d'offres. Cette valeur ne peut pas être utilisée lorsque l'une des conditions est définie sur <UserListId>, sauf si une seule autre condition est définie (<AlwaysEligibleMembershipProgram> ou <MembershipProgram>).
  • any: inclure les utilisateurs finaux qui correspondent à l'une des conditions définies par cette règle d'offres.
  • none: exclut les utilisateurs finaux qui correspondent à l'une des conditions définies par cette règle d'offres. Cette valeur ne peut pas être utilisée lorsque l'une des conditions est <UserListId>.
reference_id Optional string

Définit cet élément comme référence à un autre <UserRateCondition> prédéfini avec un id correspondant.

Lorsque reference_id est présent:

  • Les éléments enfants ne seront pas analysés
  • id et op ne doivent pas être présents

Éléments enfants

L'élément <UserRateCondition> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<AlwaysEligibleMembershipProgram> Optional string

Indique que le tarif applique le traitement dans l'interface utilisateur visible par les membres.

La valeur de cet élément peut être n'importe quel nom de programme d'adhésion.

<Description> Optional string Décrit <UserRateCondition>. Ce document est fourni à des fins de documentation et n'a aucune incidence sur les fonctionnalités.
<LanguageCode> Optional string Indique que le tarif sera proposé aux utilisateurs dont la langue correspond à ce code de langue à deux lettres.
<MaxUsersPercent> Optional float

Indique que le tarif sera proposé aléatoirement à ce pourcentage d'utilisateurs finaux.

La valeur doit être un entier compris entre 0 et 100 (inclus). Par exemple, 20 cibleront 20% des utilisateurs finaux.

<MembershipProgram> Optional string

Indique que le tarif applique un traitement dans l'interface utilisateur du programme d'adhésion, tel que déterminé par l'élément <IneligibilityReason> de <RateIneligibility>.

Pour que la valeur de <MembershipProgram> soit valide, vous devez spécifier <RateIneligibility>.

La valeur de <MembershipProgram> peut être n'importe quel nom de programme d'adhésion.

<UserRateCondition> Optional <UserRateCondition>

Définit une ou plusieurs conditions qui entraînent la diffusion de tarifs préférentiels ou sous conditions.

Un <UserRateCondition> avec un reference_id ne doit pas avoir d'enfant.

<UserCountry> Optional string

Un code pays CLDR, tel que DE ou FR. Notez que, pour certains pays, le code CLDR est différent du code ISO à deux lettres. Les codes de région CLDR ne sont pas acceptés.

Indique que l'utilisateur doit se trouver dans le pays indiqué. Google détermine le pays de l'utilisateur final à partir de son adresse IP.

<UserDeviceType> Optional enum Définit la condition de type d'appareil. Valeurs autorisées :
  • mobile
  • desktop
  • tablet
<UserListId> Optional string ID de la liste d'utilisateurs Google Ads d'une liste d'audience.

Cette condition ne peut être utilisée qu'avec <AlwaysEligibleMembershipProgram> ou <MembershipProgram>, ou lorsque op est défini sur any.

<UserSignedIn> Optional boolean Booléen indiquant si l'utilisateur doit ou non être connecté à son compte Google. La valeur true indique que l'utilisateur doit être connecté. La valeur false indique que l'utilisateur ne doit pas être connecté. Si vous ne voulez pas que l'utilisateur soit connecté ou déconnecté, n'incluez pas de condition <UserSignedIn>.
<IsDomestic> Optional boolean Booléen indiquant si l'utilisateur doit résider dans le même pays que celui où se trouve l'hôtel. La valeur true indique que l'utilisateur doit se trouver dans le même pays que l'hôtel. La valeur false indique que l'utilisateur peut venir d'un pays autre que le pays de l'hôtel. Si vous souhaitez un contrôle plus précis, utilisez la condition <UserCountry>.

Exemples de tarifs sous conditions

Pourcentage d'utilisateurs

L'exemple de tarifs sous conditions suivant spécifie que le tarif sera proposé de manière aléatoire à 20 % des utilisateurs:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="20_percent_users">
    <UserRateCondition>
      <MaxUsersPercent>20</MaxUsersPercent>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Utilisateurs au Royaume-Uni et sur les mobiles

L'exemple de tarifs sous conditions suivant définit une règle d'offres qui correspond à tous les utilisateurs qui effectuent une recherche au Royaume-Uni avec un appareil mobile à l'aide d'un <UserRateCondition> intégré:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="gb_mobile">
    <UserRateCondition op="all">
      <UserCountry>GB</UserCountry>
      <UserDeviceType>mobile</UserDeviceType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Japon, mais pas au Japon

L'exemple de tarif sous conditions suivant présente une règle d'offres qui correspond aux utilisateurs au Japon et une autre règle d'offres qui correspond aux utilisateurs dans le reste du monde :

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="jp">
    <UserRateCondition>
      <UserCountry>jp</UserCountry>
    </UserRateCondition>
  </RateRule>
  <RateRule id="row_not_jp">
    <UserRateCondition op="none">
      <UserCountry>jp</UserCountry>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Tous, aucun et aucun

L'exemple de tarifs sous conditions suivant montre comment l'attribut op peut être utilisé pour établir des correspondances avec différentes conditions de différentes manières à l'aide des valeurs any, all et none. Par exemple, comme indiqué dans la condition au_nz, vous pouvez utiliser l'un de ces éléments pour mettre en correspondance les utilisateurs de plusieurs pays. Comme indiqué dans la règle d'offres au_nz_mobile_tablet, vous pouvez utiliser all pour exiger que les utilisateurs remplissent plusieurs conditions. La règle d'offres row_mobile_tablet correspond aux utilisateurs situés dans le reste du monde (à l'exception de l'Australie et de la Nouvelle-Zélande) et qui répondent également à la condition mobile_tablet.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <UserRateCondition id="au_nz" op="any">
    <UserCountry>AU</UserCountry>
    <UserCountry>NZ</UserCountry>
  </UserRateCondition>
  <UserRateCondition id="mobile_tablet" op="any">
    <UserDeviceType>mobile</UserDeviceType>
    <UserDeviceType>tablet</UserDeviceType>
  </UserRateCondition>
  <RateRule id="au_nz_mobile_tablet">
    <UserRateCondition op="all">
      <UserRateCondition reference_id="au_nz"/>
      <UserRateCondition reference_id="mobile_tablet"/>
    </UserRateCondition>
  </RateRule>
  <RateRule id="row_mobile_tablet">
    <UserRateCondition op="all">
      <UserRateCondition op="none">
        <UserRateCondition reference_id="au_nz"/>
      </UserRateCondition>
      <UserRateCondition reference_id="mobile_tablet"/>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Exemples de tarifs préférentiels

Tarif pour les membres visible 1

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="member_visible">
    <UserRateCondition>
      <AlwaysEligibleMembershipProgram>[enter your program here]</AlwaysEligibleMembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Tarif pour les membres visible 2

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="member_visible_es_only">
    <UserRateCondition op="all">
      <AlwaysEligibleMembershipProgram>[enter your program here]</AlwaysEligibleMembershipProgram>
      <UserCountry>es</UserCountry>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Taux d'audience 1

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="audience_list">
    <UserRateCondition>
      <UserListId>[enter an audience list id]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Taux d'audience 2

Cet exemple de tarif préférentiel montre comment spécifier un traitement visible par l'interface utilisateur pour plusieurs listes d'audience:

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <UserRateCondition op="all">
      <AlwaysEligibleMembershipProgram>[enter the program name here]</AlwaysEligibleMembershipProgram>
      <UserRateCondition op="any">
        <UserListId>[enter one audience list id here]</UserListId>
        <UserListId>[enter another audience list id here]</UserListId>
      </UserRateCondition>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateIneligibility>

Indique comment afficher le traitement masqué dans l'interface utilisateur pour le tarif réservé aux membres. Si cette valeur n'est pas incluse, le traitement masqué dans l'interface utilisateur ne s'affichera pas.

Pour utiliser <RateIneligibility> dans un <RateRule>, <MembershipProgram> doit également être spécifié dans un élément <UserRateCondition> pour <RateRule>.

L'élément <RateIneligibility> apparaît à l'emplacement suivant dans la hiérarchie XML des règles d'offres:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Syntaxe

L'élément <RateIneligibility> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings ...>
  <UserRateCondition ...>
  ...
  </UserRateCondition>
  <RateRule ...>
    <UserRateCondition ...>
      ...
      <!-- Required when using RateIneligibility -->
      <MembershipProgram>program_name</MembershipProgram>
      ...
    </UserRateCondition>
    <RateIneligibility>
      <IneligibilityType>[exact|price_band|existence]</IneligibilityType>
      <IneligibilityReason>[program_member]</IneligibilityReason>
    </RateIneligibility>
  </RateRule>
</RateRuleSettings>

Attributs

L'élément <RateIneligibility> ne comporte aucun attribut.

Éléments enfants

L'élément <RateIneligibility> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<IneligibilityType> Required enum

Définit la manière dont le texte (affiché à côté du taux barré) décrit le tarif masqué.

Les valeurs possibles sont les suivantes :

  • exact: pourcentage de remise. Le message "Obtenez X% de réduction en vous inscrivant sans frais" s'affiche.
  • price_band: plage de remise. Le message "Obtenez jusqu'à 5 % de remise en vous inscrivant sans frais" s'affiche avec la mention "Obtenez jusqu'à 5 % de remise". Les remises plus importantes apparaissent par tranches de cinq points, par exemple "5 à 10 % de réduction" ou "10 à 15 % de remise".
  • existence: indice non spécifique. Le message "Inscrivez-vous sans frais pour bénéficier de tarifs réduits" s'affiche alors.

Pour en savoir plus sur les traitements de l'interface utilisateur, consultez la page Tarifs préférentiels : informations et exemples.

<IneligibilityReason> Required enum

Les valeurs possibles sont les suivantes :

  • program_member: affiche le tarif en fonction du traitement masqué dans l'interface utilisateur.

Exemples de tarifs préférentiels

Cette section inclut des exemples masqués de tarif pour les membres (de base) et des exemples masqués de tarif pour les membres (plusieurs conditions). Vous pouvez également afficher les tarifs réservés aux membres pour des sous-ensembles d'utilisateurs. Pour obtenir des exemples, consultez Tarifs préférentiels.

Exemples masqués de tarif pour les membres (version de base)

Remise exacte

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>exact</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Remise sur le bracelet

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>price_band</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Remise suggérée

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Exemples masqués de tarif pour les membres (plusieurs conditions)

op="any"

Tarif de liste d'audience pour les membres + tarif pour les membres masqué (remise sur l'existence) pour les non-membres

Cet exemple de tarif préférentiel spécifie le type de traitement existence de l'UI masqué pour le tarif réservé aux membres, qui est présenté aux utilisateurs et non à la liste d'audience. Les utilisateurs figurant dans la liste d'audience voient le taux d'audience.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>existence</IneligibilityType>
    </RateIneligibility>
    <UserRateCondition op="any">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserListId>[enter you audience list id here]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

op="tous"

Tarif réservé aux membres masqué pour les utilisateurs de la liste d'audience uniquement

Cet exemple de tarif privé spécifie le type de traitement exact de l'UI masqué pour le tarif réservé aux membres, modifié avec le texte supplémentaire "plus Wi-Fi gratuit". Ce traitement sera présenté aux utilisateurs qui correspondent à la liste d'audience.

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program_for_audience_list">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>exact</IneligibilityType>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>free_wifi</HotelAmenity>
    </RateModification>
    <UserRateCondition op="all">
      <MembershipProgram>[enter program name here]</MembershipProgram>
      <UserListId>[enter you audience list id here]</UserListId>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateModification>

Modifie le traitement dans l'interface utilisateur pour les tarifs préférentiels.

L'élément <RateModification> apparaît à l'emplacement suivant dans la hiérarchie XML des règles d'offres:

+ <RateRuleSettings>
    + <UserRateCondition>
    + <RateRule>
        + <UserRateCondition>
        + <RateIneligibility>
        + <RateModification>

Attributs

L'élément <RateModification> ne comporte aucun attribut.

Éléments enfants

L'élément <RateModification> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<HotelAmenity> Optional enum

Combinez-la avec <MembershipProgram> et <RateIneligibility> pour modifier le traitement masqué de l'interface utilisateur pour le tarif réservé aux membres.

Les valeurs possibles sont les suivantes :

  • free_wifi: ajoute plus free wifi au texte.
<PriceMultiplier> Optional float

Modifie le prix en multipliant cette valeur par le tarif de base, les taxes et les frais. Par exemple, si PriceMultiplier = 0,9, le tarif de base = 100 $, les taxes = 20 $, les frais = 10 $, après application du multiplicateur: tarif de base = 90 $, taxes = 18 $, frais = 9 $.

Cela vous permet d'appliquer une remise à tous les tarifs ayant une certaine règle d'offres.

Exemples de tarifs préférentiels

Services de l'hôtel

Tarif pour les membres masqué pour tous les utilisateurs (remises sur les bandes) + Wi-Fi gratuit

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="membership_program">
    <RateIneligibility>
      <IneligibilityReason>program_member</IneligibilityReason>
      <IneligibilityType>price_band</IneligibilityType>
    </RateIneligibility>
    <RateModification>
      <HotelAmenity>free_wifi</HotelAmenity>
    </RateModification>
    <UserRateCondition>
      <MembershipProgram>[enter program name here]</MembershipProgram>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

Multiplicateur du prix

Appliquer une remise de 5% aux tarifs mobiles dans le flux des prix

<?xml version="1.0" encoding="UTF-8"?>
<RateRuleSettings>
  <RateRule id="mobile">
    <RateModification>
      <PriceMultiplier>0.95</PriceMultiplier>
    </RateModification>
    <UserRateCondition>
      <UserDeviceType>mobile</UserDeviceType>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>