Referencia XML de las reglas de tarifas

El archivo en formato XML de reglas de tarifas define las reglas para la entrega de tarifas condicionales y privadas. Puedes agregar o editar un archivo en formato XML de reglas de tarifas desde 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. Un objeto <Rate> que hace referencia a un ID de regla de tarifas solo se publica para los usuarios y en las condiciones definidas por la regla de tarifas. También se puede hacer referencia a un ID de reglas de tarifas a través de 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 en las que se deben coincidir 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.

  • Elementos <RateRule> que definen una regla de tarifas para la referencia en un <Rate> en un mensaje de transacción. Cada <RateRule> especifica las condiciones y el tratamiento de la IU que generan una tarifa condicional o privada.

El elemento <RateRuleSettings> aparece en el siguiente lugar de 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 los criterios de 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, generan la entrega de tarifas condicionales o privadas.

Las condiciones se pueden definir intercaladas con elementos secundarios <UserRateCondition>, por referencia a otro elemento <UserRateCondition> con el atributo reference_id, o bien intercalados y por referencia. Sin embargo, cualquier <UserRateCondition> con 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 para 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 mediante la 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. mediante la 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:

  • Condiciones para publicar una tarifa
  • Modificaciones, si las hay, en el precio y en el tratamiento de la IU de la tarifa
  • Uso de tratamientos de IU ocultos para las 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 un <Rate> en un mensaje de transacción para publicar una tarifa condicional o privada. También se puede hacer referencia a la regla de tarifas id mediante 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 tarifa <MembershipProgram>.

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

<UserRateCondition> Required <UserRateCondition>

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

Las condiciones se pueden definir intercaladas con elementos secundarios <UserRateCondition>, haciendo referencia a otro <UserRateCondition> con el atributo reference_id, o bien intercalados y por 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 las 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 de página de destino PROMO-CODE.

<UserRateCondition>

Define una o más condiciones que, cuando coinciden, generan que se entreguen 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 mediante un atributo <RateRule> id 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 definidas por esta regla de tarifas. Este valor no se puede usar cuando una de las condiciones es <UserListId>, a menos que solo se defina una otra condición, ya sea <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 una 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 ningún 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 la 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, generan 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, para 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 de CLDR.

Especifica que el usuario debe estar ubicado en el país indicado. 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 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 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ó a su cuenta o salió de ella, 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 del Reino Unido y de dispositivos móviles

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 a través de 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 en 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>

Cualquiera, todo y ninguno

En el siguiente ejemplo de tarifas condicionales, se muestra cómo se puede usar el atributo op para buscar coincidencias en 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 buscar coincidencias con usuarios de cualquiera 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), excepto Australia y Nueva Zelanda, y que también coinciden 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 de IU visible 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 tarifa para miembros. Si no se incluye, no se muestra el tratamiento de la IU oculta de la tarifa para 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 de 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 tasa tachada) describirá la tasa 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 descuentos. El texto indicará “Inscríbete de manera gratuita y obtén entre un X y un Y% de descuento”. Si el descuento es 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 para miembros.

Ejemplos de tarifas privadas

En esta sección, se incluyen ejemplos ocultos de tarifas para miembros (básico) y ocultos de tarifas para miembros (varias condiciones). También puedes mostrar las tarifas para miembros a subconjuntos de usuarios. Por ejemplo, consulta Ejemplos de tarifas privadas.

Ejemplos ocultos de la tarifa para miembros (básicos)

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 la tarifa para miembros (varias condiciones)

op="any"

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

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

<?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 oculta la tarifa para miembros solo para los usuarios de listas de público

En este ejemplo de tarifa privada, se especifica el tipo exact de tratamiento de la IU oculta de la tarifa para miembros, modificado con el texto adicional “más Wi-Fi gratis”. 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 para miembros con dos tratamientos de la IU (IU transparente y visible) para los usuarios en 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 las 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> a fin de modificar el tratamiento de la IU oculta de la tarifa para 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, la tarifa base = USD 100, los impuestos = USD 20, las tarifas = USD 10; luego de aplicar el multiplicador, la tarifa base = USD 90, los impuestos = USD 18, las 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 gratuito

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

Aplicar un descuento del 5% 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>