Wiadomość dotycząca podatku i opłaty

Opis

Komunikat TaxFeeInfo określa podatki i opłaty, które obowiązują użytkownika podczas rezerwacji miejsca zakwaterowania oraz obowiązujące w witrynie przepisy podatkowe. Aby dodać dane o podatkach i opłatach, użyj wiadomości dotyczącej ceny (OTA_HotelRateAmountNotifRQ).

Jedynym obsługiwanym działaniem w przypadku tej wiadomości jest overlay. Zastąpi ono dane o podatkach i opłatach w przypadku poszczególnych usług. Ważne jest, by przesyłać aktualne informacje o podatkach i opłatach, gdy tylko zajdą jakieś zmiany.

Metody dodawania podatków i opłat

Istnieją 2 ogólne sposoby dodawania podatków i opłat: w pierwszej z nich w wiadomości dotyczącej ceny określisz kwotę AmountAfterTax. Aby je dodać, wyślij wiadomość o stawkach, które zawierają zarówno podstawowe stawki za noc (bez wszystkich podatków i opłat), jak i całkowite stawki za noc (ze wszystkimi podatkami i opłatami). Ponieważ stawki są ustalane za noc, ta metoda działa tylko w przypadku podatków i opłat wyrażonych w procentach lub stałych kwot za noc i nie można korzystać z podatków ani opłat za pobyt.

Druga (zalecana) metoda polega na wysyłaniu w komunikatach o cenach tylko podstawowych stawek za noc bez podatku lub opłat, a także użycia funkcji TaxFeeInfo do przekazywania informacji o podatkach i opłatach na poziomie miejsca zakwaterowania. Poszczególne podatki i opłaty nadal mogą być ustalane w zakresie konkretnych typów pokoi i abonamentów lub dotyczą określonych zakresów dat.

Metody ustawiania podatków

Podatki możesz ustawić na kilka sposobów:

  • Podstawa = [sala|osoba]
  • Miesiączka = [noc|noc]
  • Typ = [percent|amount]

Jeśli Okres to stay, a Typ to percent, Google nalicza podatki lub 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 lub opłaty tylko wtedy, gdy WSZYSTKIE daty w planie podróży pokrywają się z zakresem dat pobytu.

Przykłady różnych scenariuszy dotyczących podatku znajdziesz w tym artykule. Przykłady obejmują niektóre z najczęstszych scenariuszy podatkowych, w tym instrukcje dotyczące:

  • Podatek procentowy
  • Zryczałtowany podatek od każdej usługi
  • Podatek procentowy naliczany tylko za noce po pierwszej nocy
  • Metoda zastępowania starej wersji nowymi podatkami
  • Uwzględnianie i wykluczanie podatków w poszczególnych krajach
  • Ustaw podatek od płyty w nawiasach
  • Ustaw podatek i opłatę opodatkowaną

Sekcje poniżej zawierają ogólne wytyczne, podstawowe przykłady i instrukcje dodawania i aktualizowania danych podatnika.

Elementy wymagane i opcjonalne

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

Składnia i schematy

Użyj przykładowej składni TaxFeeInfo jako punktu odniesienia podczas tworzenia wiadomości, aby mieć pewność, że jest ona zgodna z prawidłowym formatem. Aby zweryfikować swoje pliki danych z opublikowanymi schematami przed przesłaniem ich do Google, możesz użyć narzędzia XML innej firmy, np. XMLlint. Schemat wiadomości TaxFeeinfo znajdziesz w artykule Schematy reklam hoteli.

Wytyczne

W tej sekcji znajdziesz typowe wytyczne i specjalne instrukcje dotyczące określania podatków i opłat.

Działania

Nakładka
Użyj działania overlay, aby zastąpić wszystkie podatki powiązane z usługą. Działanie overlay jest domyślne i jedyne obsługiwane. Po wprowadzeniu tej aktualizacji wszystkie wcześniejsze podatki i opłaty związane z tym miejscem zakwaterowania zostaną usunięte.

Ogólne

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

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

  • 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 pomieszczeń lub abonamentów.
    • Dotyczy tylko wybranych dat pobytu.

    Te ograniczenia są opcjonalne i nie musisz ustawiać każdego typu ograniczeń. Możesz pozostawić te pola puste, jeśli mają zastosowanie w przypadku wszystkich.

  • Wysyłaj powiadomienie TaxFeeInfo za każdym razem, gdy coś się zmieni w podatkach lub opłatach.

Przykład

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

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

Więcej informacji o przekazywaniu wiadomości w trybie push/POST znajdziesz w temacie Wysyłanie wiadomości w trybie push.

W przypadku atrybutu hotel_id użyj unikalnego identyfikatora hotelu użytego w systemie do identyfikacji miejsca zakwaterowania. Ta wartość musi być zgodna z identyfikatorem hotelu określonym za pomocą atrybutu <id> w elemencie <listing> w pliku danych z listą hoteli. Spójność z systemem jest niezbędna do prawidłowego wyświetlania danych przez Google.

Ten przykład pokazuje, jak ustawić procent podatku na poziomie 10% i opłatę w wysokości 50 USD za cały pobyt (a 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 oraz innych przykładów znajdziesz w artykule Przykłady podatków.

Instrukcje

W tej sekcji znajdziesz rozwiązania problemów, z jakimi możesz natrafić przy ustalaniu stawek podatków i opłat.

Scenariusz 1. Jak dodać zryczałtowany podatek

Ten przykład podatku pokazuje, jak ustawić zryczałtowany podatek dla każdej usługi.

Opis

Chcesz zastosować podatek zryczałtowany do za pokój/hotel, a nie podatek procentowy.

Rozwiązanie

Aby dodać opcję podatku zryczałtowanego, użyj amount zamiast percentage.

Przykład

Ten przykład pokazuje, jak dodać podatek zryczałtowany za pomocą właściwości 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 kierować podatki w ramach strategii ustalania stawek ApplicableNights

Opis

Chcesz stosować podatek zryczałtowany tylko do nocy po pierwszej nocy. Na przykład obowiązuje obowiązkowa opłata za codzienne korzystanie z określonych udogodnień, które są wykluczone z pierwszej nocy, gdy goście nie mogliby skorzystać z danego udogodnienia.

Rozwiązanie

Użyj <ApplicableNights excluded="1"/>, aby określić, w które noce 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ć stary podatek i nowymi podatkami i opłatami

Opis

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

Rozwiązanie

Użyj działania overlay, aby usunąć wszystkie podatki i opłaty.

Przykład

Z tego przykładu dowiesz się, jak usunąć wszystkie podatki lub opłaty związane z miejscem zakwaterowania:

    <?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 poszczególnych krajach

Opis

Musisz uwzględnić podatek obowiązujący w niektórych krajach, a jednocześnie nie podawać go w innych krajach. Musisz na przykład wykluczyć podatki w mniejszej konfederacji z podatkami spoza UE i opodatkować wszystkie inne kraje.

Rozwiązanie

Użyj opcji include lub exclude dla UserCountries type. Użyj kodu include, aby zastosować podatek tylko w wymienionym kraju, lub użyj exclude, aby zastosować podatek we wszystkich krajach z wyjątkiem tego.

Przykład

Z przykładu poniżej dowiesz się, jak ustawić podatki dla użytkowników spoza kraju hotelu (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 dotyczący płyty w nawiasach

Opis

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

Rozwiązanie

W tym scenariuszu załóżmy, że przedziały podatkowe kraju docelowego:

  • Bez podatku, jeśli stawka za noc jest niższa lub równa 1000.
  • 12% podatku, jeśli stawka za noc wynosi więcej niż 1000 i nie przekracza 7500.
  • 18% podatku, jeśli stawka za noc przekracza 7500.

Przykład

Poniższy przykład pokazuje, jak ustawić podatek od płyty w nawiasach:

<?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ę naliczaną przez opodatkowanie

Opis

Chcesz dodać podatek, na przykład VAT, oraz kolejną opłatę za obsługę, która będzie odnosić się do tego podatku.

Rozwiązanie

Ten scenariusz obejmuje 2 przykładowe przypadki użycia opłat podatkowych:

  • Zarówno podatek, jak i opłata podlegająca opodatkowaniu są określane jako opłaty procentowe.
  • Podatek jest wartością procentową, a opłata podlegająca opodatkowaniu to stała kwota za pobyt.

Przykłady

Opłata opodatkowana w procentach

W tym przykładzie kwota przed podatkiem wynosi 100 zł, podatek od towarów i usług w wysokości 18% oraz dodatkowe 5% opłaty za obsługę, co sprawia, że całkowita kwota podlegająca opodatkowaniu wynosi 5,9% (5*1,18) oraz łączna stawka wynosi 123,90 zł [= 118 zł (18% podatku od towarów i usług) + 5,9 zł (obciążenie za obsługę 5,9%)].

Ten fragment kodu definiuje podatek (GST) i opłatę podatkową (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 kwota przed podatkiem wynosi 100 zł, podatek od towarów i usług w wysokości 18% oraz dodatkową opłatę zryczałtowaną w wysokości 20 zł, co sprawia, że całkowita opłata podlegająca opodatkowaniu wynosi 23,60 zł (20 zł*1,18 zł) i łączna stawka wynosi 141,60 zł [= 118 zł (18% podatku od towarów i usług) + 23,60 zł (stawka zryczałtowana) (20 zł)

Ten fragment kodu definiuje podatek (GST) w procentach i opłatę podatkową (opłatę za obsługę) jako kwotę zryczałtowaną:

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