Wiadomość dotycząca podatku i opłaty

Omówienie

Wiadomość TaxFeeInfo określa podatki i opłaty, które obowiązują użytkownika podczas rezerwacji obiektu, na podstawie przepisów podatkowych obiektu opisanych na stronie internetowej. Aby dodać dane dotyczące podatków i opłat, służy do wyświetlania wiadomości ze stawką (OTA_HotelRateAmountNotifRQ).

Jedynym obsługiwanym działaniem w przypadku tego komunikatu jest overlay, które służy do zastąpienia danych o podatkach i opłatach w przypadku każdej usługi. Ważne jest, aby w przypadku zmian wysyłać aktualizacje dotyczące podatków i opłat.

Metody dodawania podatków i opłat

Podatki i opłaty można dodawać na 2 ogólne sposoby:

W pierwszym przypadku w wiadomości o cenie podajesz wartość AmountAfterTax. Dodawanie podatków i opłat odbywa się poprzez wysyłanie wiadomości o cenie, które zawierają zarówno stawki podstawowe za noc (bez podatków i opłat), jak i łączne stawki za noc (z podatkami i opłatami). Te stawki obowiązują tylko za noc, więc to podejście dotyczy tylko procentowych podatków i opłat lub stałych kwot za noc. Nie można też użyć podatków i opłat za pobyt.

Druga (preferowana) metoda polega na wysyłaniu w wiadomościach o stawkach tylko stawek bez podatku i opłat, a do przekazywania podatków i opłat na poziomie obiektu należy używać atrybutu TaxFeeInfo. Poszczególne podatki i opłaty mogą być ograniczone do określonych typów pokoi i planów cenowych, które obowiązują w określonych zakresach dat.

Ta strona opisuje i odnosi się tylko do preferowanej metody korzystania z TaxFeeInfo, a nie do metody określania AmountAfterTax w wiadomości Ocena (OTA_HotelRateAmountNotifRQ).

Metody konfigurowania podatków

Masz do wyboru te opcje ustawiania podatków:

  • Basis = [room|person]
  • Okres = [pobyt|noc]
  • Typ = [procent|amount]

Jeśli okres to stay, a typ to percent, Google stosuje podatki i opłaty za cały pobyt, nawet jeśli pojedyncza data w planie podróży pokrywa się z zakresem StayDates. Nie możesz określić zastosowania podatku i opłaty tylko wtedy, gdy WSZYSTKIE daty w planie podróży pokrywają się z zakresem dat pobytu.

Przykłady różnych scenariuszy związanych z podatkami znajdziesz w instrukcjach. Przykłady obejmują niektóre najczęstsze scenariusze podatkowe, w tym instrukcje dotyczące:

  • Podatek procentowy
  • Podatek zryczałtowany na usługę
  • Procentowy podatek naliczany tylko za noc po pierwszej nocy
  • Metoda zastępowania starych podatków nowymi
  • Uwzględnianie lub wykluczanie podatków w przypadku poszczególnych krajów
  • Ustawianie podatku liniowego za pomocą nawiasów
  • Ustaw podatek i opłatę podlegającą opodatkowaniu

W następnych sekcjach znajdziesz ogólne wskazówki, podstawowy przykład i scenariusze, które pomogą Ci zacząć dodawać i aktualizować informacje o podatniku.

Wymagane i opcjonalne elementy

W dokumentacji XML znajdziesz opisy wymaganych i opcjonalnych elementów. Szczegółowe informacje o atrybutach i elementach podrzędnych znajdziesz w artykule TaxFeeInfo Elementy i atrybuty.

Składnia i schematy

Podczas tworzenia wiadomości użyj przykładowej składni TaxFeeInfo, aby mieć pewność, że masz właściwy format. Przed przesłaniem plików danych do Google możesz użyć narzędzia XML innej firmy, np. xmllint, aby sprawdzić je pod kątem zgodności z opublikowanymi schematami. Schematy wiadomości TaxFeeinfo znajdziesz w artykule Schematy reklam hoteli.

Wytyczne

W tej sekcji znajdziesz ogólne wytyczne i specjalne instrukcje dotyczące ustawiania podatków i opłat.

Działania

Nakładka
Wykonaj działanie overlay, aby zastąpić wszystkie podatki wymagane w przypadku danej usługi. Działanie overlay jest domyślnym i jedynym obsługiwanym działaniem. Po zastosowaniu tej aktualizacji wszystkie poprzednie podatki i opłaty związane z tym miejscem zakwaterowania zostaną anulowane.

Ogólne

  • Każda wartość Tax jest oceniana i w odpowiednich przypadkach obliczana na podstawie wartości AmountBeforeTax określonej w elementach BaseByGuestAmt.

  • Po obliczeniu wszystkich podatków i opłat są one dodawane do ceny podstawowej, tworząc cenę łączną.

  • Składnia instrukcji <Tax> i <Fee> jest taka sama.

  • Podatki i opłaty mogą podlegać ograniczeniom, na przykład:

    • Dotyczy to tylko określonych typów pokojów i abonamentów.
    • Dotyczy tylko konkretnych dat pobytu.

    Te ograniczenia są opcjonalne i nie musisz ustawiać wszystkich typów ograniczeń. Jeśli chcesz, możesz je zostawić puste.

  • W przypadku zmiany podatków lub opłat wyślij aktualizację TaxFeeInfo.

Przykład

W tej sekcji znajdziesz podstawowy przykład wiadomości TaxFeeInfo z wymaganymi i opcjonalnymi elementami. Po przygotowaniu pliku musisz go wysłać do Google, używając do tego celu komunikatu POST do tego punktu końcowego:

https://www.google.com/travel/hotels/uploads/taxes

Więcej informacji o pushowaniu lub przesyłaniu wiadomości znajdziesz w artykule Pushowanie wiadomości.

W przypadku atrybutu hotel_id użyj unikalnego identyfikatora hotelu, którego używasz w swoim systemie do identyfikacji obiektu. Ta wartość musi pasować do identyfikatora hotelu określonego za pomocą atrybutu <id> w elemencie <listing> w pliku danych z listą hoteli. Zgodność z systemem jest kluczowa dla prawidłowego wyświetlania danych w Google.

Ten przykład pokazuje, jak ustawić 10% stawkę podatku i opłatę w wysokości 50 USD za pobyt (nie za noc):

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

Przykłady dodawania podatków związanych z wiekiem i inne przykłady znajdziesz w artykule Przykłady podatków.

Instrukcje

W tej sekcji znajdziesz rozwiązania dotyczące scenariuszy, które mogą wystąpić podczas konfigurowania podatków i opłat.

Scenariusz 1. Dodawanie podatku liniowego

Ten przykład podatku pokazuje, jak ustawić płaski podatek od nieruchomości.

Opis

chcesz zastosować zryczałtowaną opłatę za pokój lub pobyt w danym miejscu zamiast podatku procentowego.

Rozwiązanie

Aby dodać opcję podatku liniowego, użyj wartości amount zamiast percentage.

Przykład

Ten przykład pokazuje, jak dodać podatek płaski, używając amount zamiast 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>

Scenariusz 2. Jak określić kierowanie na podatki za pomocą: ApplicableNights

Opis

chcesz zastosować opłatę stałą tylko do nocy po pierwszej nocy; Na przykład obowiązuje obowiązkowa opłata za codzienne korzystanie z pewnej udogodnienia, która jest wyłączona w przypadku pierwszej nocy, ponieważ goście nie mieliby możliwości skorzystania z tej udogodnienia.

Rozwiązanie

Użyj opcji <ApplicableNights excluded="1"/>, aby określić, w których dniach mają być naliczane podatki.

Przykład

Ten przykład pokazuje, jak używać funkcji 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>

Scenariusz 3. Jak zastąpić stare podatki i opłaty

Opis

Obecne podatki i opłaty uległy zmianie i trzeba je zastąpić nowymi.

Rozwiązanie

Aby usunąć wszystkie istniejące podatki i opłaty, użyj działania overlay.

Przykład

Ten przykład pokazuje, jak usunąć wszystkie podatki i opłaty za usługę:

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

Scenariusz 4. Jak uwzględnić lub wykluczyć podatki w przypadku krajów

Opis

Musisz uwzględnić podatek w przypadku niektórych krajów, a w przypadku innych nie uwzględniać go. Na przykład musisz wykluczyć podatki w przypadku mniejszej konfederacji z podatkami poza UE, a jednocześnie opodatkować wszystkie inne kraje.

Rozwiązanie

Użyj opcji include lub exclude w przypadku UserCountries type. Użyj wartości include, aby zastosować podatek tylko w wymienionym kraju, lub wartości exclude, aby zastosować podatek we wszystkich krajach z wyjątkiem wymienionego.

Przykład

Ten przykład pokazuje, jak ustawić podatki dla użytkowników spoza kraju, w którym znajduje się hotel (Izrael):

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

Scenariusz 5. Jak ustawić podatek od detali w nawiasach

Opis

Chcesz dodać podatek od towarów i usług GST na podstawie stawek za noc.

Rozwiązanie

W tym scenariuszu zakładamy, że stawki podatku GST w kraju docelowym są następujące:

  • Bez podatku, jeśli cena za noc jest mniejsza niż lub równa 1000.
  • 12% podatku, jeśli stawka za noc jest większa niż 1000 zł i nie przekracza 7500 zł.
  • 18% podatku, jeśli stawka za noc przekracza 7500 JPY.

Przykład

Ten przykład pokazuje, jak ustawić podatek płaski za pomocą nawiasów:

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

Scenariusz 6. Jak ustawić podatek i opłatę podlegającą opodatkowaniu

Opis

chcesz dodać podatek, np. VAT, oraz inną opłatę za obsługę, która również podlega temu podatkowi.

Rozwiązanie

W tym scenariuszu rozpatrzymy 2 przykładowe przypadki użycia podlegających opodatkowaniu opłat:

  • Zarówno podatek, jak i opłata podlegająca opodatkowaniu są określone jako opłaty procentowe.
  • Podatek to obciążenie procentowe, a opłata podlegająca opodatkowaniu to stała kwota za pobyt.

Przykłady

Opodatkowana opłata w procentach

W tym przykładzie AmountBeforeTax zawiera podatek od towarów i usług w wysokości 100 zł, podatek od towarów i usług w wysokości 18% oraz dodatkową opłatę za obsługę w wysokości 5%. W rezultacie łączna kwota opłaty podlegającej opodatkowaniu wynosi 5,9% (5*1,18), a łączna stawka wynosi 123,90 zł [= 118 zł (18% podatku od towarów i usług) + 5,9 zł (opłata za obsługę 5,9%)].

Poniższy fragment kodu definiuje podatek (GST) i opłatę podlegającą opodatkowaniu (opłatę za obsługę) jako wartości procentowe:

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

Opłata podlegająca opodatkowaniu jako kwota

W tym przykładzie AmountBeforeTax wynosi 100 USD, podatek GST – 18%, a dodatkowa opłata ryczałtowa – 20 USD. Łączna kwota podlegająca opodatkowaniu wynosi 23,60 USD (20 USD * 1,18), a łączna kwota podatku – 141,60 USD (118 USD (18% podatku GST) + 23,60 USD (opłata ryczałtowa)).

Poniższy fragment kodu definiuje podatek (GST) w procentach, a opłatę podlegającą opodatkowaniu (opłatę za obsługę) jako kwotę stałą:

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