Jak pokazywać cenę z VAT według kraju odwiedzającego w PrestaShop
Skonfiguruj stawki VAT UE, pokaż cenę z VAT kraju wykrytego przez GeoIP lub wybranego w selektorze, a potem wyeksportuj sprzedaż według stawek: cała droga w PrestaShop, wraz z ograniczeniami modułu.
Hiszpański klient otwiera kartę produktu i widzi cenę obliczoną z francuskim VAT. Stawka jego kraju pojawia się dopiero po wpisaniu adresu, czasem gdy produkt jest już w koszyku. To pytanie sprzedawców działających w kilku krajach UE: jak pokazać cenę z VAT kraju odwiedzającego od pierwszej strony, nie psując reguł podatkowych produktów? Ten przewodnik przechodzi przez moduł OSS VAT UE, zakładka po zakładce, i pokazuje, co zostawia księgowemu.
Czy PrestaShop poradzi sobie sam z VAT w krajach UE i z OSS?
Nie do końca: PrestaShop stosuje VAT adresu koszyka; moduł stosuje stawkę wykrytego lub wybranego kraju już na karcie produktu i przygotowuje eksport według stawek dla OSS.
Jest przeznaczony przede wszystkim dla sklepów, które spełniają trzy warunki.
- Sprzedajesz osobom prywatnym w co najmniej dwóch krajach UE i pokazujesz ceny z VAT.
- Chcesz, aby odwiedzający widział stawkę swojego kraju już na karcie produktu, a nie dopiero w koszyku.
- Przygotowujesz sprzedaż według stawek do procedury OSS, z plikiem CSV do sprawdzenia.
Nie jest potrzebny w trzech przypadkach. Sklep sprzedający tylko w jednym kraju niewiele z niego skorzysta. Podobnie sprzedaż B2B z odwrotnym obciążeniem, bo moduł nie sprawdza numerów VAT. Sklep szukający monitorowania progu OSS albo przechowywania dowodów VAT przez dziesięć lat nie znajdzie ich w tej wersji.
Karta modułu podsumowuje funkcje, a dokumentacja opisuje każdą zakładkę.
Jak skonfigurować stawki VAT krajów UE w PrestaShop?
Otwórz stronę Konfiguruj modułu, a następnie zakładkę Podatki: kreator przygotowuje stawki krajów, w których sprzedajesz, pokazuje dane referencyjne stawek VAT dla każdego kraju i niczego nie tworzy przed potwierdzeniem.
Kreator działa w trzech krokach. Najpierw wybierasz grupy reguł podatkowych przypisane do produktów albo przygotowujesz nowe. Drugi krok pokazuje, kraj po kraju, stawki referencyjne (standardowa, obniżona, obniżona 2, bardzo obniżona) i stan konfiguracji (Skonfigurowany, Częściowy, Nie skonfigurowany). Trzeci krok wymienia podatki do utworzenia, reguły do utworzenia, pominięte elementy i błędy, a następnie stosuje zmiany po kliknięciu «Wykonaj»; dopóki nie potwierdzisz, podgląd nie tworzy żadnej reguły.
Dwa punkty trzeba sprawdzić ręcznie. Produkty nigdy nie są automatycznie przypisywane do innej grupy: artykuł ze stawką obniżoną zachowuje swoją grupę, a stawka obniżona zależy od kategorii i terytorium. Grupy współdzielone między sklepami, reguły regionalne i reguły łączone sprawdza się w natywnych ustawieniach PrestaShop, a nie w podglądzie modułu.
Jak pokazać cenę z VAT kraju odwiedzającego, z adresem i bez adresu?
Moduł ustala kraj w tej kolejności: adres podatkowy koszyka, wybór zapisany w cookie, wykrywanie GeoIP, a potem kraj domyślny z zakładki Ogólne.
Zakładka Ogólne włącza podgląd cen z VAT i ustawia kraj domyślny oraz uprawnione grupy klientów. Kraje proponowane w selektorze wybiera się w zakładce Kraje. Zakładka Wyświetlanie umieszcza selektor na standardowym hooku (displayNav1, displayNav2, displayTop) albo na hooku niestandardowym (domyślnie displayWeprestaOSS); dostępnych jest pięć szablonów, a podgląd na żywo podąża za ustawieniami.
Wykrywanie GeoIP konfiguruje się w zakładce Zaawansowane. Wpisz identyfikator konta MaxMind i klucz uprawniony do pobierania GeoLite2 Country, uruchom pobieranie i sprawdź stan bazy. PHP musi mieć cURL, Phar i zlib; pusty klucz zachowuje zapisany klucz. Na lokalnym adresie IP wykrywanie nie może działać.
Gdy tylko koszyk ma prawidłowy adres podatkowy, ten adres staje się punktem odniesienia, a koszty są przeliczane zgodnie z ustawieniem dostawy lub faktury w PrestaShop. Zalogowany klient może wybrać jeden ze swoich adresów i potwierdzić go do dostawy; moduł nigdy nie tworzy fikcyjnego adresu. Szacowana cena pojawia się też w oknie potwierdzenia dodania do koszyka.
Czas życia cookie ustawia się w zakładce Zaawansowane, w dniach; wartość 0 zachowuje wybór tylko na sesję.
Jak sprawdzić, czy geolokalizacja i ceny są poprawne?
Kraj pojawia się w selektorze tylko wtedy, gdy spełnione są trzy warunki: jest aktywny w zakładce Kraje, jego podatki są skonfigurowane w zakładce Podatki i jest aktywny w PrestaShop (Międzynarodowe → Lokalizacja → Kraje).
Zacznij od stanu bazy GeoIP w zakładce Zaawansowane: musi wskazywać, że baza jest dostępna. Potem użyj selektora kraju w sklepie, aby pokazać go jak odwiedzający z każdego wybranego kraju, i porównaj cenę produktu ze stawką podstawową oraz produktu ze stawką obniżoną. Zakończ koszykiem, z rzeczywistym adresem dostawy, a następnie z innym adresem faktury, jeśli go akceptujesz.
Jeśli cena się nie zmienia, wyczyść pamięć podręczną PrestaShop i sprawdź, czy produkt należy do grupy reguł podatkowych danego kraju. Jeśli brakuje kraju, wróć do trzech warunków powyżej. Pamięć podręczna stron lub CDN musi rozróżniać kraj i sesję odwiedzającego; inaczej może podawać wszystkim stronę jednego kraju.
Jak wyeksportować sprzedaż i faktury korygujące według stawki do deklaracji OSS?
Otwórz zakładkę Eksport VAT, wybierz okres, uruchom «Podgląd» i kliknij «Pobierz CSV»: kwoty są rozdzielone według sklepu, waluty, kraju, stawki i składnika, z transportem włącznie.
Sprzedaż idzie według daty zamówienia; faktury korygujące według daty wystawienia, także gdy dotyczą starszej sprzedaży. Kwoty i stawki historyczne są zachowywane: zmiana reguły podatkowej nie przepisuje zapisanych wierszy. Wiersze do sprawdzenia pozostają oznaczone w podglądzie i w pliku.
Zwrotu wpisanego bez faktury korygującej nie można odliczyć automatycznie. W przypadku terminów płatności klientów biznesowych spójrz raczej na Płatność odroczoną B2B, która obsługuje limit kredytowy i przypomnienia.
Co się stanie, gdy licencja wygaśnie albo serwer nie odpowiada?
Odnowiona subskrypcja nie jest już przerywana w starej dacie, a przejściowy błąd serwera licencji daje 7 dni tolerancji od pierwszego błędu; bez ważnej licencji moduł jednak się wyłącza.
Licencję aktywuje się na stronie Konfiguruj, kluczem i sekretem licencji z konta wepresta.shop, przyciskiem Aktywuj licencję. Panel pokazuje potem typ, domenę, datę wygaśnięcia i pozostałe dni; przycisk Dezaktywuj usuwa licencję z tego sklepu. Sprawdzenie odbywa się najwyżej raz na godzinę, a na tej stronie co 5 minut, dopóki licencja nie jest aktywna: PrestaShop kontaktuje się z serwerem tylko wtedy, gdy wypada sprawdzenie, a nie przy każdym otwarciu.

Po tym okresie moduł się wyłącza: selektor, komunikat VAT i ceny z VAT kraju odwiedzającego znikają, a PrestaShop pokazuje swoje zwykłe ceny. Ustawienia i reguły podatkowe pozostają na miejscu. Menedżer modułów odmawia ponownego włączenia modułu i odsyła do strony Konfiguruj, która włącza go, gdy tylko licencja jest ważna, bez wpisywania klucza po odnowieniu.

Wersja 2.0.2 naprawiła trzy błędy: odnowioną subskrypcję, która pozostawała przerwana w starej dacie, przejściową odpowiedź serwera, która usuwała licencję, oraz błąd 500 w panelu administracyjnym na PrestaShop 8 po wyłączeniu. Formularz, panel i komunikaty są dostępne po francusku, angielsku, hiszpańsku, włosku i polsku. Moduł jest zgodny z PrestaShop 1.7.8, 8.0+ i 9.0+, z PHP 7.4 minimum; w PHP 7.1–7.3 pokazuje komunikat «PHP 7.4 minimum» zamiast błędu krytycznego.

Czy eksport VAT zastępuje deklarację OSS?
Nie: sumuje sprzedaż i faktury korygujące zapisane w sklepie i tworzy plik CSV do sprawdzenia, a nie deklarację ani decyzję o Twoim obowiązku podatkowym.
Moduł nie śledzi progu OSS, nie przechowuje dowodów VAT przez dziesięć lat i nie aktualizuje samodzielnie bazy GeoIP. Nie sprawdza unijnych numerów VAT i nie zamienia ceny B2B na odwrotne obciążenie. Te ograniczenia są świadome: przybliżona liczba dotycząca obowiązku prawnego byłaby groźniejsza niż puste pole.
Stawki, reguły i Twój obowiązek podatkowy zależą od Twojej sytuacji i kraju siedziby. Moduł liczy i prezentuje; nie decyduje za Ciebie. Przed złożeniem deklaracji poproś księgowego o sprawdzenie konfiguracji i eksportu.
W przypadku pozostałych obowiązków europejskich dotyczących karty produktu zobacz paszport cyfrowy produktu oraz monitorowanie wylesiania UE (EUDR).
Najczęściej zadawane pytania
Czy mogę pokazywać różne ceny w zależności od adresu IP odwiedzającego?
Czy trzeba aktualizować bazę GeoIP MaxMind i jak często?
Co się stanie, gdy serwer licencji jest chwilowo niedostępny?
Subskrypcja została odnowiona: czy moduł wyłączy się w starej dacie?
Czy muszę rejestrować się w OSS, gdy sprzedaję do innego kraju UE?
Produkty w tym artykule
OSS VAT UE – Ceny brutto (GeoIP MaxMind)
Prawidłowe ceny brutto według kraju odwiedzającego, z GeoIP MaxMind lub wyborem ręcznym 27 stawek VAT UE...
Płatności odroczone B2B: limity kredytowe, należności i przypomnienia
Warunki płatności dla klienta, grupy lub domyślne: płatne po otrzymaniu faktury, netto 15/30/45/60/90, koniec...
Cyfrowy Paszport Produktu (DPP): QR i strona publiczna
Publiczna strona paszportu i kod QR do druku dla każdego produktu Skład, trwałość, naprawa, koniec życia,...
Wylesianie UE (EUDR): oznacz produkty ryzykowne i śledź DDS dostawców
Wskazuje w katalogu produkty z siedmiu grup surowców z rozporządzenia: drewno, kawa, kakao, soja, olej palmowy,...