VAT UE przy sprzedaży do innych krajów Unii zależy od tego, kto kupuje. Firma z aktywnym numerem VAT UE kupuje bez VAT i sama rozlicza podatek w swoim kraju (odwrotne obciążenie), a konsument płaci VAT — zwykle według polskiej stawki, a przy produktach cyfrowych i sprzedaży wysyłkowej powyżej 10 000 euro rocznie według stawki swojego kraju. Warunkiem sprzedaży bez VAT jest numer klienta sprawdzony w unijnym rejestrze VIES. PrestaShop sam numerów VAT nie sprawdza. Poniżej wyjaśniamy zasady VAT w UE, pokazujemy, jak sklep nalicza podatek, i jak krok po kroku ustawić weryfikację numeru VAT w VIES modułem Weryfikacja VAT UE.
Jak działa VAT w Unii Europejskiej?
VAT to podatek od konsumpcji. Firmy w łańcuchu dostaw odliczają VAT zapłacony przy zakupach, więc ciężar podatku ponosi konsument końcowy. Wspólne zasady dla całej Unii zapisano w dyrektywie 2006/112/WE, a w Polsce w ustawie o VAT. Stawki ustala jednak każdy kraj sam — dyrektywa wymaga tylko, żeby stawka podstawowa wynosiła co najmniej 15% (art. 97 dyrektywy).
| Kraj | Stawka podstawowa VAT |
|---|---|
| Polska | 23% |
| Niemcy | 19% |
| Francja | 20% |
| Węgry | 27% (najwyższa w UE) |
| Luksemburg | 17% (najniższa w UE) |
Aktualne stawki wszystkich krajów, także obniżone, publikuje Komisja Europejska w bazie TEDB.
Firma, która handluje z innymi krajami UE, ma numer VAT UE: prefiks kraju i numer krajowy, np. PL + 10 cyfr NIP, DE + 9 cyfr, FR + 11 znaków. W Polsce taki numer ma podatnik zarejestrowany jako podatnik VAT-UE (zgłoszenie VAT-R, art. 97 ustawy o VAT). Sam NIP nie wystarczy — liczy się aktywna rejestracja do transakcji wewnątrzwspólnotowych, którą sprawdza się w VIES.
Kiedy naliczać VAT, a kiedy odwrotne obciążenie?
O tym, czy doliczasz VAT i według jakiej stawki, decydują trzy rzeczy: kim jest klient (firma czy konsument), skąd jest i co sprzedajesz. Tabela pokazuje typowe przypadki sklepu internetowego z Polski. To ogólne zasady, a nie porada podatkowa — szczegóły swojej sytuacji ustal z księgowym.
| Klient | Produkty cyfrowe i usługi elektroniczne | Towary wysyłane do klienta |
|---|---|---|
| Firma z innego kraju UE z ważnym numerem VAT UE | bez VAT — odwrotne obciążenie, VAT rozlicza nabywca | bez VAT — wewnątrzwspólnotowa dostawa towarów (WDT), stawka 0% |
| Konsument albo firma bez ważnego numeru z innego kraju UE | VAT kraju klienta (procedura OSS); do 10 000 € rocznie możesz stosować polski VAT | polski VAT do 10 000 € sprzedaży wysyłkowej w UE rocznie, powyżej — VAT kraju klienta (OSS) |
| Klient z Polski, także firma z NIP | polski VAT | polski VAT |
Firma z ważnym numerem VAT UE: odwrotne obciążenie
Przy usługach dla firmy z innego kraju UE miejscem opodatkowania jest kraj nabywcy (art. 44 dyrektywy, w Polsce art. 28b ustawy o VAT), a podatek rozlicza nabywca (art. 196 dyrektywy). Wystawiasz fakturę bez VAT, z numerami VAT UE obu stron i wyrazami „odwrotne obciążenie” (art. 106e ust. 1 pkt 18 ustawy o VAT), a sprzedaż wykazujesz w informacji podsumowującej VAT-UE (art. 100). Klient dolicza VAT według stawki swojego kraju w swojej deklaracji i zwykle od razu go odlicza.
Przy towarach wysyłanych do firmy w innym kraju UE to wewnątrzwspólnotowa dostawa towarów ze stawką 0% (art. 138 dyrektywy, art. 42 ustawy o VAT). Od 2020 roku warunkiem zwolnienia jest ważny numer VAT UE nabywcy i ujęcie dostawy w informacji podsumowującej, a do tego potrzebujesz dowodów wywozu towaru.
Konsument: VAT polski albo kraju klienta
Konsumentowi — i firmie, która nie podała ważnego numeru — doliczasz VAT. Od 1 lipca 2021 r. obowiązuje jeden unijny próg 10 000 euro netto rocznie dla sprzedaży wysyłkowej towarów i usług elektronicznych konsumentom z innych krajów UE, liczony łącznie dla wszystkich krajów, w bieżącym i poprzednim roku. Poniżej progu możesz doliczać polski VAT. Powyżej — VAT kraju klienta, rozliczany w jednej deklaracji w polskim urzędzie przez procedurę OSS (One Stop Shop), bez rejestracji w każdym kraju osobno. Pliki do pobrania, licencje i subskrypcje sprzedawane konsumentom to usługi elektroniczne, opodatkowane co do zasady w kraju klienta.
Klient z Polski
Odwrotne obciążenie przy sprzedaży do UE dotyczy transakcji między krajami. Polska firma z NIP płaci 23% VAT jak każdy klient krajowy — numer VAT z Twojego kraju nigdy nie zdejmuje podatku.
Gdy nie masz numeru VAT UE
Jeśli korzystasz ze zwolnienia podmiotowego (art. 113 ustawy o VAT), nie doliczasz VAT swoim klientom. Usługi dla firm z innych krajów UE i zakup usług od firm zagranicznych (np. reklam w Google czy Meta) wymagają jednak zwykle wcześniejszej rejestracji jako podatnik VAT-UE (art. 97 ust. 3). Od 2025 roku małe firmy mogą też korzystać ze zwolnienia w innych krajach UE (dyrektywa 2020/285), po osobnym zgłoszeniu.
Weryfikacja numeru VAT w VIES
VIES (VAT Information Exchange System) to wyszukiwarka Komisji Europejskiej, która pyta rejestr danego kraju, czy numer VAT jest aktywny w transakcjach wewnątrzwspólnotowych, i zwykle podaje nazwę oraz adres firmy. Sprawdzenie jest bezpłatne — na stronie VIES albo przez jej interfejs API.
Dlaczego to takie ważne? Według art. 18 rozporządzenia wykonawczego 282/2011 sprzedawca może uznać klienta za podatnika — i nie doliczyć VAT — gdy klient podał numer VAT, a sprzedawca uzyskał potwierdzenie jego ważności. Sam wpisany numer to za mało: może być nieaktywny, z literówką albo należeć do innej firmy. Jeśli sprzedasz bez VAT na nieważny numer, urząd może zażądać podatku od Ciebie.
- Dowód sprawdzenia — gdy w zapytaniu podasz własny numer VAT, VIES zwraca numer konsultacji, który potwierdza, że numer sprawdzono w danym dniu. Zapisz go przy zamówieniu.
- Awarie — systemy poszczególnych krajów mają przerwy serwisowe, a przy przeciążeniu VIES odrzuca zapytania. Sklep nie może wtedy blokować zamówień ani zmieniać cen w połowie zakupów.
- Aktualność — numer, który był ważny w zeszłym roku, mógł zostać wykreślony. Sprawdzaj go przy zamówieniu, a nie raz przy rejestracji konta.
Jak PrestaShop nalicza VAT?
PrestaShop liczy podatek z reguł podatków przypisanych do produktów, według kraju z adresu klienta. Do sprzedaży w UE przydają się te ustawienia:
- Reguły podatków (Międzynarodowe → Podatki → Reguły podatków) — grupa reguł określa stawkę w każdym kraju. Pakiet lokalizacyjny (Międzynarodowe → Lokalizacja) tworzy m.in. grupę „EU VAT For Virtual Products” ze stawkami wszystkich krajów UE dla produktów cyfrowych.
- Adres podatkowy — w Międzynarodowe → Podatki opcja „Bazuje na” wybiera adres dostawy albo adres do faktury.
- Pole numeru VAT — klient wpisze numer tylko wtedy, gdy format adresu jego kraju zawiera pole
vat_number(Międzynarodowe → Położenie → Kraje). - Tryb B2B (Preferencje → Klienci → Włącz tryb B2B) dodaje do konta klienta dane firmy, ale nie zmienia podatku.
- Grupy klientów z metodą wyświetlania cen „Netto” (Klienci → Grupy) pokazują ceny bez VAT, ale do zamówienia VAT jest nadal doliczany.
Czego brakuje? PrestaShop nie sprawdza numerów VAT. W kodzie został tylko mechanizm po dawnym module „vatnumber” (ustawienie VATNUMBER_MANAGEMENT), który zdejmuje VAT każdemu adresowi z numerem VAT spoza kraju sklepu — bez żadnego sprawdzenia. Komentarz w kodzie PrestaShop 9 mówi wprost: „No validation”. Literówka albo wymyślony numer oznacza sprzedaż bez VAT, którą urząd może zakwestionować.
Brakujące ogniwo — sprawdzenie numeru w VIES i przekazanie wyniku do naliczania podatku — dodaje nasz moduł Weryfikacja VAT UE (VIES). Działa w PrestaShop 1.7.8, 8 i 9 (PHP od 7.2.5), z motywami Classic i Hummingbird, także w trybie multistore.
Odwrotne obciążenie w PrestaShop krok po kroku
Moduł działa w samym naliczaniu podatku PrestaShop: gdy adres klienta ma numer VAT potwierdzony w VIES, a kraj należy do UE i nie jest Twoim krajem, sklep liczy 0% od produktów, dostawy i pakowania na prezent. Ceny, sumy i faktury zmieniają się razem z tym, a Twoje reguły podatkowe zostają bez zmian. Ustawienie zajmuje kilka minut.
Krok 1. Zainstaluj moduł i sprawdź Status
Wgraj plik ZIP w Moduły → Menedżer modułów → Prześlij moduł i kliknij Konfiguruj. Ramka Status na górze strony pokazuje, co przeszkadza modułowi: wyłączone podatki, stare ustawienie VATNUMBER_MANAGEMENT (wyłączysz je jednym kliknięciem) albo aktywne kraje UE bez pola numeru VAT.

Krok 2. Dodaj pole numeru VAT do adresu
W Międzynarodowe → Położenie → Kraje edytuj każdy kraj UE, do którego sprzedajesz, i sprawdź, czy format adresu zawiera vat_number. Bez tego pola klient nie ma gdzie wpisać numeru.

Krok 3. Ustaw swój kraj, numer VAT i faktury
W Ustawieniach podatku wybierz Twój kraj — jego klienci zawsze płacą VAT. Wpisz Twój numer VAT, żeby VIES przy każdym sprawdzeniu zwracał numer konsultacji. Zdecyduj też, co robić z nieważnym numerem: zapisać adres, naliczyć VAT i ostrzec klienta albo nie zapisać adresu do czasu poprawki.

Okres karencji (domyślnie 72 godziny) sprawia, że potwierdzony wcześniej numer zostaje ważny, gdy VIES akurat nie działa. Adnotację na fakturach i korektach ustawiasz osobno dla każdego języka — domyślnie „Odwrotne obciążenie: podatek VAT rozlicza nabywca.” Dopisz do niej to, co zaleci księgowy, np. artykuł dyrektywy.

Krok 4. Dostosuj połączenie z VIES
Każda odpowiedź VIES jest zapisywana i używana przez okres ważności sprawdzenia (domyślnie 60 minut), więc o ten sam numer moduł pyta najwyżej raz na ten czas. Limit czasu określa, jak długo klient najdłużej czeka na VIES, a limity zapytań na minutę, godzinę i odwiedzającego chronią serwer przed blokadą. Do testów jest tryb testowy z usługą testową VIES: numer 100 jest ważny, 200 nieważny.

Krok 5. Sprawdź, co widzi klient
Numer jest sprawdzany, gdy klient zapisuje adres — na koncie albo w zamówieniu. Po potwierdzeniu w VIES klient widzi komunikat, że ceny są bez VAT.

W zamówieniu zweryfikowana firma z innego kraju UE widzi produkty, dostawę i sumę bez VAT. Konsumenci i klienci z Twojego kraju płacą VAT jak dotąd. Żeby zobaczyć koszyk oczami konkretnego klienta bez znajomości jego hasła, użyj bezpłatnego modułu Zaloguj jako klient.

Krok 6. Kontroluj zamówienia, numery i dziennik
Każde zamówienie z numerem VAT zachowuje wynik VIES: numer, decyzję, numer konsultacji, nazwę i adres firmy oraz datę sprawdzenia. To Twój dowód dla urzędu skarbowego.

Lista Numery VAT pokazuje wszystkie sprawdzone numery z odpowiedzią VIES. Możesz sprawdzić numer ponownie albo oznaczyć go ręcznie — przydaje się, gdy system jakiegoś kraju nie działa od kilku dni, a firmę sprawdzono inaczej.

Dziennik zapisuje każde zapytanie z kodem VIES i czasem odpowiedzi, także wstrzymane przez limity. Awaria VIES nigdy nie blokuje klienta — trafia do dziennika.

Wskazówka: VIES potwierdza, że numer jest aktywny, a nie kto go wpisał. Przed wysłaniem dużego zamówienia porównaj nazwę i adres firmy z VIES z danymi klienta w zamówieniu.
Najczęstsze błędy przy VAT UE w sklepie
- Zdejmowanie VAT każdemu, kto wpisał numer. Stare ustawienie
VATNUMBER_MANAGEMENTalbo ręczne przenoszenie klientów do grupy „firmy” nie sprawdza, czy numer jest ważny. - Brak pola numeru VAT w formacie adresu. Klient z Niemiec czy Francji nie ma gdzie go wpisać i płaci VAT, a potem prosi o korektę.
- Brak dowodu sprawdzenia. Wynik z VIES z datą i numerem konsultacji powinien zostać przy zamówieniu, a nie tylko w pamięci pracownika.
- VAT zdjęty klientowi z Polski. Odwrotne obciążenie przy sprzedaży do UE dotyczy firm z innych krajów UE.
- Pominięty próg 10 000 euro. Po jego przekroczeniu konsumenci z innych krajów płacą VAT swojego kraju — w PrestaShop zrobisz to regułami podatków.
Masz już pozostałe elementy — płatności, faktury i księgowość? Przy wyborze bramki pomoże poradnik o płatnościach w PrestaShop, a jeśli sklep działa na starszej wersji, zajrzyj do poradnika o aktualizacji PrestaShop. Własny układ faktury albo integrację z systemem księgowym przygotujemy w ramach prac programistycznych PrestaShop.
Źródła
- Dyrektywa Rady 2006/112/WE w sprawie wspólnego systemu podatku od wartości dodanej — art. 44, 97, 138, 196 i 262.
- Rozporządzenie wykonawcze Rady (UE) nr 282/2011 — art. 18 (status klienta i numer VAT).
- Ustawa z dnia 11 marca 2004 r. o podatku od towarów i usług — art. 28b, 42, 97, 100, 106e i 113.
- Your Europe: VAT w transakcjach transgranicznych (Komisja Europejska).
- One Stop Shop (OSS) i próg 10 000 euro (Komisja Europejska).
- VIES — sprawdzanie numerów VAT i baza stawek VAT TEDB (Komisja Europejska).
- Dyrektywa Rady (UE) 2020/285 — zwolnienie małych przedsiębiorstw od 2025 r.
- PrestaShop 9.2, klasa Product — ustawienie
VATNUMBER_MANAGEMENT.
Najczęściej zadawane pytania
Czy firma z innego kraju UE zawsze kupuje bez VAT?
Tylko wtedy, gdy podała numer VAT UE, który jest aktywny w VIES. Firma bez numeru albo z numerem nieważnym jest traktowana jak konsument i płaci VAT. Dlatego numer trzeba sprawdzić, zanim sklep zdejmie podatek.
Co się dzieje, gdy VIES nie działa?
Moduł zachowuje ostatnią odpowiedź i przez okres karencji (domyślnie 72 godziny) traktuje potwierdzony wcześniej numer jako ważny. Nowe numery sprawdza ponownie po przerwie, a każdy błąd zapisuje w dzienniku. Awaria VIES nie blokuje zamówienia.
Czy odwrotne obciążenie dotyczy polskich firm?
Nie przy sprzedaży, o której mowa w tym poradniku. Klient z Twojego kraju płaci VAT także wtedy, gdy ma ważny numer VAT. W module ustawiasz to polem „Twój kraj”.
Czy moduł zmienia moje reguły podatków i ceny?
Nie. Mówi tylko PrestaShop, żeby naliczył 0% dla zweryfikowanej firmy z innego kraju UE. Reguły podatków, ceny i grupy klientów zostają bez zmian, a po odinstalowaniu sklep nalicza VAT jak wcześniej.
Czy VAT znika też z kosztów dostawy?
Tak. Dla zweryfikowanej firmy z innego kraju UE moduł zdejmuje VAT z produktów, dostawy i pakowania na prezent, a faktura i korekta dostają adnotację o odwrotnym obciążeniu w języku zamówienia.
Sprzedajesz firmom w innych krajach UE? Zobacz moduł Weryfikacja VAT UE (VIES) albo napisz do nas, jeśli masz pytanie o swój sklep.