Referencia XML de las reglas de tarifas

El archivo en formato XML de reglas de tarifas define las reglas para entregar tarifas condicionales y privadas. Puedes agregar o editar un archivo en formato XML de reglas de tarifas en la página Reglas de tarifas de Hotel Center. Para obtener más información sobre las tarifas condicionales y privadas, consulta Tarifas condicionales y privadas.

Cada regla de tarifas requiere un id, al que se puede hacer referencia en un <Rate> de un mensaje de transacción. Una <Rate> que hace referencia a un ID de regla de tarifa solo se entrega a los usuarios y en las condiciones que define la regla. También se puede hacer referencia a un ID de regla de tarifa mediante una variable en una URL de página de destino.

<RateRuleSettings>

Es el elemento raíz del archivo en formato XML de reglas de tarifas. El elemento <RateRuleSettings> (anteriormente <PrivateRates>) contiene lo siguiente:

  • Son elementos <UserRateCondition> que definen las condiciones que se deben cumplir para las tarifas condicionales y privadas. Por ejemplo, puedes crear una tarifa condicional que coincida con la condición de todos los usuarios de un país determinado.

  • Son elementos <RateRule> que definen una regla de tarifas para la referencia en un <Rate> en un mensaje Transaction. Cada <RateRule> especifica las condiciones y el tratamiento de la IU que construyen una tarifa condicional o privada.

El elemento <RateRuleSettings> aparece en el siguiente lugar en la jerarquía XML de las reglas de tarifas:

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

Sintaxis

El elemento <RateRuleSettings> usa la siguiente sintaxis:

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

Atributos

El elemento <RateRuleSettings> no tiene ningún atributo.

Elementos secundarios

El elemento <RateRuleSettings> tiene los siguientes elementos secundarios:

Elemento secundario ¿Obligatorio? Tipo Descripción
<RateRule> Required <RateRule>

Define las condiciones de coincidencia, las modificaciones y la elegibilidad para entregar una tarifa condicional o privada. Requiere un atributo id, al que se pueda hacer referencia en un <Rate> de un mensaje de transacción o en una URL de página de destino.

<UserRateCondition> Optional <UserRateCondition>

Define una o más condiciones que, cuando coinciden, dan como resultado la entrega de tarifas condicionales o privadas.

Las condiciones se pueden definir de forma intercalada mediante elementos secundarios <UserRateCondition>, mediante referencia a otro elemento <UserRateCondition> y con el atributo reference_id, o bien de forma intercalada y como referencia. Sin embargo, cualquier <UserRateCondition> con un reference_id debe tener 0 elementos secundarios.

Un <UserRateCondition> de nivel superior en <RateRuleSettings> debe tener un atributo id.

Ejemplos de tarifas condicionales

En los siguientes ejemplos, se muestran formas básicas de definir tarifas condicionales.

Se recomienda hacer referencia a las condiciones predefinidas, como se muestra en el ejemplo Usuarios de dispositivos móviles.

Usuarios de dispositivos móviles

En el siguiente ejemplo de tarifas condicionales, se define una regla de tarifas que coincide con todos los usuarios de dispositivos móviles haciendo referencia a un <UserRateCondition> predefinido:

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

Usuarios de EE.UU.

En el siguiente ejemplo de tarifas condicionales, se define una regla de tarifas que coincide con todos los usuarios que realizan búsquedas en EE.UU. a través de una referencia a un <UserRateCondition> predefinido:

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

Un contenedor para especificar lo siguiente:

  • Condiciones para entregar una tarifa
  • Modificaciones, si las hubiera, en el precio y el tratamiento de la IU de la tarifa
  • Uso de tratamientos de IU ocultos para tarifas privadas

El elemento <RateRule> aparece en el siguiente lugar en la jerarquía XML de las reglas de tarifas:

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

Sintaxis

El elemento <RateRule> usa la siguiente sintaxis:

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

Atributos

El elemento <RateRule> tiene los siguientes atributos:

Atributo ¿Es obligatorio? Tipo Descripción
id Obligatorio cadena

Un identificador único para la regla de tarifas. Se hace referencia a este ID mediante el atributo rate_rule_id de una <Rate> en un mensaje de transacción para entregar una tarifa condicional o privada. También se puede hacer referencia a la regla de tarifas id con una variable y condiciones en una URL de página de destino.

La cantidad máxima de caracteres permitida es 40.

Elementos secundarios

El elemento <RateRule> tiene los siguientes elementos secundarios:

Elemento secundario ¿Obligatorio? Tipo Descripción
<RateIneligibility> Optional <RateIneligibility> Especifica los valores que determinan el tratamiento específico de la IU para una tasa de <MembershipProgram>.

Solo es válida cuando se especifica <MembershipProgram> en <UserRateCondition>.

<UserRateCondition> Required <UserRateCondition>

Define una o más condiciones que, cuando coinciden, dan como resultado la entrega de tarifas condicionales o privadas.

Las condiciones se pueden definir intercaladas con elementos secundarios <UserRateCondition>, con referencia a otro <UserRateCondition> con el atributo reference_id, o de manera intercalada y a través de referencia.

Sin embargo, ten en cuenta que cuando un <UserRateCondition> es un elemento secundario de <RateRule>, el elemento <UserRateCondition> no puede tener un atributo id y otro <UserRateCondition> no puede hacer referencia a él.

<RateModification> Optional <RateModification> Modifica el tratamiento de la IU para tarifas privadas.
<PromoCode> Optional string Especifica un código que se asociará con la tarifa si se aplica esta regla de tarifas. Se refleja en la variable PROMO-CODE de la página de destino.

<UserRateCondition>

Define una o más condiciones que, cuando coinciden, dan como resultado la entrega de tarifas condicionales o privadas.

El elemento <UserRateCondition> aparece en el siguiente lugar en la jerarquía XML de las reglas de tarifas:

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

Sintaxis

El elemento <UserRateCondition> usa la siguiente sintaxis:

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

Atributos

El elemento <UserRateCondition> tiene los siguientes atributos:

Atributo ¿Es obligatorio? Tipo Descripción
id Required (if top-level under <RateRuleSettings>) string

Un identificador único para este <UserRateCondition>. Se puede hacer referencia a través de un atributo id <RateRule> o un atributo <UserRateCondition> reference_id.

op Optional enum

El atributo op es obligatorio cuando <UserRateCondition> tiene varios elementos secundarios. El valor del atributo puede ser uno de los siguientes:

  • all: Incluye a los usuarios finales que coinciden con todas las condiciones que define esta regla de tarifas. Este valor no se puede usar cuando una de las condiciones es <UserListId>, a menos que solo se defina una condición más, <AlwaysEligibleMembershipProgram> o <MembershipProgram>.
  • any: Incluye a los usuarios finales que coinciden con cualquiera de las condiciones definidas por esta regla de tarifas.
  • none: Excluye a los usuarios finales que coinciden con cualquiera de las condiciones definidas por esta regla de tarifas. Este valor no se puede usar cuando una de las condiciones es <UserListId>.
reference_id Optional string

Define este elemento como referencia a otro <UserRateCondition> predefinido con un id coincidente.

Cuando reference_id está presente:

  • No se pueden analizar los elementos secundarios
  • id y op no deben estar presentes.

Elementos secundarios

El elemento <UserRateCondition> tiene los siguientes elementos secundarios:

Elemento secundario ¿Obligatorio? Tipo Descripción
<AlwaysEligibleMembershipProgram> Optional string

Especifica que la tarifa usará el tratamiento de la IU visible de la tarifa para miembros.

El valor de este elemento puede ser cualquier nombre de programa de membresía.

<Description> Optional string Describe el <UserRateCondition>. Esto es para fines de documentación y no tiene efecto en sus capacidades.
<LanguageCode> Optional string Especifica que la tarifa se ofrecerá a los usuarios cuyo idioma coincida con este código de idioma de dos letras.
<MaxUsersPercent> Optional float

Especifica que la tarifa se ofrecerá de forma aleatoria a este porcentaje de usuarios finales.

El valor debe ser un número entero entre 0 y 100 (inclusive). Por ejemplo, 20 se orientarán al 20% de los usuarios finales.

<MembershipProgram> Optional string

Especifica que la tarifa usará un tratamiento de IU del programa de membresía según lo determinado por el <IneligibilityReason> de <RateIneligibility>.

Para que <MembershipProgram> sea válido, se debe especificar <RateIneligibility>.

El valor de <MembershipProgram> puede ser cualquier nombre de programa de membresía.

<UserRateCondition> Optional <UserRateCondition>

Define una o más condiciones que, cuando coinciden, dan como resultado la entrega de tarifas condicionales o privadas.

Un <UserRateCondition> con un reference_id debe tener 0 elementos secundarios.

<UserCountry> Optional string

Un código de país de CLDR, como DE o FR Ten en cuenta que, en algunos países, el código CLDR no es el mismo que el código ISO de 2 letras. No se admiten los códigos regionales CLDR.

Especifica que el usuario debe estar ubicado en el país especificado. Google determina el país del usuario final a partir de su dirección IP.

<UserDeviceType> Optional enum Define la condición del tipo de dispositivo. Se permiten los siguientes valores:
  • mobile
  • desktop
  • tablet
<UserListId> Optional string Es el ID de la lista de usuarios de Google Ads de una lista de público.

Esta condición solo se puede usar con <AlwaysEligibleMembershipProgram> o <MembershipProgram>, o cuando op es any.

<UserSignedIn> Optional boolean Es un valor booleano que especifica si el usuario debe acceder o no a su Cuenta de Google. Un valor de true indica que el usuario debe acceder. Un valor de false indica que el usuario no debe acceder. Si no te importa si el usuario accedió o salió, no incluyas una condición <UserSignedIn>.
<IsDomestic> Optional boolean Es un valor booleano que especifica si el usuario debe ser del mismo país en el que se encuentra el hotel. Un valor de true indica que el usuario debe ser del mismo país que el hotel. Un valor de false indica que el usuario puede ser de cualquier país que no sea el del hotel. Si deseas obtener un control más detallado, usa la condición <UserCountry>.

Ejemplos de tarifas condicionales

Porcentaje de usuarios

En el siguiente ejemplo de tarifas condicionales, se especifica que la tarifa se ofrecerá de forma aleatoria al veinte por ciento de los usuarios:

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

usuarios de dispositivos móviles y el Reino Unido

En el siguiente ejemplo de tarifas condicionales, se define una regla de tarifas que coincide con todos los usuarios que realizan búsquedas en el Reino Unido con un dispositivo móvil mediante un <UserRateCondition> intercalado:

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

Japón y no Japón

En el siguiente ejemplo de tarifas condicionales, se muestra una regla de tarifas que coincide con los usuarios de Japón y otra que coincide con los usuarios del resto del mundo (RoW):

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

Todas, todas y ninguna

En el siguiente ejemplo de tarifas condicionales, se muestra cómo se puede usar el atributo op para buscar coincidencias con varias condiciones de diferentes maneras mediante los valores any, all y none. Por ejemplo, como se muestra en la condición au_nz, puedes usar cualquiera para hacer coincidir a usuarios de varios países. Como se muestra en la regla de tarifas au_nz_mobile_tablet, puedes usar all para exigir que los usuarios coincidan con varias condiciones. La regla de tarifas row_mobile_tablet coincidirá con los usuarios que se encuentran en el resto del mundo (fila), sin incluir Australia ni Nueva Zelanda, y que también coincidan con la condición 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>

Ejemplos de tarifas privadas

Tarifa para miembros visible 1

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

Tarifa para miembros 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>

Porcentaje de lista de público 1

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

Porcentaje de lista de público 2

En este ejemplo de tarifas privadas, se muestra cómo especificar un tratamiento visible de la IU de tarifa para miembros para varias listas de público:

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

Indica cómo mostrar el tratamiento de la IU oculta de la tasa de miembros. Si no se incluye, no se muestra el tratamiento de la IU oculta para la tarifa de miembros.

Para usar <RateIneligibility> en un <RateRule>, también se debe especificar <MembershipProgram> en un elemento <UserRateCondition> para el <RateRule>.

El elemento <RateIneligibility> aparece en el siguiente lugar en la jerarquía XML de las reglas de tarifas:

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

Sintaxis

El elemento <RateIneligibility> usa la siguiente sintaxis:

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

Atributos

El elemento <RateIneligibility> no tiene ningún atributo.

Elementos secundarios

El elemento <RateIneligibility> tiene los siguientes elementos secundarios:

Elemento secundario ¿Obligatorio? Tipo Descripción
<IneligibilityType> Required enum

Define cómo el texto (que se muestra junto a la tarifa tachada) describirá la tarifa oculta.

Estos son los valores válidos:

  • exact: Es un porcentaje de descuento. El texto indicará “Inscríbete de manera gratuita y obtén un X% de descuento”.
  • price_band: Es un rango de descuento. El texto indicará “Inscríbete de manera gratuita y obtén entre el X y el Y% de descuento”. En el caso de los descuentos del 1% al 5%, el texto indicará "Obtén hasta un 5% de descuento". Los descuentos mayores se mostrarán en incrementos de 5 puntos, como “Obtén entre un 5% y un 10% de descuento” o “Obtén entre un 10% y un 15% de descuento”.
  • existence: Es una sugerencia no específica. En este caso, el texto indicará: "Inscríbete de manera gratuita y obtén un precio más bajo".

Obtén más información sobre los tratamientos de la IU en Detalles y ejemplos de tarifas privadas.

<IneligibilityReason> Required enum

Estos son los valores válidos:

  • program_member: Muestra la tarifa con el tratamiento de la IU oculta de la tarifa de miembros.

Ejemplos de tarifas privadas

En esta sección, se incluyen ejemplos ocultos de tarifa para miembros (básica) y ejemplos ocultos de tarifa para miembros (múltiples condiciones). También puedes mostrar tus tarifas para miembros a subconjuntos de usuarios. Para ver ejemplos, consulta Ejemplos de tarifas privadas.

Ejemplos ocultos de tarifas para miembros (básica)

Descuento exacto

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

Descuento de correa

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

Descuento por sugerencia

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

Ejemplos ocultos de tarifas para miembros (múltiples condiciones)

op="any"

Porcentaje de la lista de público para miembros + tarifa para miembros oculta (descuento de existencia) para los usuarios que no son miembros

En este ejemplo de tarifas privadas, se especifica el tipo de existence del tratamiento de la IU oculta para las tarifas para miembros, que se mostrará a los usuarios y no a la lista de público. Los usuarios en la lista de público verán la tarifa del público.

<?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="all"

Se ocultó la tarifa para miembros solo para los usuarios de la lista de público

En este ejemplo de tarifa privada, se especifica el tipo de exact del tratamiento de la IU oculta para la tarifa para miembros, modificado con el texto adicional “plus free Wi-Fi”. Este tratamiento de la IU se mostrará a los usuarios que coincidan con la lista de público.

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

IU transparente/visible

En este ejemplo, se muestra cómo especificar la tarifa de miembros con dos tratamientos de IU (IU transparente y visible) para los usuarios de la lista de público y tarifas ocultas para todos los demás usuarios.

<?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>
      <UserRateCondition op="all">
        <UserListId>[enter you audience list id here]</UserListId>
        <AlwaysEligibleMembershipProgram>program_name</AlwaysEligibleMembershipProgram>
      </UserRateCondition>
    </UserRateCondition>
  </RateRule>
</RateRuleSettings>

<RateModification>

Modifica el tratamiento de la IU para tarifas privadas.

El elemento <RateModification> aparece en el siguiente lugar en la jerarquía XML de las reglas de tarifas:

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

Atributos

El elemento <RateModification> no tiene ningún atributo.

Elementos secundarios

El elemento <RateModification> tiene los siguientes elementos secundarios:

Elemento secundario ¿Obligatorio? Tipo Descripción
<HotelAmenity> Optional enum

Combina con <MembershipProgram> y <RateIneligibility> para modificar el tratamiento de la IU oculta de la tarifa de miembros.

Estos son los valores válidos:

  • free_wifi: Agrega plus free wifi al texto.
<PriceMultiplier> Optional float

Modifica el precio multiplicando este valor por la tarifa base, los impuestos y las tarifas. Por ejemplo, si PriceMultiplier = 0.9, tarifa base = USD 100, impuestos = USD 20, tarifas = USD 10; luego, después de aplicar el multiplicador, tarifa base = USD 90, impuestos = USD 18, tarifas = USD 9.

Esto te permite aplicar un descuento a todas las tarifas con una regla de tarifas determinada.

Ejemplos de tarifas privadas

Servicios del hotel

Tarifa para miembros oculta para todos los usuarios (descuentos de banda) y Wi-Fi gratis

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

Multiplicador de precios

Aplica un 5% de descuento a las tarifas para dispositivos móviles en el feed de precios

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