Descripción general
El mensaje TaxFeeInfo define los impuestos y las tarifas que se aplican a un usuario cuando reserva una propiedad y según las reglamentaciones fiscales de la propiedad que se describen en el sitio web. Para agregar datos de impuestos y comisiones, usa el mensaje Rate (OTA_HotelRateAmountNotifRQ).
La única acción admitida para este mensaje es overlay, que se usa para reemplazar los datos de impuestos y comisiones de cada propiedad. Es importante enviar actualizaciones de impuestos y comisiones cada vez que haya cambios.
Para obtener más información sobre cómo enviar impuestos y comisiones, así como los detalles de precios específicos para tus tarifas, consulta la Política de Impuestos y Comisiones.
Métodos para agregar impuestos y tarifas
Existen dos formas generales de agregar impuestos y comisiones:
En el primer método, especificas AmountAfterTax en el mensaje de tarifa. Para agregar los impuestos y las comisiones, envías mensajes de tarifa que contienen tanto las tarifas base por noche (sin incluir todos los impuestos y las comisiones) como las tarifas totales por noche (incluidos todos los impuestos y las comisiones). Dado que estas tarifas son por noche, este enfoque solo funciona para los impuestos y las tarifas basados en porcentajes o los importes fijos por noche, y no se pueden usar los impuestos y las tarifas por estadía.
El segundo método (preferido) consiste en enviar solo las tarifas base nocturnas sin impuestos ni comisiones en los mensajes de tarifas, y usar TaxFeeInfo para comunicar los impuestos y las comisiones a nivel de la propiedad. Los impuestos y las comisiones individuales aún se pueden definir para tipos de habitación y planes de tarifas específicos, que se aplican a ciertos períodos.
En esta página, se describe y se hace referencia solo al método preferido para usar TaxFeeInfo, y no al método para especificar AmountAfterTax en el mensaje Rate (OTA_HotelRateAmountNotifRQ).
Métodos para establecer impuestos
Tienes las siguientes opciones para establecer impuestos:
- Basis = [room|person]
- Período = [estadía|noche]
- Tipo = [percent|amount]
Cuando el período es stay y el tipo es percent, Google aplica impuestos y comisiones para toda la estadía, incluso si una sola fecha del itinerario se superpone con el período de StayDates. No puedes especificar que se aplique un impuesto y una tarifa solo si TODAS las fechas del itinerario se superponen con el período de fechas de la estadía. Para varios períodos de estadía que se superponen, los rangos de StayDates se especifican en un solo rango abierto. Consulta los ejemplos de TaxFeeInfo.
Para ver ejemplos de diversas situaciones relacionadas con los impuestos, consulta la sección Instructivos. Los ejemplos abarcan algunas de las principales situaciones fiscales, incluidas las guías prácticas para los siguientes casos:
- Impuesto fijo y porcentaje de impuesto aplicado por propiedad
- Impuesto porcentual que se aplica solo a las noches posteriores a la primera
- Método para reemplazar los impuestos antiguos por los nuevos
- Cómo incluir o excluir impuestos para países
- Cómo establecer impuestos por tramos con intervalos
- Cómo establecer el impuesto y la tarifa sujeta a impuestos
En las siguientes secciones, se incluyen lineamientos generales, un ejemplo básico y situaciones prácticas para que comiences a agregar y actualizar tu información fiscal.
Elementos obligatorios y opcionales
En la referencia de XML, se proporcionan descripciones de los elementos obligatorios y opcionales. Para obtener detalles sobre los atributos y los elementos secundarios, consulta Atributos y elementos de TaxFeeInfo.
Sintaxis y esquemas
Usa el ejemplo de sintaxis de TaxFeeInfo como referencia cuando crees el mensaje para asegurarte de que sigues el formato correcto. Puedes usar una herramienta XML de terceros, como xmllint, para validar tus feeds con los esquemas publicados antes de enviarlos a Google. Para el esquema de mensajes TaxFeeinfo, consulta Esquemas de anuncios de hotel.
Lineamientos
En esta sección, se describen los lineamientos comunes y las instrucciones especiales para configurar los impuestos y las comisiones.
Acciones
- Superposición
- Usa la acción
overlaypara reemplazar todos los impuestos de una propiedad. La acciónoverlayes la predeterminada y la única que se admite. Una vez que se aplique esta actualización, se borrarán los impuestos y las comisiones anteriores de esta propiedad.
General
Cada
Taxse evalúa y, si corresponde, se calcula en función del importe deAmountBeforeTaxque se especificó enBaseByGuestAmt.Después de calcular todos los impuestos y las comisiones aplicables, se agregan al precio base para formar el precio total.
La sintaxis de
<Tax>y<Fee>es la misma.Los impuestos y las comisiones pueden tener restricciones, como las siguientes:
- Solo se aplica a tipos de habitación y planes de tarifas específicos.
- Solo se aplica a fechas de estadía específicas.
Estas restricciones son opcionales y no es necesario que establezcas todos los tipos de restricciones. Puedes dejarlas vacías si se aplican a todas.
Envía una actualización de
TaxFeeInfocada vez que haya un cambio en los impuestos o las comisiones.
Ejemplo
En esta sección, se proporciona un ejemplo básico de un mensaje TaxFeeInfo con elementos obligatorios y opcionales. Una vez que prepares el archivo, deberás enviarlo a Google con un mensaje POST a este extremo:
https://www.google.com/travel/hotels/uploads/taxes
Para obtener más información sobre cómo enviar el mensaje con POST o push, consulta Envío de mensajes con push.
Para el atributo hotel_id, usa el ID único del hotel que usaste en tu sistema para identificar la propiedad. Este valor debe coincidir con el ID del hotel especificado con <id> en el elemento <listing> del feed de lista de hoteles. La coherencia con tu sistema es fundamental para garantizar que Google muestre tus datos correctamente.
En este ejemplo, se muestra cómo establecer un porcentaje de impuestos del 10% y un importe de comisión de USD 50 para una propiedad para la estadía total (no por noche):
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-20T16:20:00-04:00"
partner="partner_key"
id="12345678">
<Property>
<ID>HOTELID</ID>
<Taxes>
<Tax>
<Type>percent</Type>
<Basis>room</Basis>
<Period>stay</Period>
<Amount>10</Amount>
</Tax>
</Taxes>
<Fees>
<Fee>
<Type>amount</Type>
<Basis>room</Basis>
<Period>stay</Period>
<Amount>50</Amount>
<Currency>USD</Currency>
</Fee>
</Fees>
</Property>
</TaxFeeInfo>
Para ver ejemplos de cómo agregar impuestos relacionados con la edad y otros ejemplos, consulta Ejemplos de impuestos.
Instructivos
En esta sección, se proporcionan soluciones para situaciones que puedes encontrar cuando configuras impuestos y comisiones.
Situación 1: Cómo agregar un impuesto fijo
En este ejemplo de impuestos, se muestra cómo establecer un impuesto fijo por propiedad.
Descripción
Quieres aplicar un impuesto fijo por habitación o estadía por propiedad en lugar de un impuesto porcentual.
Solución
Usa amount en lugar de percentage para agregar la opción de impuesto fijo.
Muestra
En este ejemplo, se muestra cómo agregar un impuesto fijo con amount en lugar de percentage:
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Property>
<ID>Property_1</ID>
<Taxes>
<Tax>
<Type>amount</Type>
<Basis>room</Basis>
<Period>stay</Period>
<Amount>30</Amount>
</Tax>
</Taxes>
</Property>
</TaxFeeInfo>
Caso 2: Cómo segmentar impuestos con ApplicableNights
Descripción
Quieres aplicar un impuesto de tarifa fija solo a las noches posteriores a la primera. Por ejemplo, hay una tarifa obligatoria por el uso diario de un determinado servicio que se excluye de la primera noche, en la que los huéspedes no habrían tenido la oportunidad de usar ese servicio en particular.
Solución
Usa <ApplicableNights excluded="1"/> para controlar qué noches tienen impuestos aplicados.
Muestra
En este ejemplo, se muestra cómo usar ApplicableNights:
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Property>
<ID>Property_1</ID>
<Taxes>
<Tax>
<Type>amount</Type>
<Basis>room</Basis>
<Period>night</Period>
<Amount>50</Amount>
<ApplicableNights excluded="1"/>
</Tax>
</Taxes>
</Property>
</TaxFeeInfo>
Situación 3: Cómo reemplazar los impuestos y las comisiones antiguos por los nuevos
Descripción
Los impuestos y las comisiones actuales cambiaron y deben reemplazarse por los nuevos.
Solución
Usa la acción overlay para quitar todos los impuestos y las comisiones existentes.
Muestra
En el siguiente ejemplo, se muestra cómo quitar todos los impuestos y las comisiones de una propiedad:
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Property action="overlay">
<ID>Property_1</ID>
</Property>
</TaxFeeInfo>
Situación 4: Cómo incluir o excluir impuestos para países
Descripción
Debes incluir el impuesto para ciertos países y excluirlo para otros. Por ejemplo, debes excluir los impuestos de una confederación más pequeña con impuestos no pertenecientes a la UE y, al mismo tiempo, gravar todos los demás países.
Solución
Usa las opciones include o exclude para UserCountries type.
Usa include para aplicar el impuesto solo al país que se indica o usa exclude para aplicarlo a todos los países, excepto al que se indica.
Muestra
En el siguiente ejemplo, se muestra cómo establecer impuestos para los usuarios que se encuentran fuera del país del hotel (Israel):
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16: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>
<UserCountries type="exclude">
<Country code="IL"/>
</UserCountries>
</Tax>
</Taxes>
</Property>
</TaxFeeInfo>
Situación 5: Cómo establecer el impuesto por tramos con intervalos
Descripción
Quieres agregar un impuesto de GST aplicado según los tramos impositivos en función de las tarifas por noche.
Solución
Para este caso, supón que los tramos impositivos del GST del país objetivo son los siguientes:
- No se aplica impuesto si la tarifa por noche es menor o igual a 1,000.
- 12% de impuestos si la tarifa por noche es mayor que 1,000 y menor o igual que 7,500
- Impuesto del 18% si la tarifa por noche es superior a 7,500.
Muestra
En el siguiente ejemplo, se muestra cómo establecer un impuesto por tramos con intervalos:
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-28T16: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>
Situación 6: Cómo establecer el impuesto y la tarifa sujeta a impuestos
Descripción
Quieres agregar un impuesto, como el IVA, y otro cargo por servicio que también se aplique a ese impuesto.
Solución
En esta situación, se consideran dos ejemplos de casos de uso de comisiones sujetas a impuestos:
- Tanto el impuesto como la comisión sujeta a impuestos se definen como cargos porcentuales.
- El impuesto es un cargo porcentual, mientras que la comisión imponible es un importe fijo por estadía.
Ejemplos
Tarifa imponible como porcentaje
En este ejemplo, el AmountBeforeTax es de USD 100, el impuesto sobre el GST es del 18% y el cargo por servicio adicional es del 5%, lo que hace que el porcentaje total de la tarifa sujeta a impuestos sea del 5.9% (5*1.18) y el importe total de la tarifa sea de USD 123.90 [= USD 118 (18% de GST) + USD 5.9 (5.9% de cargo por servicio)].
En el siguiente fragmento, se definen el impuesto (GST) y la comisión sujeta a impuestos (cargo por servicio) como porcentajes:
<TaxFeeInfo timestamp="2022-08-16T16: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>18</Amount>
</Tax>
</Taxes>
<Fees>
<Fee>
<Type>percent</Type>
<Basis>room</Basis>
<Period>stay</Period>
<Amount>5.9</Amount>
</Fee>
</Fees>
</Property>
</TaxFeeInfo>
Comisión sujeta a impuestos como importe
Este ejemplo tiene un AmountBeforeTax de USD 100, un impuesto del GST del 18% y una tarifa adicional de USD 20, lo que hace que la tarifa total sujeta a impuestos sea de USD 23.60 (USD 20*1.18) y el importe total de la tarifa sea de USD 141.60 [= USD 118 (18% de GST) + USD 23.60 (tarifa fija de USD 20)].
En el siguiente fragmento, se define el impuesto (GST) en porcentaje y la comisión sujeta a impuestos (cargo por servicio) como un importe de tarifa plana:
<TaxFeeInfo timestamp="2022-08-16T16: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>18</Amount>
</Tax>
</Taxes>
<Fees>
<Fee>
<Type>amount</Type>
<Basis>room</Basis>
<Period>stay</Period>
<Amount>23.6</Amount>
</Fee>
</Fees>
</Property>
</TaxFeeInfo>