Walidacja faktury KSeF – XML i schemat XSD

Faktura w KSeF to dokument w formacie XML zgodny ze schematem XSD (FA(2) lub FA(3)). Walidacja względem XSD sprawdza strukturę, typy danych i formaty. W tym artykule: gdzie odbywa się walidacja, co sprawdza schemat XSD, a co system KSeF.

Co musisz wiedzieć

Walidacja faktury w kontekście KSeF to sprawdzenie, czy dokument XML jest zgodny ze strukturą logiczną (schematem XSD) oraz z regułami biznesowymi systemu. Każda faktura przesłana do KSeF jest walidowana przez system; niezgodność ze schematem lub regułami powoduje odrzucenie z komunikatem błędu.

Walidacja względem schematu XSD odbywa się obowiązkowo po stronie KSeF. Dodatkowo zaleca się walidację lokalną przed wysłaniem – pozwala wcześniej wykryć błędy struktury, brakujące pola i nieprawidłowe formaty. Lokalna walidacja nie zastępuje walidacji KSeF, która obejmuje także m.in. duplikaty, limity rozmiarów i szyfrowanie.

Schemat XSD określa: strukturę XML, przestrzenie nazw, pola obowiązkowe i opcjonalne, typy danych (np. daty, NIP, kwoty) oraz dozwolone wartości. Nie sprawdza natomiast reguł biznesowych KSeF (np. unikalności faktury, limitów), szyfrowania sesji ani poprawności kryptograficznej podpisu.

Najczęstsze problemy i rozwiązania

Faktura odrzucona mimo lokalnej walidacji XSD. Dlaczego?

Lokalna walidacja XSD sprawdza tylko zgodność ze schematem. KSeF wykonuje dodatkowe walidacje: reguły biznesowe (np. duplikaty numerów faktur), limity rozmiaru pliku, poprawność szyfrowania sesji, uwierzytelnienie. Sprawdź komunikat błędu z API i zobacz artykuł o błędach walidacji oraz o lokalnej walidacji przed wysyłką.

Który schemat kiedy

Do 31 stycznia 2026 r. obowiązuje struktura logiczna FA(2). Od 1 lutego 2026 r. wszystkie nowe faktury muszą być zgodne ze strukturą FA(3). Faktury korygujące wystawiane od 1 lutego 2026 r. muszą być w FA(3), nawet jeśli faktura pierwotna była w FA(2) lub FA(1). Oficjalna strona Ministerstwa Finansów: https://ksef.podatki.gov.pl/informacje-ogolne-ksef-20/struktura-logiczna-fa-3/

Co sprawdza schemat XSD

Walidacja względem XSD sprawdza: poprawność struktury XML (zagnieżdżenie i kolejność elementów), przestrzenie nazw (namespace), obecność pól obowiązkowych, typy danych (np. data w formacie zgodnym z XSD, NIP, kwoty), dozwolone wartości (np. stawek VAT), ograniczenia długości i formatów. Narzędzie walidacji XSD zwraca szczegółowe komunikaty z lokalizacją błędu.

Co sprawdza KSeF oprócz XSD

KSeF po przyjęciu dokumentu wykonuje dodatkowe walidacje: reguły biznesowe (np. unikalność numeru faktury w kontekście wystawcy, spójność sum), limity rozmiaru pliku (1 MB bez załączników, 3 MB z załącznikami w FA(3)), poprawność szyfrowania sesji (API KSeF 2.0 wymaga szyfrowania AES), uwierzytelnienie i uprawnienia. Niezgodność w którymkolwiek z tych obszarów skutkuje odrzuceniem z odpowiednim kodem błędu.

Źródła schematów i dalsze kroki

Schematy XSD FA(2) i FA(3) oraz dokumentacja są dostępne na stronie Ministerstwa Finansów (ksef.podatki.gov.pl, sekcja struktura logiczna FA(3) i pliki do pobrania KSeF 2.0) oraz w repozytorium CIRFMF/ksef-docs na GitHub (dla integratorów). Aby zwalidować fakturę lokalnie przed wysyłką, skorzystaj z instrukcji w artykule KSeF API walidacja XML – lokalna walidacja przed wysyłką. Szczegóły struktury FA(3) znajdziesz w artykule KSeF API XSD FA3.

FAQ

Czy walidacja XSD jest obowiązkowa?

Tak. KSeF przyjmuje tylko faktury w formacie XML zgodnym z obowiązującym schematem (FA(2) lub FA(3)). Każda przesłana faktura jest walidowana przez system; niezgodność ze schematem powoduje odrzucenie. W praktyce warto dodatkowo walidować lokalnie przed wysłaniem.

Czy lokalna walidacja zastępuje walidację KSeF?

Nie. Lokalna walidacja XSD pozwala wcześniej wykryć błędy struktury i formatów, ale KSeF wykonuje dodatkowe sprawdzenia (reguły biznesowe, duplikaty, limity, szyfrowanie). Zawsze trzeba spełnić wymagania KSeF; lokalna walidacja tylko zmniejsza liczbę odrzuceń.

Gdzie pobrać schematy XSD?

Oficjalne źródła: strona Ministerstwa Finansów (ksef.podatki.gov.pl – struktura logiczna FA(3), pliki do pobrania KSeF 2.0) oraz repozytorium CIRFMF/ksef-docs na GitHub. Używaj aktualnej wersji schematu; FA(3) obowiązuje od 1 lutego 2026 r.

Która wersja schematu obowiązuje?

Do 31 stycznia 2026 r. – FA(2). Od 1 lutego 2026 r. – wyłącznie FA(3) dla wszystkich nowych faktur. Faktury korygujące od 1 lutego 2026 r. muszą być w FA(3), niezależnie od wersji faktury pierwotnej.

Powiązane tematy

Przydatne serwisy

Status i komunikaty

Pierwsza grupa – status systemu KSeF i komunikaty techniczne Ministerstwa Finansów, druga – narzędzia do integracji z KSeF i walidacji faktur.

Dalsze korzystanie z tej witryny oznacza akceptację Polityki prywatności . Używamy plików cookie, aby zapewnić najlepszą jakość korzystania z naszej witryny internetowej. Przeczytaj naszą Politykę plików cookie .
Akceptuj Odrzuć