Información del impuesto

Solicitudes

Sintaxis

El mensaje TaxFeeInfo usa la siguiente sintaxis:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="timestamp"
            id="message_ID"
            partner="partner_key">
  <Property action="[overlay]">
    <ID>HotelID</ID>
    <Taxes>
      <Tax>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <BookingDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </BookingDates>
        <CheckinDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckinDates>
        <CheckoutDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckoutDates>
        <StayDates application="[all|any|overlap]">
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <Type>[percent|amount|cumulative_percent]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>tax_amount</Amount>
        <ApplicableNights max="integer" excluded="integer"/>
        <LengthOfStay min="integer" max="integer"/>
        <!-- Use either <Amount> or <Brackets> -->
        <Brackets base_amount="tax_amount"/>
          <Bracket starts_at="nightly_rate" amount="tax_amount"/>
        </Brackets>
        <AgeBrackets>
          <AdultCharge amount="tax_amount"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="max_age" amount="tax_amount"/>
          </ChildAgeBrackets>
        </AgeBrackets>
        <UserCountries type="[include|exclude]">
          <Country code="country_code1"/>
          <Country code="country_code2"/>
        </UserCountries>
        <Rank>integer</Rank>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <BookingDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </BookingDates>
        <CheckinDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckinDates>
        <CheckoutDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckoutDates>
        <StayDates application="[all|any|overlap]">
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <Type>[percent|amount|cumulative_percent]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>fee_amount</Amount>
        <ApplicableNights max="integer" excluded="integer"/>
        <LengthOfStay min="integer" max="integer"/>
        <!-- Use either <Amount> or <Brackets> -->
        <Brackets base_amount="tax_amount"/>
          <Bracket starts_at="nightly_rate" amount="tax_amount"/>
        </Brackets>
        <AgeBrackets>
          <AdultCharge amount="tax_amount"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="max_age" amount="tax_amount"/>
          </ChildAgeBrackets>
        </AgeBrackets>
        <UserCountries type="[include|exclude]">
          <Country code="country_code1"/>
          <Country code="country_code2"/>
        </UserCountries>
        <Rank>integer</Rank>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Elementos y atributos

El mensaje TaxFeeInfo tiene los siguientes elementos y atributos:

Elemento o @Attribute Casos Tipo Descripción
TaxFeeInfo 1 Complex element Es el elemento raíz de un mensaje que define los impuestos y los cargos de una sola propiedad.
TaxFeeInfo / @timestamp 1 DateTime La fecha y hora de creación de este mensaje.
TaxFeeInfo / @id 1 string Es un identificador único para este mensaje de solicitud. Este valor se muestra en el mensaje de respuesta. Los caracteres permitidos son a-z, A-Z, 0-9, _ (guion bajo) y - (guion).
TaxFeeInfo / @partner 1 string La cuenta de socio de este mensaje. Este valor de cadena es el valor de "Clave de socio" que aparece en la página Configuración de la cuenta de Hotel Center.

Nota: Si tienes un backend que proporciona feeds para varias cuentas, este valor debe coincidir con el valor del atributo ID especificado en el elemento <RequestorID> de tus mensajes <OTA_HotelRateAmountNotifRQ> y <OTA_HotelAvailNotifRQ> para la misma cuenta.

TaxFeeInfo / Property 1..n Property Es un contenedor para definir los impuestos y las tarifas de una sola propiedad.
TaxFeeInfo / Property / @action 0..1 string Especifica cómo se aplica la actualización. Solo se admite overlay, y el valor predeterminado es overlay. Todos los Taxes y Fees anteriores de esta propiedad se borrarán antes de que se aplique esta actualización.
TaxFeeInfo / Property / ID 1 string Es el identificador único de la propiedad. Este valor debe coincidir con el ID de hotel especificado usando <id> en el elemento <listing> del feed de lista de hoteles. El ID del hotel también se muestra en Hotel Center.
TaxFeeInfo / Property / Taxes 0..1 Taxes Contenedor para uno o más elementos <Tax>.
TaxFeeInfo / Property / Taxes / Tax 1..n Tax Es un impuesto individual que se aplica a la propiedad.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes 0..1 RoomTypes Es el contenedor de una lista de los tipos de habitaciones a los que se aplica el impuesto. El impuesto se aplica a cada <RoomType> especificado. Si no se especifica <RoomTypes>, el impuesto se aplica a todas las habitaciones.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType 1..n RoomType Especifica un tipo de habitación. Un tipo de habitación se define en un elemento <RoomData> en un mensaje Transaction (Property Data) y se identifica con su RoomID. (El atributo InvTypeCode en los mensajes OTA_HotelRateAmountNotifRQ también hace referencia a su valor <RoomID>).
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType / @id 1 string Es el identificador único del inventario (tipo de habitación). Este valor se asigna a <RoomID> en un mensaje Transaction (Property Data). La cantidad máxima de caracteres permitida es 50.
TaxFeeInfo / Property / Taxes / Tax / RatePlans 0..1 RatePlans Es un contenedor para una lista de planes de tarifas a los que se aplica el impuesto. Si no se especifica <RatePlans>, el impuesto se aplica a todos los planes de tarifas.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan 1..n RatePlan Especifica un plan de tarifas. Un plan de tarifas se define mediante una combinación de paquete, tarifas y disponibilidad, como se define en los mensajes Transaction (Property Data), OTA_HotelRateAmountNotifRQ y OTA_HotelAvailNotifRQ, y como lo identifica el PackageID.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan / @id 1 string El identificador único del plan de tarifas. Este valor se asigna al valor PackageID en el <PackageData> del mensaje Transaction (Property Data) y al valor RatePlanCode que se establece en el atributo <StatusApplicationControl> en los mensajes <OTA_HotelRateAmountNotifRQ> y <OTA_HotelAvailNotifRQ>. La cantidad máxima de caracteres permitida es 50.
TaxFeeInfo / Property / Taxes / Tax / BookingDates 0..1 BookingDates Es un contenedor para uno o más períodos que definen cuándo se debe realizar la reserva para que se aplique el impuesto.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange 1..99 DateRange Un período que especifique cuándo se debe realizar la reserva para que se aplique el impuesto
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @start 0..1 Date Es la fecha de inicio (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser anterior o igual a la fecha de end. Si no se especifica start, el período es ilimitado en términos de una fecha de inicio.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @end 0..1 Date Es la fecha de finalización (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser igual o posterior a la fecha de start. Si no se especifica end, el período es efectivamente ilimitado en términos de una fecha de finalización.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @days_of_week 0..1 string

Son los días de la semana permitidos en el período. Si no se especifica, se permiten todos los días en el período. Cada carácter de la cadena especifica un día. Por ejemplo, “MTWHF” especifica que se permiten días de la semana en el período.

Los caracteres válidos son los siguientes:

  • M para el lunes
  • T para el martes
  • W para el miércoles
  • H para el jueves
  • F para el viernes
  • S para el sábado
  • U para el domingo

Cualquier combinación de caracteres es válida.

TaxFeeInfo / Property / Taxes / Tax / CheckinDates 0..1 CheckinDates Es un contenedor para uno o más períodos que definen cuándo se debe realizar el registro para que se aplique el impuesto.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange 1..20 DateRange Un período que especifique cuándo debe ocurrir el registro para que se aplique el impuesto
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @start 0..1 Date Es la fecha de inicio (según la zona horaria de la propiedad), inclusive, del período. Esta fecha debe ser anterior o igual a la fecha de end. Si no se especifica start, el período es ilimitado en términos de una fecha de inicio.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @end 0..1 Date Es la fecha de finalización (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser igual o posterior a la fecha de start. Si no se especifica end, el período es efectivamente ilimitado en términos de una fecha de finalización.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @days_of_week 0..1 string

Son los días de la semana permitidos en el período. Si no se especifica, se permiten todos los días en el período. Cada carácter de la cadena especifica un día. Por ejemplo, “MTWHF” especifica que se permiten días de la semana en el período.

Los caracteres válidos son los siguientes:

  • M para el lunes
  • T para el martes
  • W para el miércoles
  • H para el jueves
  • F para el viernes
  • S para el sábado
  • U para el domingo

Cualquier combinación de caracteres es válida.

TaxFeeInfo / Property / Taxes / Tax / CheckoutDates 0..1 CheckoutDates Es un contenedor para uno o más períodos que definen cuándo se debe realizar el pago para que se aplique el impuesto.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange 1..20 DateRange Un período que especifique cuándo debe ocurrir la salida para que se aplique el impuesto
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @start 0..1 Date Es la fecha de inicio (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser anterior o igual a la fecha de end. Si no se especifica start, el período es efectivamente ilimitado en términos de una fecha de inicio.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @end 0..1 Date Es la fecha de finalización (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser igual o posterior a la fecha de start. Si no se especifica end, el período es efectivamente ilimitado en términos de una fecha de finalización.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @days_of_week 0..1 string

Son los días de la semana permitidos en el período. Si no se especifica, se permiten todos los días en el período. Cada carácter de la cadena especifica un día. Por ejemplo, “MTWHF” especifica que se permiten días de la semana en el período.

Los caracteres válidos son los siguientes:

  • M para el lunes
  • T para el martes
  • W para el miércoles
  • H para el jueves
  • F para el viernes
  • S para el sábado
  • U para el domingo

Cualquier combinación de caracteres es válida.

TaxFeeInfo / Property / Taxes / Tax / StayDates 0..1 StayDates

Es un contenedor para uno o más períodos que determinan si se aplica el impuesto, por ejemplo, para admitir descuentos de temporada.

TaxFeeInfo / Property / Taxes / Tax / StayDates / @application 1 enum

Describe cómo se debe aplicar el impuesto.

Estos son los valores válidos:

  • all: Aplica el impuesto a cada noche del itinerario si todas las fechas del itinerario se superponen con las fechas de la estadía.
  • any: Aplica el impuesto a todas las noches del itinerario si alguna fecha de este se superpone con una fecha del período de la estadía.
  • overlap: Aplica el impuesto solo a las noches del itinerario que se superponen con una fecha del período de la estadía.

    Nota: overlap es válido solo cuando <Period> se establece en night.

Este atributo siempre se debe especificar.

TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange 1..99 DateRange Es un período que especifica las fechas en las que se aplicará el impuesto.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @start 0..1 Date Es la fecha de inicio (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser anterior o igual a la fecha de end. Si no se especifica start, el período es efectivamente ilimitado en términos de una fecha de inicio.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @end 0..1 Date Es la fecha de finalización (según la zona horaria de la propiedad) inclusive del período. Esta fecha debe ser igual o posterior a la fecha de start. Si no se especifica end, el período es efectivamente ilimitado en términos de una fecha de finalización.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @days_of_week 0..1 string

Son los días de la semana permitidos en el período. Si no se especifica, se permiten todos los días en el período. Cada carácter de la cadena especifica un día. Por ejemplo, “MTWHF” especifica que se permiten días de la semana en el período.

Los caracteres válidos son los siguientes:

  • M para el lunes
  • T para el martes
  • W para el miércoles
  • H para el jueves
  • F para el viernes
  • S para el sábado
  • U para el domingo

Cualquier combinación de caracteres es válida.

TaxFeeInfo / Property / Taxes / Tax / Type 1 enum

Estos son los valores válidos:

  • percent: Es un porcentaje de la tarifa total.
  • amount: Es un importe fijo que se agrega a la tarifa final.
  • cumulative_percent: Es un porcentaje de la tarifa, los impuestos y las tarifas totales acumulados antes del cálculo de este impuesto o tarifa. Si se especifica este valor, también se debe especificar <Rank>.
  • No se pueden especificar <Brackets> y <AgeBrackets> con cumulative_percent como tipo.

TaxFeeInfo / Property / Taxes / Tax / Basis 1 enum

Estos son los valores válidos:

  • room: Se aplica <Amount> a la sala.
  • person: El <Amount> se aplica por persona. Este valor solo se aplica si <Type> se establece como importe.
TaxFeeInfo / Property / Taxes / Tax / Period 1 enum

Estos son los valores válidos:

  • stay: El <Amount> se agrega al precio total de la estadía.
  • night: El <Amount> se agrega por cada noche de la estadía.
TaxFeeInfo / Property / Taxes / Tax / Currency 0..1 string El código de moneda de tres letras del impuesto (por ejemplo, USD).

Nota: Si no se especifica <Currency>, pero se especifica <Amount>, el valor <Currency> se establece de forma predeterminada en la moneda de la tarifa base.

TaxFeeInfo / Property / Taxes / Tax / Amount 0..1 float Es el valor del porcentaje o del importe del impuesto.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights 0..1 ApplicableNights Este valor solo se aplica si <Type> se establece como amount y <Period> se establece como night.

Limita la cantidad de noches durante las que se puede aplicar un impuesto.

Especifica max o excluded, pero no ambos.

TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @max 0..1 integer <ApplicableNights max="N"> indica que se deben excluir las noches después de las primeras N noches.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @excluded 0..1 integer <ApplicableNights excluded="N"> indica que se deben excluir las primeras N noches.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay 0..1 LengthOfStay Define los límites de duración de la estadía dentro de los cuales se puede aplicar este impuesto. El impuesto no se aplica cuando la duración de la estadía está fuera de los límites mínimo y máximo.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @min 0..1 integer Es la cantidad mínima de noches permitidas en la estadía para que se aplique el impuesto. Si no se especifica, no hay un valor mínimo.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @max 0..1 integer Es la cantidad máxima de noches permitidas en la estadía para que se aplique el impuesto. Si no se especifica, no hay un máximo.
TaxFeeInfo / Property / Taxes / Tax / Brackets 0..1 Brackets Contenedor para uno o más elementos <Bracket>. Define un conjunto de tramos impositivos contiguos y no superpuestos. Por ejemplo: Impuestos en bloque de GST de la India.

Este elemento es válido solo cuando <Period> se establece en night y no se especifica <Amount>.

TaxFeeInfo / Property / Taxes / Tax / Brackets / @base_amount 0..1 float Es el valor del porcentaje o el importe de los impuestos que se aplica a las tarifas nocturnas por debajo del valor de starts_at del primer corchete.
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket 1..n Bracket Define un tramo impositivo según las tarifas por noche.
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @starts_at 1 float

Define el límite inferior de un tramo impositivo. El límite superior se especifica en el campo starts_at del siguiente corchete. No hay un límite superior para el último corchete.

Un tramo impositivo está activo cuando la tarifa por noche es mayor o igual que el valor de starts_at del tramo y estrictamente menor que el valor de starts_at del tramo posterior.

Este valor debe ser estrictamente mayor que 0.

TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @amount 1 float Es el valor del porcentaje o el importe del impuesto aplicado a este tramo impositivo.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets 0..1 AgeBrackets Permite especificar un conjunto de impuestos según las edades de los ocupantes.

Este elemento solo es válido cuando no se especifican <Brackets> y <Amount>, <Basis> se establece en person y <Type> se establece en amount.

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge 0..1 AdultCharge Es un contenedor para especificar los impuestos para adultos.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge / @amount 1 float Es el importe fijo de impuestos que se aplica a los adultos.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets Es un contenedor para almacenar uno o más elementos <ChildAgeBracket>.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..n ChildAgeBracket Define un rango de edad para niños y el importe de impuestos correspondiente.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer

Define el límite superior de la edad de un niño. El límite inferior se especifica en el campo max_age del corchete anterior + 1. Los límites superior e inferior son inclusivos. El límite inferior del primer bracket es 0.

max_age debe estar entre 0 y 17 inclusive.

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 1 float Es el importe fijo de impuestos que se aplica a los niños de este rango de edad.
TaxFeeInfo / Property / Taxes / Tax / UserCountries 0..1 UserCountries Contenedor para mostrar los países de los usuarios en los que se incluye o excluye el impuesto. Si existe, el impuesto solo se incluirá o excluirá para los usuarios de los países especificados.
TaxFeeInfo / Property / Taxes / Tax / UserCountries / @type 0..1 enum Es el tipo de especificación de UserCountries.

Los valores válidos son include y exclude.

Si el type de UserCountries se establece como include, el impuesto solo se aplicará a los usuarios de los países enumerados.

Mientras que, si el type de UserCountries es exclude, el impuesto solo se aplicará a los usuarios fuera de los países enumerados.

Si no se establece el type de UserCountries, lo trataremos como include y el impuesto solo se aplicará a los usuarios de los países enumerados.

TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country 1..n Country Define un país en la lista de UserCountries.
TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code 1 string Un código de país CLDR, como DE o FR. Ten en cuenta que, para algunos países, el código de país del CLDR no es el mismo que el código de país de ISO de 2 letras. Además, no se admiten los códigos de región de CLDR.
TaxFeeInfo / Property / Taxes / Tax / Rank 1 integer

Es una clasificación que especifica el orden de aplicación de este impuesto o tarifa. Por ejemplo, un valor de 2 significa que este impuesto se aplicará en segundo lugar. Este elemento siempre se debe especificar si <Type> se establece en cumulative_percent. En general, este orden se aplica tanto a los impuestos como a las tarifas. Se permiten valores de clasificación duplicados entre los impuestos y las tarifas, pero esto puede generar un comportamiento no definido en el que los impuestos y las tarifas se aplicarán de forma arbitraria y acumulativa. Los impuestos y las tarifas sin clasificaciones se aplican antes de todas las entradas clasificadas.

<Rank> debe estar entre 1 y 99 inclusive.

TaxFeeInfo / Property / Fees 0..1 Fees Contenedor para uno o más elementos <Fee>.
TaxFeeInfo / Property / Fees / Fee 1..n Fee

Es una tarifa individual que se aplica a la propiedad.

Todos los elementos secundarios de <Tax> también son compatibles con <Fee> con la misma sintaxis.

Ejemplos

Hay un límite de 300 impuestos y tarifas por propiedad. Consulta el ejemplo “Borrar impuestos” para quitar los impuestos y las tarifas de una propiedad.

Mensaje básico

Un mensaje TaxFeeInfo básico:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>10.00</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>person</Basis>
        <Period>night</Period>
        <Currency>USD</Currency>
        <Amount>5.00</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

Borrar impuestos

Borra todos los impuestos y las tarifas a nivel de la propiedad del hotel especificado:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-06-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property action="overlay"/>
    <ID>Property_1</ID>
  </Property>
</TaxFeeInfo>

Impuesto de la plataforma

Impuesto sobre las planchas de GST de la India, que se aplica en función de las tarifas por noche. Los tramos impositivos son los siguientes:

  • Sin impuestos si la tarifa por noche es menor o igual que 1,000.
  • Impuesto del 12% si la tarifa por noche es superior a 1,000 y menor o igual que 7,500.
  • Impuesto del 18% si la tarifa por noche es superior a 7,500.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <Brackets base_amount="0">
          <Bracket starts_at="1000.01" amount="12"/>
          <Bracket starts_at="7500.01" amount="18"/>
        </Brackets>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Impuestos basados en la edad

Se aplican impuestos según las edades de los ocupantes:

  • Impuesto de USD 20 para ocupantes adultos.
  • Impuesto de USD 10 para niños de entre 11 y 17 años
  • Impuesto de USD 5 para niños de entre 0 y 10 años.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>person</Basis>
        <Period>night</Period>
        <AgeBrackets>
          <AdultCharge amount="20"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="10" amount="5"/>
            <ChildAgeBracket max_age="17" amount="10"/>
          </ChildAgeBrackets>
        </AgeBrackets>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

Respuestas

Sintaxis

El mensaje TaxFeeInfoResponse usa la siguiente sintaxis:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="timestamp"
                    id="message_ID"
                    partner="partner_key">
  <!-- Either Success or Issues will be populated. -->
  <Success/>
  <Issues>
    <Issue code="issue_code" status="issue_type">issue_description</Issue>
  </Issues>
</TaxFeeInfoResponse>

Elementos y atributos

El mensaje TaxFeeInfoResponse tiene los siguientes elementos y atributos:

Elemento / @Attribute Casos Tipo Descripción
TaxFeeInfoResponse 1 Complex element Es el elemento raíz que indica el éxito o los problemas de un mensaje de solicitud de TaxFeeInfo recibido.
TaxFeeInfoResponse / @timestamp 1 DateTime La fecha y hora de creación de este mensaje.
TaxFeeInfoResponse / @id 1 string Es el identificador único del mensaje TaxFeeInfo asociado.
TaxFeeInfoResponse / @partner 1 string La cuenta de socio de este mensaje.
TaxFeeInfoResponse / Success 0..1 Success Indica que el mensaje TaxFeeInfo se procesó correctamente sin advertencias, errores ni fallas.

<Success> o <Issues> están presentes en cada mensaje.

TaxFeeInfoResponse / Issues 0..1 Issues Es un contenedor para uno o más problemas que se encontraron mientras se procesaba el mensaje TaxFeeInfo.

<Success> o <Issues> está presente en cada mensaje.

TaxFeeInfoResponse / Issues / Issue 1..n Issue Es la descripción de una advertencia, un error o una falla que se encontró durante el procesamiento del mensaje TaxFeeInfo. Puedes encontrar detalles sobre estos problemas en Mensajes de error sobre el estado del feed.
TaxFeeInfoResponse / Issues / Issue / @code 1 integer Es el identificador del problema.
TaxFeeInfoResponse / Issues / Issue / @status 1 enum

El tipo de problema que se encontró

Los valores válidos son warning, error y failure.

Ejemplos

Listo

La siguiente es una respuesta a un mensaje TaxFeeInfo procesado correctamente.

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="2024-05-18T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Success/>
</TaxFeeInfoResponse>

Problemas

La siguiente es una respuesta a un mensaje TaxFeeInfo que no se procesó debido a errores.

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfoResponse timestamp="2024-05-18T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Issues>
    <Issue code="1001" status="error">Example</Issue>
  </Issues>
</TaxFeeInfoResponse>