Visão geral
A mensagem TaxFeeInfo
define os tributos e as taxas aplicáveis a um usuário ao reservar uma propriedade com base nas regulamentações fiscais da propriedade descritas no site. Para adicionar dados de impostos e taxas, use a
mensagem de taxa (OTA_HotelRateAmountNotifRQ
).
A única ação com suporte para essa mensagem é overlay
, que é usada para substituir
os dados de impostos e taxas de cada propriedade. É importante enviar atualizações de impostos e taxas
sempre que houver mudanças.
Métodos para adicionar tributos e taxas
Há duas maneiras gerais de adicionar impostos e taxas:
No primeiro método, você especifica AmountAfterTax
na mensagem de tarifa. Adicione os tributos e as taxas enviando mensagens de tarifa que contenham as tarifas noturnas básicas (excluindo todos os tributos e taxas) e as tarifas noturnas totais (incluindo todos os tributos e taxas). Como essas tarifas são diárias, essa abordagem só funciona para tributos e taxas com base em porcentagem ou valores fixos que são diários. Não é possível usar tributos e taxas por estadia.
O segundo método (o preferido) é enviar apenas as tarifas noturnas de base exclusivas de tributos e taxas
nas mensagens de tarifa e usar TaxFeeInfo
para transmitir tributos e taxas no
nível da propriedade. Os tributos e taxas individuais ainda podem ser aplicados a tipos de quarto e planos de tarifa específicos, que são aplicáveis a determinados períodos.
Esta página descreve e se refere apenas ao método preferencial de uso
TaxFeeInfo
, e não ao método de especificação de AmountAfterTax
na
mensagem de avaliação (OTA_HotelRateAmountNotifRQ
).
Métodos para definir tributos
Você tem as seguintes opções para definir impostos:
- Basis = [room|person]
- Período = [stay|night]
- Type = [percent|amount]
Quando o período é stay
e o tipo é percent
, o Google aplica tributos e taxas para
toda a estadia, mesmo que uma única data no itinerário se sobreponha ao período de StayDates
. Não é possível especificar a aplicação de um tributo e uma taxa somente se TODAS as datas do itinerário se sobrepõem ao período de estadia. Para vários intervalos de datas de estadia
que se sobrepõem, os intervalos StayDates
são especificados em um
único intervalo aberto. Consulte os exemplos de TaxFeeInfo
.
Para conferir exemplos de vários cenários relacionados a impostos, consulte Instruções. Os exemplos abrangem alguns dos principais cenários fiscais, incluindo tutoriais para:
- Tributo fixo e percentual aplicado por propriedade
- Tributo percentual aplicado apenas às noites após a primeira
- Método para substituir as taxas antigas pelas novas
- Incluir ou excluir tributos de países
- Definir o imposto por faixa com colchetes
- Definir tributos e taxas tributáveis
As seções a seguir abrangem diretrizes gerais, um exemplo básico e cenários de instruções para você começar a adicionar e atualizar suas informações fiscais.
Elementos obrigatórios e opcionais
A referência do XML
oferece descrições dos elementos obrigatórios e opcionais. Para detalhes
sobre atributos e elementos filhos, consulte
Elementos e atributos TaxFeeInfo
.
Sintaxe e esquemas
Use o exemplo de sintaxe TaxFeeInfo
como referência ao criar a mensagem para garantir que você
esteja seguindo o formato correto. Você pode usar uma ferramenta XML de terceiros, como
xmllint, para validar seus feeds com os esquemas publicados antes de enviá-los
ao Google. Para o esquema de mensagem TaxFeeinfo
, consulte
Esquemas de anúncios de hotéis.
Diretrizes
Esta seção aborda as diretrizes comuns e instruções especiais para definir impostos e taxas.
Ações
- Sobreposição
- Use a ação
overlay
para substituir todos os tributos de uma propriedade. A açãooverlay
é a padrão e a única que oferece suporte. Todos os tributos e taxas anteriores da propriedade serão limpos quando a atualização for aplicada.
Geral
Cada
Tax
é avaliado e, se aplicável, calculado com base no valorAmountBeforeTax
especificado emBaseByGuestAmt
.Depois que todos os tributos e taxas aplicáveis são calculados, eles são adicionados ao preço base para formar o preço total.
A sintaxe de
<Tax>
e<Fee>
é a mesma.Tributos e taxas podem ter restrições, como:
- Aplicável apenas a tipos de quarto e planos de tarifas específicos.
- Aplica-se apenas a datas de estadia específicas.
Essas restrições são opcionais, e você não precisa definir todos os tipos de restrição. Você pode deixar esse campo em branco se for aplicável a todos.
Envie uma atualização
TaxFeeInfo
sempre que houver uma mudança nos tributos ou nas taxas.
Exemplo
Esta seção apresenta um exemplo básico de uma mensagem TaxFeeInfo
usando elementos obrigatórios
e opcionais. Depois de preparar o arquivo, você precisa enviá-lo ao
Google usando uma mensagem POST para este endpoint:
https://www.google.com/travel/hotels/uploads/taxes
Para saber mais sobre como enviar/POSTar a mensagem, consulte Enviar mensagens.
Para o atributo hotel_id
, use o ID exclusivo do hotel que você usou no seu sistema para identificar a propriedade. Esse valor precisa corresponder
ao ID do hotel especificado usando <id>
no elemento <listing>
no feed de lista de hotéis. A consistência com seu sistema é essencial para
garantir que o Google exiba seus dados corretamente.
Este exemplo mostra como definir uma porcentagem de 10% de tributos e um valor de taxa de US $50 para uma propriedade pelo total da estadia (não por noite):
<?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 conferir exemplos de como adicionar impostos relacionados à idade e outros, consulte Exemplos de impostos.
Tutoriais
Esta seção oferece soluções para cenários que podem ocorrer ao definir impostos e taxas.
Cenário 1: como adicionar uma taxa fixa
Este exemplo de tributação mostra como definir uma taxa fixa por propriedade.
Descrição
Você quer aplicar um tributo fixo para o quarto ou a estadia por propriedade, em vez de um tributo percentual.
Solução
Use amount
em vez de percentage
para adicionar a opção de imposto fixo.
Exemplo
Este exemplo mostra como adicionar uma taxa fixa usando amount
em vez 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>
Cenário 2: como segmentar impostos usando ApplicableNights
Descrição
Você quer aplicar uma taxa fixa apenas às noites após a primeira. Por exemplo, há uma taxa obrigatória para o uso diário de uma determinada comodidade que é excluída da primeira noite, em que os hóspedes não tiveram a chance de usar essa comodidade específica.
Solução
Use <ApplicableNights excluded="1"/>
para controlar quais noites têm impostos
aplicados.
Exemplo
Este exemplo mostra como 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>
Cenário 3: como substituir tributos e taxas antigos por novos
Descrição
As taxas e tributos atuais mudaram e precisam ser substituídos por novos.
Solução
Use a ação overlay
para remover todos os tributos e taxas.
Exemplo
O exemplo a seguir mostra como remover todos os impostos e taxas de uma propriedade:
<?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>
Cenário 4: como incluir ou excluir tributos para países
Descrição
Você precisa incluir o tributo de determinados países e excluir o tributo de outros. Por exemplo, você precisa excluir tributos de uma confederação menor com tributos de fora da UE enquanto tributa todos os outros países.
Solução
Use as opções include
ou exclude
para UserCountries type
.
Use include
para aplicar o tributo apenas ao país listado ou exclude
para
aplicar o tributo a todos os países, exceto o listado.
Exemplo
O exemplo a seguir mostra como definir tributos para usuários fora do país do 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>
Cenário 5: como definir a alíquota de faixa com colchetes
Descrição
Você quer adicionar um imposto do GST aplicado com base nas diárias.
Solução
Para este cenário, suponha que os intervalos de imposto do IBS do país de destino sejam:
- Nenhum imposto se a diária for menor ou igual a 1.000.
- 12% de imposto se a diária for maior que 1.000 e menor ou igual a 7.500.
- 18% de imposto se a diária for maior que 7.500.
Exemplo
O exemplo a seguir mostra como definir uma alíquota fixa com colchetes:
<?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>
Cenário 6: como definir tributos e taxas tributáveis
Descrição
Você quer adicionar um tributo, como o IVA, e outra taxa de serviço que também se aplica a esse tributo.
Solução
Este cenário considera dois exemplos de casos de uso de taxas tributáveis:
- O imposto e a taxa tributável são definidos como cobranças em porcentagem.
- A taxa é uma cobrança percentual, enquanto a taxa tributável é um valor fixo por estadia.
Exemplos
Taxa tributável em porcentagem
Neste exemplo, o AmountBeforeTax
é de US $100, o IBS é de 18% e a
taxa de serviço é de 5%, totalizando 5,9% (5 x 1,18) de taxa tributável e um valor total de US $123,90 (US $118 (IBS de 18%) + US$ 5,9 (taxa de serviço de 5,9%)).
O snippet a seguir define o imposto (GST) e a taxa tributável (taxa de serviço) como porcentagens:
<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>
Taxa tributável como valor
Este exemplo tem um AmountBeforeTax
de US $100, um imposto IBS de 18% e uma
taxa fixa adicional de US $20, o que resulta em uma taxa tributável total de US $23,60
(US$ 20 x 1,18) e um valor total de US $141,60 (US $118 (18% IBS) + US $23,60
(taxa fixa de US$ 20)).
O snippet a seguir define o imposto (GST) em porcentagem e a taxa tributável (taxa de serviço) como um valor de taxa fixa:
<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>