- Strona główna
- Blog
- Schemat FA(3): które pola e-faktury są obowiązkowe
Schemat FA(3): które pola e-faktury są obowiązkowe
Schemat FA(3) ma kilkaset pól, ale tylko część z nich jest naprawdę obowiązkowa. W tym artykule rozkładamy strukturę na trzy poziomy wymagalności, pokazujemy cztery elementy, bez których KSeF natychmiast odrzuci fakturę, i ostrzegamy przed polami „opcjonalnymi" — takimi, których brak system przepuści, a urząd skarbowy już niekoniecznie.

KSeF odrzuca fakturę w ułamku sekundy, gdy zabraknie NIP-u sprzedawcy albo któregoś z wymaganych bloków. To akurat łatwo wychwycić — dostajesz błąd i poprawiasz. Gorsza jest druga kategoria: pola, które wyglądają na opcjonalne, a w rzeczywistości stają się obowiązkowe, gdy zachodzi konkretny warunek prawny. Tych KSeF nie sprawdza. Fakturę przyjmie, nada numer, a problem wyjdzie dopiero przy kontroli JPK_V7.
Od 1 lutego 2026 r. struktura logiczna FA(3) jest jedynym akceptowanym wzorem faktury w KSeF — zastąpiła FA(2). Zgodnie z obecną ustawą kary z art. 106ni ustawy o VAT obowiązują od 1 stycznia 2027 r. Ministerstwo Finansów zapowiedziało 16 września 2026 r. ich przesunięcie na 1 stycznia 2028 r. — to projekt ustawy, jeszcze nieuchwalony. Przesunięcie dotyczy tylko kar, a nie samego obowiązku korzystania z KSeF. To realny moment, żeby uporządkować dane, zanim cena za pomyłkę przestanie być zerowa.
Poniżej rozkładamy schemat na trzy poziomy wymagalności i pokazujemy, które pola musisz wypełnić zawsze, które tylko warunkowo, a których nie musisz w ogóle.
Trzy poziomy wymagalności — i dlaczego to nie semantyka
Schemat FA(3) to plik XSD opublikowany przez Ministerstwo Finansów w Centralnym Repozytorium Wzorów Dokumentów (przestrzeń nazw http://crd.gov.pl/wzor/2025/06/25/13775/). Każde pole ma w nim przypisany jeden z trzech poziomów:
Obligatoryjne — muszą być wypełnione w każdej fakturze. Brak = odrzucenie pliku przez KSeF.
Opcjonalne (warunkowo obowiązkowe) — wypełniasz je obowiązkowo, ale tylko gdy zachodzi określony warunek prawny. KSeF nie weryfikuje, czy warunek zaszedł — odpowiedzialność spoczywa na podatniku.
Fakultatywne — wypełnienie zależy wyłącznie od Ciebie. Pominięcie nie ma żadnych skutków.
Najwięcej kłopotów sprawia poziom drugi, bo intuicja podpowiada „pole opcjonalne = mogę pominąć". W FA(3) to fałszywe założenie. Pole stawki przy sprzedaży zwolnionej, oznaczenie split paymentu czy WDT są „opcjonalne" technicznie, ale obowiązkowe prawnie — a walidator KSeF ich nie zatrzyma.
Cztery elementy, bez których KSeF odrzuci fakturę
Schemat główny FA(3) składa się z kilku bloków nadrzędnych. Cztery z nich są wymagane bezwzględnie przy każdej fakturze:
Naglowek — dane techniczne dokumentu: kod formularza (
FA), wariant formularza (3), data wytworzenia.Podmiot1 — sprzedawca. NIP i pełna nazwa są obligatoryjne. Brak NIP-u sprzedawcy = pewne odrzucenie.
Podmiot2 — nabywca. Tu jest pierwszy haczyk (patrz niżej).
Fa — centralna część z danymi transakcji: data wystawienia (
P_1), numer faktury (P_2), kod waluty, rodzaj faktury, podsumowania VAT i wiersze.
Uproszczony szkielet pliku pokazuje, jak niewiele trzeba, by faktura była technicznie poprawna:
<Faktura>
<Naglowek>
<KodFormularza kodSystemowy="FA (3)" wersjaSchemy="1-0E">FA</KodFormularza>
<WariantFormularza>3</WariantFormularza>
<DataWytworzeniaFa>2026-06-21T10:00:00Z</DataWytworzeniaFa>
</Naglowek>
<Podmiot1>
<DaneIdentyfikacyjne>
<NIP>1234567890</NIP>
<Nazwa>ITCompass Artem ...</Nazwa>
</DaneIdentyfikacyjne>
<Adres>
<KodKraju>PL</KodKraju>
<AdresL1>ul. Przykładowa 1</AdresL1>
<AdresL2>00-001 Warszawa</AdresL2>
</Adres>
</Podmiot1>
<Podmiot2>
<DaneIdentyfikacyjne>
<NIP>9876543210</NIP>
<Nazwa>Klient Sp. z o.o.</Nazwa>
</DaneIdentyfikacyjne>
<JST>2</JST> <!-- nawet jeśli nie dotyczy: trzeba wpisać 2 -->
<GV>2</GV> <!-- nawet jeśli nie dotyczy: trzeba wpisać 2 -->
</Podmiot2>
<Fa>
<KodWaluty>PLN</KodWaluty>
<P_1>2026-06-21</P_1>
<P_2>FV/06/2026</P_2>
<P_13_1>1000.00</P_13_1>
<P_14_1>230.00</P_14_1>
<P_15>1230.00</P_15>
<Adnotacje>
<P_16>2</P_16>
<P_17>2</P_17>
<P_18>2</P_18>
<P_18A>2</P_18A>
<Zwolnienie>
<P_19N>1</P_19N>
</Zwolnienie>
<NoweSrodkiTransportu>
<P_22N>1</P_22N>
</NoweSrodkiTransportu>
<P_23>2</P_23>
<PMarzy>
<P_PMarzyN>1</P_PMarzyN>
</PMarzy>
</Adnotacje>
<RodzajFaktury>VAT</RodzajFaktury>
<FaWiersz>
<NrWierszaFa>1</NrWierszaFa>
<P_7>Usługa programistyczna</P_7>
<P_11>1000.00</P_11>
<P_12>23</P_12>
</FaWiersz>
</Fa>
</Faktura>
Szkielet jest poglądowy. Dokładne nazwy atrybutów i format pól bierz zawsze z oficjalnego pliku XSD.
Pułapka, o której łatwo zapomnieć: w Podmiot2 pola JST i GV (grupa VAT) są obowiązkowe. Nawet jeśli faktura nie dotyczy jednostki samorządu ani grupy VAT, trzeba wpisać wartość 2 („nie dotyczy").
Wiersz faktury: co naprawdę musi się w nim znaleźć
W elemencie FaWiersz schemat wymaga tylko jednego pola, a dwa kolejne wymaga ustawa:
NrWierszaFa — kolejny numer wiersza; jedyne pole wiersza, którego wymaga schemat XSD. Brak = odrzucenie pliku.
P_7 — nazwa towaru lub usługi. W schemacie opcjonalna, ale co do zasady wymagana przez ustawę; wyjątek to faktury korygujące dokumentujące rabaty zbiorcze za cały okres. Pole mieści do 512 znaków.
P_12 — stawka VAT. W schemacie opcjonalna (w niektórych przypadkach z art. 106e ustawy o VAT można ją pominąć), ale co do zasady wymagana przez ustawę, a gdy jest podana, musi mieć dozwoloną wartość, np.
23,8,5,zw,np I,0 KR,0 WDT.
Ciekawostka, która myli integratorów: FaWiersz co do zasady nie zawiera kwoty VAT per pozycja. Kwota podatku trafia do podsumowania dokumentu (pola P_13_x netto i P_14_x VAT, według stawki). Z P_15 jako łączną kwotą należności. Wyjątek to pole P_11Vat — kwota podatku w wierszu, w przypadku z art. 106e ust. 10 ustawy o VAT. Pole P_6A (data dostawy w wierszu) jest opcjonalne — wypełniasz je tylko wtedy, gdy poszczególne pozycje mają różne daty sprzedaży. Pola jak Indeks, GTIN, PKWiU, CN są fakultatywne.
Adnotacje: osiem elementów, których nie wolno pominąć
Blok Adnotacje jest obowiązkowy i schemat wymaga w nim ośmiu elementów — żadnego nie wolno opuścić. Pięć to znaczniki typu „tak/nie" (1 = tak, 2 = nie). Trzy kolejne to bloki z wyborem między „nie dotyczy" (1) a pełną wersją:
P_16 — metoda kasowa
P_17 — samofakturowanie
P_18 — odwrotne obciążenie
P_18A — mechanizm podzielonej płatności (MPP)
Zwolnienie — albo
P_19N=1(brak dostaw zwolnionych), alboP_19=1z podstawą prawną wP_19A,P_19BlubP_19CNoweSrodkiTransportu — albo
P_22N=1(brak dostaw nowych środków transportu), alboP_22=1z opisem środków transportuP_23 — procedura uproszczona w transakcjach trójstronnych
PMarzy — albo
P_PMarzyN=1(brak procedury marży), alboP_PMarzy=1z wybranym rodzajem procedury
To znaczy: nawet sprzedaż „zwykła" musi mieć pięć dwójek i trzy znaczniki „nie dotyczy" (P_19N, P_22N, P_PMarzyN, każdy z wartością 1). Pełne wersje tych bloków (P_19 dla zwolnienia wraz z podstawą prawną w P_19A/B/C, P_22 dla nowych środków transportu, P_PMarzy dla procedury marży) wypełniasz tylko wtedy, gdy zachodzi dany przypadek.
Pola „opcjonalne" — pułapka, której KSeF nie wyłapie
To najważniejsza część. Poniższe oznaczenia schemat przepuści w dowolnej postaci, ale są obowiązkowe prawnie, gdy zachodzi warunek — a KSeF przyjmie fakturę bez właściwego oznaczenia:
P_18A = 1 przy MPP. Obowiązek split paymentu dotyczy faktur, których kwota brutto przekracza 15 000 zł i które zawierają pozycje z załącznika nr 15 do ustawy o VAT (art. 108a). KSeF nie zna kwoty granicznej ani przedmiotu — nie sprawdzi tego. Brak oznaczenia naraża sprzedawcę na sankcje.
Stawka
0 WDTprzy wewnątrzwspólnotowej dostawie towarów. WDT oznacza się stawką0 WDTw poluP_12; znacznikP_22dotyczy wyłącznie nowych środków transportu, a nie każdego WDT. Stawka niezgodna z rodzajem transakcji nie blokuje pliku, ale psuje ewidencję JPK_V7.P_19 + podstawa prawna przy sprzedaży zwolnionej. Sama stawka
zwto za mało — przepis musi trafić doP_19A(ustawa o VAT),P_19B(dyrektywa) lubP_19C(inne regulacje).JST / GV w
Podmiot2— opisane wyżej, wartość2jest wymagana zawsze.
Reguła do zapamiętania: KSeF sprawdza poprawność techniczną pliku, nie poprawność merytoryczną rozliczenia. Przyjęta faktura nie znaczy „rozliczona prawidłowo".
Pola fakultatywne — czego NIE musisz wypełniać
Tu z kolei wielu wystawców przesadza w drugą stronę i wypełnia rubryki, których nikt nie wymaga — ani ustawa o VAT, ani schemat XML. Ich pominięcie nie powoduje odrzucenia:
Kody GTU (01–13) — tylko dla wskazanych grup towarów i usług, nie dla każdej faktury.
PKWiU, CN, GTIN, Indeks — pomocne przy automatyzacji, ale niewymagane.
DodatkowyOpis (do 10 000 wystąpień), Platnosc, TerminPlatnosci, NrZamowienia — fakultatywne.
StopkaFaktury (maks. 3 × 3500 znaków) — na dane rejestrowe (KRS, REGON, kapitał), godziny pracy oddziałów itp.
Wypełniaj je, gdy realnie ułatwiają pracę kontrahentowi lub Twojej księgowości — nie „na wszelki wypadek".
Szybka checklista przed wysłaniem faktury do KSeF
Podmiot1: NIP i pełna nazwa sprzedawcy są obecne.
Podmiot2: nabywca zidentyfikowany (NIP / VAT UE / brak ID dla B2C), a
JSTiGVustawione (choćby na2).Fa:
P_1,P_2, kod waluty iRodzajFakturywypełnione;P_15zgadza się z sumąP_13_x+P_14_x.FaWiersz: każdy wiersz ma
NrWierszaFa(wymaga go schemat) orazP_7iP_12(wymaga ich ustawa).Adnotacje: wszystkie osiem elementów jest obecnych — pięć znaczników (
P_16,P_17,P_18,P_18A,P_23) ma wartość1lub2, aZwolnienie,NoweSrodkiTransportuiPMarzysą wypełnione (choćby jakoP_19N,P_22N,P_PMarzyN).Warunki prawne: MPP (
P_18A=1), WDT (stawka0 WDT), zwolnienie (P_19+ podstawa) oznaczone, jeśli dotyczą.Waluta obca: kwoty netto/brutto mogą być w walucie, ale VAT (
P_14_xW) zawsze w PLN.
Podsumowanie
W FA(3) liczy się nie tyle liczba pól, ile zrozumienie trzech poziomów wymagalności. Cztery bloki obligatoryjne i kilka pól w wierszu decydują o tym, czy KSeF w ogóle przyjmie plik. Ale to pola „opcjonalne" — split payment, WDT, podstawa zwolnienia — odpowiadają za większość problemów przy kontroli, bo system ich nie pilnuje.
Biurko waliduje fakturę względem oficjalnego schematu XSD jeszcze przed wysyłką, domyślnie ustawia wymagane znaczniki (w tym JST/GV i adnotacje) i tłumaczy 28 najczęstszych kodów odrzuceń KSeF na zrozumiały komunikat (pozostałe pokazuje tekstem MF) zamiast surowego kodu błędu. Zamiast uczyć się struktury XML na pamięć, wypełniasz formularz, a poprawność pilnuje system. Przetestuj Biurko za darmo przez 14 dni i wystaw pierwszą fakturę FA(3) z kontrolą schematu przed wysyłką.
FAQ
Które pola w FA(3) są bezwzględnie obowiązkowe? Bezwzględnie wymagane są cztery bloki: Naglowek, Podmiot1 (z NIP-em i nazwą sprzedawcy), Podmiot2 oraz Fa. W wierszu schemat wymaga tylko numeru wiersza; nazwa towaru lub usługi (P_7) i stawka VAT (P_12) są wymagane przez ustawę, a nie przez schemat. Bez bloków i pól wymaganych przez schemat KSeF odrzuca plik.
Czy KSeF sprawdza, czy zastosowałem split payment? Nie. KSeF nie zna kwoty granicznej ani przedmiotu transakcji, więc nie weryfikuje obowiązku MPP. Pole P_18A schemat wymaga zawsze, ale wartość 1 (MPP) jest obowiązkowa prawnie, gdy faktura przekracza 15 000 zł brutto i zawiera pozycje z załącznika nr 15. Odpowiedzialność spoczywa na podatniku.
Czym różnią się pola opcjonalne od fakultatywnych? Opcjonalne stają się obowiązkowe, gdy zachodzi warunek prawny (np. stawka przy sprzedaży zwolnionej) — ich brak naraża na sankcje. Fakultatywne (GTU, PKWiU, stopka, opis dodatkowy) są w pełni dobrowolne i ich pominięcie nie ma skutków podatkowych.
Czy muszę wypełniać kody GTU na każdej fakturze? Nie. Kody GTU (01–13) dotyczą wyłącznie wskazanych grup towarów i usług. Dla zwykłej sprzedaży usług czy towarów spoza listy pole pozostaje puste i faktura jest w pełni poprawna.
Czy faktura w walucie obcej musi mieć kwoty w PLN? Częściowo. Kwoty netto i brutto mogą być wyrażone w walucie obcej (KodWaluty ≠ PLN), ale kwota podatku VAT w polu P_14_xW musi być zawsze przeliczona na złotówki zgodnie z art. 31a ustawy o VAT.
Tagi
Poprzedni artykuł
Numer KSeF na fakturze — co oznacza, gdzie go znaleźć i komu go podać
Następny artykuł
KSeF padł — i co teraz? Tryb offline24 wyjaśniony na spokojnie