Jak sprawdzić VIES krok po kroku
Sprawdzenie numeru VAT UE w VIES zajmuje mniej niż minutę, ale poprawne wykonanie tej czynności wymaga znajomości kilku zasad — od formatu numeru, przez zachowanie identyfikatora konsultacji, po archiwizację dowodu na potrzeby kontroli skarbowej.
Krok 1 — przygotuj dane kontrahenta
Przed sprawdzeniem upewnij się, że masz dwie informacje: dwuliterowy kod kraju ISO (PL, DE, FR, IT, ES itd.) oraz numer VAT bez prefiksu krajowego. Najczęstszy błąd to dublowanie kodu kraju — wpisanie „DE123456789” w pole numeru. Wpisz tylko 123456789. Drugi częsty błąd to znaki specjalne — spacje, myślniki, kropki w numerze. Większość wyszukiwarek je usuwa, ale niektóre formularze odrzucają takie wpisy. Skopiuj numer z dokumentu źródłowego (faktury, e-maila) i ręcznie usuń spacje i myślniki.
Krok 2 — wybierz wyszukiwarkę
Możesz skorzystać z oficjalnej wyszukiwarki Komisji Europejskiej pod adresem ec.europa.eu/taxation_customs/vies/ lub naszej polskiej [wyszukiwarki ViesVAT](/sprawdz-vies/). Obie odpytują tę samą bazę i zwracają identyczne wyniki prawne. Różnica: nasza wyszukiwarka ma polski interfejs, automatycznie usuwa prefiksy i spacje, oraz zapisuje identyfikator konsultacji w historii (dla zalogowanych użytkowników). Oficjalna wyszukiwarka KE jest minimalistyczna — sam formularz z dwoma polami.
Krok 3 — wyślij zapytanie i przeczytaj wynik
Po kliknięciu „Sprawdź” zobaczysz jeden z trzech wyników. „Numer VAT aktywny” oznacza: numer istnieje w rejestrze danego kraju i jest aktualnie zarejestrowany do transakcji wewnątrzwspólnotowych. „Numer VAT nieaktywny” lub „Nieprawidłowy numer” oznacza: numer nie istnieje, wygasł lub nie jest zarejestrowany do VAT-UE. „Błąd komunikacji” (technically: MS_UNAVAILABLE) oznacza chwilową awarię rejestru krajowego — ponów próbę za 15–60 minut.
Krok 4 — zapisz identyfikator konsultacji
Najważniejszy krok dla księgowości: zanotuj lub zapisz identyfikator konsultacji (consultation number), który baza VIES zwraca dla każdego zapytania. To unikalny ciąg znaków będący dowodem, że w konkretnym dniu sprawdziłeś konkretny numer i otrzymałeś konkretny wynik. Identyfikator jest niepodważalny — KE przechowuje wszystkie zapytania we własnych logach i może je zweryfikować na żądanie urzędu skarbowego. Bez identyfikatora konsultacji weryfikacja VIES traci moc dowodową w razie sporu z fiskusem.
Krok 5 — wpis do dokumentacji księgowej
Identyfikator konsultacji wraz z datą sprawdzenia, numerem VAT, krajem i wynikiem (aktywny/nieaktywny) zapisz w polu opisu lub uwag wystawionej faktury WDT. Niektóre programy fakturowe mają osobne pole „weryfikacja VIES” — uzupełniaj je konsekwentnie. W księgowości tradycyjnej (papierowej) załącz wydruk wyniku VIES do faktury. Wszystkie polskie urzędy skarbowe akceptują wydruk lub zrzut ekranu wyniku z bazy VIES jako dowód weryfikacji.
Krok 6 — co zrobić, gdy numer jest nieaktywny
Wstrzymaj wystawienie faktury z 0% VAT. Skontaktuj się z kontrahentem i poproś o wyjaśnienie. Najczęstsze przyczyny: (1) firma nie zarejestrowała się do VAT-UE w swoim kraju — musi wykonać odpowiedni wniosek; (2) numer wygasł z powodu braku transakcji UE przez 6 miesięcy; (3) firma została wykreślona z rejestru VAT (likwidacja, oszustwa); (4) kontrahent podał krajowy numer VAT zamiast VAT-UE — np. niemiecki Steuernummer zamiast USt-IdNr.
Sprawdzanie masowe
Jeśli musisz sprawdzić wiele numerów (lista kontrahentów, baza danych ERP), ręczne wpisywanie staje się niepraktyczne. Skorzystaj z naszego [API](/api/) z endpointem batch lub z aplikacji desktopowej, która pobiera listę CSV i zwraca wyniki w formie Excel. Sprawdzanie automatyczne raz w miesiącu wszystkich aktywnych kontrahentów to dobra praktyka — pozwala wychwycić zmiany statusu zanim wystawisz na nieaktywny numer.
Worked example — pełna weryfikacja niemieckiego klienta
Załóżmy: niemiecka firma „Beispiel GmbH” zamówiła towar o wartości 50 000 EUR. Otrzymujesz numer USt-IdNr.: DE123456789. Krok 1: w ViesVAT wybierz „DE — Niemcy” z listy krajów (lista posortowana alfabetycznie po polsku, więc Niemcy znajdziesz pod literą N). Krok 2: wpisz 123456789 — bez prefiksu DE, bez spacji, bez myślników. Jeśli kontrahent przesłał numer w formie „DE 123 456 789” lub „DE-123-456-789”, usuń wszystkie niealfanumeryczne znaki i prefiks. Krok 3: kliknij „Sprawdź”. Krok 4: po 1–3 sekundach pojawi się wynik. Jeśli aktywny, zobaczysz: zielony badge „AKTYWNY”, nazwę „Beispiel GmbH”, adres (jeśli Niemcy go udostępniają — często zwracają puste), datę zapytania (2026-05-28 11:42:13 CET), identyfikator konsultacji „WAPIAAAAabc12345”. Krok 5: kliknij „Zapisz PDF” — pobierz oficjalny raport weryfikacji z wszystkimi danymi. Krok 6: zapisz identyfikator w polu „uwagi” wystawianej faktury WDT lub w polu „weryfikacja VIES” w programie księgowym (Comarch, iFirma, Sage mają takie pole).
Walidacja formatu offline — zanim klikniesz Sprawdź
Profesjonalna weryfikacja zaczyna się jeszcze przed wysłaniem zapytania do VIES. Sprawdź format numeru offline — to oszczędza zapytanie KE (które mogłoby pójść w MS_UNAVAILABLE) i daje natychmiastową odpowiedź dla oczywistych literówek. Dla polskiego NIP (PL): oblicz cyfrę kontrolną. Algorytm: weź pierwsze 9 cyfr, pomnóż przez wagi [6,5,7,2,3,4,5,6,7], zsumuj, podziel modulo 11. Wynik powinien równać się 10. cyfrze. Jeśli wynik = 10, NIP nieprawidłowy. Przykład: NIP 5252023338 — 5×6+2×5+5×7+2×2+0×3+2×4+3×5+3×6+3×7 = 30+10+35+4+0+8+15+18+21 = 141; 141 mod 11 = 9; ostatnia cyfra NIP = 8; 9 ≠ 8 — NIP NIEPRAWIDŁOWY (przykład celowo zmyślony). Dla niemieckiego USt-IdNr.: algorytm MOD 11/10 zgodny z ISO 7064. Dla francuskiego: klucz = (12 + 3 × SIREN mod 97) mod 97 — z 9-cyfrowego SIREN wyliczasz 2-cyfrowy klucz na początku numeru. Dla włoskiego Partita IVA: wariant Luhn z różnymi wagami pozycyjnymi. Implementacje wszystkich tych algorytmów są w naszym SDK — wywołanie `validateFormat('PL', '5252023338')` zwraca true/false bez zapytania do VIES.
Co dokładnie zachować w księgowości
Polskie biura rachunkowe mają coraz bardziej rygorystyczne procedury archiwizacji dowodów weryfikacji VIES — w odpowiedzi na rosnącą liczbę kontroli krzyżowych po wdrożeniu CESOP w 2024. Standard branżowy 2026 to przechowywanie sześciu pól dla każdej faktury WDT: (1) data i godzina wykonania weryfikacji (z dokładnością do minuty); (2) kod kraju kontrahenta; (3) sprawdzony numer VAT (bez prefiksu, jak wpisany do VIES); (4) wynik weryfikacji (aktywny/nieaktywny/błąd komunikacji); (5) identyfikator konsultacji (consultation number); (6) nazwa i adres firmy zwrócone przez VIES (jeśli kraj udostępnił). Forma: pole „uwagi” lub osobne pole „weryfikacja VIES” w programie księgowym, lub PDF z wynikiem jako załącznik do faktury. Czas przechowywania: 5 lat od końca roku transakcji (polski okres przedawnienia zobowiązań podatkowych — art. 70 Ordynacji podatkowej). Rekomendacja dla zwiększonego bezpieczeństwa: 7 lat. Po upływie okresu — archiwizacja zimna lub usunięcie zgodnie z polityką firmy. W żadnym wypadku nie usuwaj wcześniej niż upłynie okres przedawnienia, nawet po zakończeniu współpracy z kontrahentem.
Częstotliwość weryfikacji stałych kontrahentów
Pytanie, które często padają od polskich księgowych: „mamy stałego niemieckiego klienta, fakturujemy co miesiąc, czy muszę go sprawdzać przed każdą fakturą?” Krótka odpowiedź: tak, jeśli chcesz mieć pełną obronę przy kontroli. Długa odpowiedź wymaga oceny ryzyka. Status w VIES może się zmienić każdej chwili — firma może zostać zlikwidowana, wykreślona za nadużycia, wygasić rejestrację VAT-UE z powodu braku transakcji UE przez 6 miesięcy. Jeśli wystawisz fakturę z 0% VAT temu samemu klientowi, którego sprawdzałeś rok temu, a w międzyczasie stracił status VIES — w razie kontroli urząd zakwestionuje stawkę. Standard branżowy: weryfikacja przed każdą fakturą (najbezpieczniejszy, łatwy z API), minimum przed pierwszą fakturą każdego miesiąca dla stałych klientów, lub kwartalna ponowna weryfikacja całej bazy stałych kontrahentów (przez batch endpoint API). ViesVAT dla planu Pro i wyżej udostępnia funkcję „monitoring kontrahentów” — codzienna automatyczna weryfikacja Twojej listy z webhookiem statusChanged jeśli ktoś wypadł. To eliminuje ryzyko nieświadomego wystawienia faktury 0% VAT klientowi, który stracił status.
Co zrobić, gdy ViesVAT jest niedostępny
Choć nasze SLA wynosi 99,5% (plan Pro) i 99,9% (Business), zdarzają się chwilowe niedostępności — najczęściej spowodowane awariami samego VIES KE lub krajowych rejestrów. W razie niedostępności masz trzy alternatywne ścieżki weryfikacji. Pierwsza: oficjalna wyszukiwarka KE pod ec.europa.eu/taxation_customs/vies/. Działa zawsze gdy działa VIES; ma minimalistyczny interfejs angielski, ale wynik prawny identyczny. Druga: jeśli używasz SDK ViesVAT, włącz fallback na bezpośrednie zapytanie KE — opcja `fallbackToOfficial: true` w konfiguracji klienta. SDK wykonuje wtedy zapytanie SOAP/REST bezpośrednio do KE z pominięciem naszej infrastruktury. Trzecia: jeśli i KE jest niedostępne (rzadkie, kilka razy w roku, krótkie okna serwisowe) — udokumentuj próby weryfikacji (zrzuty błędów z datą) i wystaw fakturę z odpowiednią stawką (0% VAT z dokumentacją prób, lub 23% VAT bezpiecznie). W razie kontroli polski urząd akceptuje dowody należytej próby weryfikacji jako element należytej staranności, nawet jeśli sama weryfikacja nie była technicznie możliwa.
Najczęściej zadawane pytania
Ile trwa sprawdzenie w VIES?
Standardowo 1–3 sekundy. Przy awariach rejestrów krajowych nawet 10–30 sekund.
Czy mogę sprawdzić swój własny numer VAT?
Tak — to dobra praktyka po rejestracji do VAT-UE, by upewnić się, że wpis dotarł do VIES.
Czy wynik jest oficjalny?
Tak — to oficjalna odpowiedź bazy KE. Identyfikator konsultacji to dowód weryfikacji.
Jak często należy sprawdzać stałego kontrahenta?
Najlepiej przed każdą fakturą WDT. Dla stałych kontrahentów minimum raz w kwartale.
Czy można sprawdzić bez internetu?
Nie — VIES wymaga połączenia z serwisem KE.
Co zrobić ze starymi sprawdzeniami?
Przechowuj identyfikatory konsultacji minimum 5 lat (okres przedawnienia zobowiązań podatkowych w Polsce).
Czy mogę zautomatyzować ten proces?
Tak — przez nasze [API REST](/api/) lub oficjalne SOAP KE.