Dane na fakturze KSeF: kompletny przewodnik po elementach e-faktury ustrukturyzowanej
E-faktura ustrukturyzowana w Krajowym Systemie e-Faktur (KSeF) zawiera dane podzielone na trzy kategorie wymagalności: obligatoryjne, opcjonalne (warunkowo obowiązkowe) i fakultatywne. Wszystkie pola muszą być zgodne ze strukturą logiczną FA(3), obowiązującą od 1 lutego 2026 r.
Schemat FA(3) obejmuje setki pól, ale obowiązkowych jest ok. 20–25 w zależności od typu transakcji. Pozostałe pola wypełnia się warunkowo (np. przy mechanizmie podzielonej płatności) lub dobrowolnie (np. numer zamówienia, link do płatności). Poniższy przewodnik opisuje każdy element - od danych stron transakcji, przez pozycje faktury, aż po stopkę i załączniki.
- Jakie dane są obowiązkowe na fakturze KSeF?
- Czym różnią się pola obligatoryjne, opcjonalne i fakultatywne?
- Kompletna tabela pól e-faktury KSeF
- Nowe pola w FA(3) vs FA(2) - co się zmieniło
- Dane specyficzne dla różnych typów faktur
- Walidacja danych - co sprawdza KSeF, a czego nie
- Najczęstsze błędy w danych na fakturze KSeF
- Porównanie: tradycyjna faktura vs e-faktura KSeF
- Często zadawane pytania o danych na fakturze KSeF (FAQ)
firmly
Dla przedsiębiorców, którzy chcą:
✅ Samodzielnie księgować
Wystaw darmową fakturę
✅ Oszczędzić czas i pieniądze
✅ Mieć dostęp z telefonu i komputera
✅ Fakturować za darmo z KSeFfillup
Dla księgowych, którzy potrzebują:
✅ 7 000+ formularzy w tym KSeF
Wystaw darmową fakturę
✅ e-Deklaracji, JPK, e-ZUS
✅ Obsługi wielu firm
✅ Narzędzia do formalnościfillup | k24
Dla biur rachunkowych, które chcą:
✅ System do współpracy z klientami
Zaproś pierwszego klienta
✅ Dać klientom darmowe faktury
✅ Obsługi KSeF bez instalacji
✅ Rozliczać KPiR lub Ryczałt
Jakie dane są obowiązkowe na fakturze KSeF?
Obowiązkowe dane na fakturze KSeF wynikają z art. 106e ust. 1 ustawy o VAT i obejmują: dane identyfikacyjne sprzedawcy i nabywcy (NIP, nazwa, adres), numer faktury, datę wystawienia, datę sprzedaży, nazwy towarów lub usług, ilości, ceny jednostkowe netto, stawki i kwoty VAT oraz kwotę należności ogółem.
Wejście w życie KSeF nie zmieniło zakresu obowiązkowych danych. Elementy wymagane na fakturze są takie same jak przed KSeF - zmieniła się forma ich przekazywania: z dowolnego układu wizualnego na ściśle określoną strukturę XML.
Dane sprzedawcy (Podmiot1)
Sprzedawca (element Podmiot1 w strukturze FA(3)) musi podać trzy obowiązkowe informacje: NIP (10 cyfr, bez kresek i spacji), pełną nazwę firmy (pole Nazwa, max 512 znaków) i adres (pole AdresL1, max 512 znaków; opcjonalnie AdresL2 dla dodatkowej linii adresu). Kod kraju (KodKraju) dla polskiego sprzedawcy to „PL".
NIP sprzedawcy jest kluczowym polem autoryzacyjnym - na jego podstawie KSeF identyfikuje podatnika i przypisuje fakturę do jego konta. NIP wpisuje się jako ciąg 10 cyfr, bez myślników, spacji i kodu kraju. Aby uzyskać dostęp do KSeF na podstawie tego NIP, spółki i inne podmioty niebędące osobami fizycznymi muszą wcześniej nadać uprawnienia do KSeF przez ZAW-FA lub zalogować się pieczęcią elektroniczną.
Dane nabywcy (Podmiot2)
Nabywca (element Podmiot2) to drugi obowiązkowy podmiot na fakturze. Dla kontrahenta krajowego obowiązkowe są: NIP (pole NIP, 10 cyfr), nazwa i adres. W przypadku dobrowolnego wystawiania faktur dla konsumentów (B2C), pole NIP pozostaje puste lub stosuje się techniczne oznaczenie BrakID. Dla kontrahenta zagranicznego zamiast NIP podaje się identyfikator zagraniczny (pole NrID) wraz z kodem kraju (KodKraju) - polski NIP nigdy nie trafia do pola NrID.
W FA(3) pola JST i GV w sekcji Podmiot2 stały się elementami stałymi struktury XML. Muszą one wystąpić w każdym pliku: z wartością „1” (gdy faktura dotyczy JST/grupy VAT) lub z wartością „2” (gdy dana sytuacja nie występuje). Przy zaznaczeniu JST lub GV konieczne jest dodanie danych w Podmiot3.
Szczegóły dotyczące faktur wystawianych dla kontrahentów zagranicznych - w tym zasady samofakturowania i wizualizacji z kodem QR - opisujemy w odrębnym poradniku.
Dane faktury - numery, daty, waluta
Każda faktura musi zawierać numer wewnętrzny podatnika (pole P_2), datę wystawienia (pole P_1, format RRRR-MM-DD) i datę dokonania lub zakończenia dostawy/usługi (pole P_6, format RRRR-MM-DD). Jeśli data sprzedaży jest taka sama jak data wystawienia, pole P_6 może powtarzać wartość P_1.
Po przesłaniu do KSeF system nadaje fakturze numer identyfikacyjny KSeF - 35-znakowy identyfikator, który funkcjonuje obok numeru nadanego przez sprzedawcę. Oba numery są ważne i działają równolegle.
Domyślną walutą jest PLN. Jeśli faktura jest wystawiona w walucie obcej, należy wypełnić pole KodWaluty (np. „EUR", „USD") oraz pole KursWaluty z kursem użytym do przeliczenia kwoty podatku VAT na złotówki.
Pozycje faktury (FaWiersze)
Każda pozycja (wiersz) faktury zawiera obowiązkowe pola: nazwa towaru lub usługi (P_7, max 512 znaków), miara (P_8A, np. „szt.", „kg", „godz."), ilość (P_8B), cena jednostkowa netto (P_9A), wartość sprzedaży netto (P_11), stawka podatku (P_12) i kwota podatku (P_11A).
Pole stawki VAT (P_12) jest polem tekstowym - dopuszczalne wartości to: „23", „22", „8", „7", „5", „4", „3", „0%", „zw", „oo", „np", a także złożone oznaczenia ze spacjami, takie jak „0 WDT", „0 EX", „np I", „np II". Wpisanie wartości liczbowej (np. „0.23") zamiast tekstowej spowoduje odrzucenie faktury.
Podsumowanie i kwoty podatku
Sekcja podsumowania zawiera kwoty netto z podziałem na stawki VAT (pola P_13_1 do P_13_11), odpowiadające im kwoty podatku (P_14_1 do P_14_5) oraz kwotę należności ogółem brutto (P_15). Choć KSeF nie dokonuje automatycznych obliczeń ani nie weryfikuje poprawności rachunkowej dokumentu, sumy muszą być spójne z wierszami. Za poprawność matematyczną odpowiada wyłącznie wystawca oraz jego program księgowy.
Czym różnią się pola obligatoryjne, opcjonalne i fakultatywne?
Struktura FA(3) dzieli pola na trzy kategorie wymagalności. Brak pola obligatoryjnego powoduje odrzucenie faktury przez KSeF. Brak pola opcjonalnego powoduje odrzucenie tylko wtedy, gdy zachodzi warunek jego wypełnienia. Pominięcie pola fakultatywnego nie ma żadnych konsekwencji technicznych.
Pola obligatoryjne - zawsze wymagane
Pola obligatoryjne muszą być wypełnione w każdej fakturze, niezależnie od typu transakcji. Bez nich KSeF odrzuci plik XML i faktura nie zostanie wystawiona. Do pól obligatoryjnych należą: NIP sprzedawcy, nazwa i adres sprzedawcy, identyfikator nabywcy (NIP lub NrID), nazwa i adres nabywcy, numer faktury (P_2), data wystawienia (P_1), data sprzedaży (P_6), pozycje z nazwą, ilością, ceną, stawką VAT i kwotą VAT, oraz podsumowanie kwot.
Pola opcjonalne (warunkowo obowiązkowe) - wymagane w określonych sytuacjach
Pola opcjonalne stają się obowiązkowe, gdy transakcja spełnia określone warunki prawne. System KSeF nie sprawdza, czy dany warunek zachodzi - odpowiedzialność spoczywa na podatniku. Pola opcjonalne dotyczą następujących sytuacji: mechanizm podzielonej płatności (adnotacja P_18A), odwrotne obciążenie (P_18), samofakturowanie (P_17), metoda kasowa (P_16), procedura marży (P_19 z odpowiednią wartością), wewnątrzwspólnotowa dostawa towarów (P_22), oznaczenia JST i GV w Podmiot2.
Pola fakultatywne - dobrowolne, ale przydatne biznesowo
Pola fakultatywne nie są wymagane ani przez przepisy VAT, ani przez schemat XML. Ich pominięcie nie powoduje odrzucenia faktury. Warto je jednak wypełniać, gdy ułatwiają pracę kontrahentowi lub automatyzację księgową. Do pól fakultatywnych należą: DodatkowyOpis (max 50 wystąpień, pary klucz-wartość), StopkaFaktury (max 3 pola × 3500 znaków), numer zamówienia, numer dokumentu WZ, kody GTU i oznaczenia procedur (TP, FP), numer rachunku bankowego (NrRB), link do płatności (LinkDoPlatnosci), identyfikator płatności KSeF (IPKSeF), kody PKWiU, CN, PKOB, GTIN oraz GLN.
Pola generowane automatycznie przez system
Niektóre pola nie są wypełniane przez użytkownika, lecz generowane przez system. DataWytworzeniaFa to techniczny timestamp w formacie RRRR-MM-DDTGG:MM:SSZ (czas UTC z literą „Z" na końcu), tworzony automatycznie w momencie wytworzenia pliku XML. Numer KSeF to 35-znakowy identyfikator nadawany przez system po pozytywnej walidacji faktury. Obie te wartości różnią się od danych wpisywanych przez podatnika (data wystawienia P_1, numer faktury P_2).
Kompletna tabela pól e-faktury KSeF
Poniższa tabela zawiera najważniejsze pola struktury FA(3) z podziałem na sekcje. Typ wymagalności: O = obligatoryjne, W = warunkowo obowiązkowe (opcjonalne), F = fakultatywne.
Domyślny limit pól znakowych (alfanumerycznych) wynosi 256 znaków, chyba że w kolumnie „Max zn." podano inną wartość. Kodowanie: UTF-8, znaki diakrytyczne i specjalne dozwolone.
|
Sekcja |
Pole XML |
Nazwa polska |
Typ |
Format |
Max zn. |
Przykład |
|
Naglowek |
KodFormularza |
Kod formularza |
O |
Stały |
- |
VAT |
|
Naglowek |
WariantFormularza |
Wariant |
O |
Liczba |
- |
3 |
|
Naglowek |
DataWytworzeniaFa |
Data wytworzenia |
O |
RRRR-MM-DDTGG:MM:SSZ |
- |
2026-05-04T09:30:47Z |
|
Naglowek |
SystemInfo |
Nazwa systemu |
O |
Tekst |
256 |
fillup v12.1 |
|
Podmiot1 |
NIP |
NIP sprzedawcy |
O |
10 cyfr |
10 |
5261234567 |
|
Podmiot1 |
Nazwa |
Nazwa sprzedawcy |
O |
Tekst |
512 |
ABC Consulting Sp. z o.o. |
|
Podmiot1 |
AdresL1 |
Adres linia 1 |
O |
Tekst |
512 |
ul. Marszałkowska 1, 00-001 Warszawa |
|
Podmiot1 |
AdresL2 |
Adres linia 2 |
F |
Tekst |
512 |
lok. 15, II piętro |
|
Podmiot1 |
KodKraju |
Kod kraju |
O |
ISO 3166-1 |
2 |
PL |
|
Podmiot1 |
GLN |
Global Location Number |
F |
Cyfry |
13 |
5900000000001 |
|
Podmiot1 |
NrEORI |
Nr EORI |
F |
Tekst |
256 |
PL526123456700000 |
|
Podmiot1 |
|
E-mail sprzedawcy |
F |
Tekst |
256 |
faktury@abc.pl |
|
Podmiot1 |
Telefon |
Telefon sprzedawcy |
F |
Tekst |
256 |
+48221234567 |
|
Podmiot2 |
NIP |
NIP nabywcy (PL) |
W |
10 cyfr |
10 |
7891234560 |
|
Podmiot2 |
NrID |
ID nabywcy (zagr.) |
W |
Tekst |
256 |
123456789 |
|
Podmiot2 |
KodKraju |
Kod kraju nabywcy |
O |
ISO 3166-1 |
2 |
PL |
|
Podmiot2 |
Nazwa |
Nazwa nabywcy |
O |
Tekst |
512 |
XYZ S.A. |
|
Podmiot2 |
AdresL1 |
Adres nabywcy linia 1 |
O |
Tekst |
512 |
ul. Nowy Świat 10, 00-400 Warszawa |
|
Podmiot2 |
AdresL2 |
Adres nabywcy linia 2 |
F |
Tekst |
512 |
Biuro 305 |
|
Podmiot2 |
JST |
Jednostka podrz. JST |
O |
1 lub 2 |
1 |
2 (nie dotyczy) |
|
Podmiot2 |
GV |
Członek grupy VAT |
O |
1 lub 2 |
1 |
2 (nie dotyczy) |
|
Podmiot2 |
IDNabywcy |
ID wewnętrzny |
F |
Tekst |
32 |
KLI-00145 |
|
Podmiot2 |
GLN |
GLN nabywcy |
F |
Cyfry |
13 |
5900000000002 |
|
Podmiot2 |
|
E-mail nabywcy |
F |
Tekst |
256 |
zamowienia@xyz.pl |
|
Podmiot2 |
Telefon |
Telefon nabywcy |
F |
Tekst |
256 |
+48221112233 |
|
Podmiot3 |
NIP / NrID |
Identyfikator |
W |
Jak wyżej |
- |
1112223344 |
|
Podmiot3 |
Nazwa |
Nazwa podmiotu trzeciego |
O* |
Tekst |
512 |
Jan Kowalski |
|
Podmiot3 |
Rola |
Rola podmiotu |
O* |
Kod |
- |
11 (pracownik) |
|
PodmUpoważ. |
NIP / NrID |
ID podmiotu upoważnionego |
O* |
Jak wyżej |
- |
9998887776 |
|
PodmUpoważ. |
Nazwa |
Nazwa podmiotu upoważ. |
O* |
Tekst |
512 |
Biuro Rachunkowe XYZ |
|
Fa |
P_1 |
Data wystawienia |
O |
RRRR-MM-DD |
10 |
2026-05-04 |
|
Fa |
P_2 |
Numer faktury |
O |
Tekst |
256 |
FV/150/05/2026 |
|
Fa |
P_6 |
Data sprzedaży |
O |
RRRR-MM-DD |
10 |
2026-05-04 |
|
Fa |
P_6_Od |
Okres rozliczeniowy od |
W |
RRRR-MM-DD |
10 |
2026-04-01 |
|
Fa |
P_6_Do |
Okres rozliczeniowy do |
W |
RRRR-MM-DD |
10 |
2026-04-30 |
|
Fa |
KodWaluty |
Waluta |
O |
ISO 4217 |
3 |
PLN |
|
Fa |
KursWaluty |
Kurs waluty |
W |
Liczba |
- |
4.2856 |
|
Fa |
RodzajFaktury |
Typ faktury |
O |
Kod |
3 |
VAT / KOR / ZAL |
|
Fa |
PrzyczynaKorekty |
Przyczyna korekty |
W |
Tekst |
256 |
Błędna cena jednostkowa |
|
Fa |
NrKSeFKorygowanej |
Nr KSeF fakt. korygowanej |
W |
Tekst |
35 |
5261234567-20260504-AB... |
|
Fa |
NrFaKorygowanej |
Nr fakt. korygowanej (poza KSeF) |
W |
Tekst |
256 |
FV/120/04/2026 |
|
Fa |
P_15 |
Kwota brutto |
O |
Liczba |
- |
12300.00 |
|
Fa |
P_13_1 |
Netto stawka 23% |
W |
Liczba |
- |
10000.00 |
|
Fa |
P_14_1 |
VAT stawka 23% |
W |
Liczba |
- |
2300.00 |
|
Fa |
P_13_2 |
Netto stawka 8% |
W |
Liczba |
- |
- |
|
Fa |
P_14_2 |
VAT stawka 8% |
W |
Liczba |
- |
- |
|
Fa |
P_13_3 |
Netto stawka 5% |
W |
Liczba |
- |
- |
|
Fa |
P_14_3 |
VAT stawka 5% |
W |
Liczba |
- |
- |
|
Fa |
P_13_6 |
Netto stawka 0% |
W |
Liczba |
- |
- |
|
Fa |
P_13_7 |
Netto „zw" |
W |
Liczba |
- |
- |
|
Fa |
P_13_10 |
Netto „np" |
W |
Liczba |
- |
- |
|
Fa |
P_14_1W |
VAT 23% w PLN (walutowa) |
W |
Liczba |
- |
2300.00 |
|
Fa |
NrKSeFZN |
Nr KSeF fakt. zaliczkowej |
W |
Tekst |
35 |
5261234567-20260301-CD... |
|
Fa |
NrFaZaliczkowej |
Nr fakt. zaliczkowej (poza KSeF) |
W |
Tekst |
256 |
FV-ZAL/30/03/2026 |
|
Fa |
ZnacznikZaplatyCzesciowej |
Zapłata częściowa |
F |
1 lub 2 |
1 |
1 (zapłacono częściowo) |
|
Adnotacje |
P_16 |
Metoda kasowa |
W |
1 lub 2 |
1 |
2 |
|
Adnotacje |
P_17 |
Samofakturowanie |
W |
1 lub 2 |
1 |
2 |
|
Adnotacje |
P_18 |
Odwrotne obciążenie |
W |
1 lub 2 |
1 |
2 |
|
Adnotacje |
P_18A |
Mech. podz. płatności |
W |
1 lub 2 |
1 |
2 |
|
Adnotacje |
P_19 |
Procedura marży |
W |
Tekst |
256 |
- |
|
Adnotacje |
P_22 |
WDT (art. 42) |
W |
1 lub 2 |
1 |
2 |
|
Adnotacje |
P_23 |
Faktura uproszczona |
W |
1 lub 2 |
1 |
2 |
|
FaWiersze |
NrWiersza |
Nr pozycji |
O |
Liczba |
- |
1 |
|
FaWiersze |
P_7 |
Nazwa towaru/usługi |
O |
Tekst |
512 |
Konsultacja prawna - prawo spółek |
|
FaWiersze |
P_8A |
Jednostka miary |
O |
Tekst |
256 |
szt. |
|
FaWiersze |
P_8B |
Ilość |
O |
Liczba |
- |
2.000 |
|
FaWiersze |
P_9A |
Cena jedn. netto |
O |
Liczba |
- |
500.00 |
|
FaWiersze |
P_10 |
Kwota rabatu/upustu |
F |
Liczba |
- |
50.00 |
|
FaWiersze |
P_11 |
Wartość netto |
O |
Liczba |
- |
1000.00 |
|
FaWiersze |
P_11A |
Kwota VAT |
O |
Liczba |
- |
230.00 |
|
FaWiersze |
P_12 |
Stawka VAT |
O |
Tekst |
256 |
23 |
|
FaWiersze |
GTIN |
Kod GTIN (EAN) |
F |
Cyfry |
20 |
5901234123457 |
|
FaWiersze |
PKWiU |
Kod PKWiU |
F |
Tekst |
256 |
69.10.11.0 |
|
FaWiersze |
CN |
Kod CN (Nomenklatura) |
F |
Tekst |
256 |
8471 30 00 |
|
FaWiersze |
PKOB |
Kod PKOB |
F |
Tekst |
256 |
1110 |
|
FaWiersze |
Indeks |
Indeks handlowy |
F |
Tekst |
256 |
SKU-00145-A |
|
FaWiersze |
UU_ID |
Identyfikator unikalny |
F |
Tekst |
256 |
550e8400-e29b-41d4 |
|
Transport |
DataGodzRozpTransportu |
Start transportu |
F |
RRRR-MM-DDTGG:MM:SSZ |
- |
2026-05-04T06:00:00Z |
|
Transport |
DataGodzZakTransportu |
Koniec transportu |
F |
RRRR-MM-DDTGG:MM:SSZ |
- |
2026-05-04T14:00:00Z |
|
Transport |
OpisInnegoTransportu |
Opis innego transportu |
F |
Tekst |
256 |
Kurier własny |
|
Transport |
OpisInnegoLadunku |
Opis innego ładunku |
F |
Tekst |
256 |
Paleta EUR 120×80 |
|
Platnosc |
TerminPlatnosci |
Termin płatności |
F |
RRRR-MM-DD |
10 |
2026-05-18 |
|
Platnosc |
OpisTerminu |
Opis terminu |
F |
Tekst |
- |
14 dni od wystawienia |
|
Platnosc |
FormaPlatnosci |
Forma płatności |
F |
Kod |
- |
6 (przelew) |
|
Platnosc |
NrRB |
Nr rachunku bankowego |
F |
Tekst |
34 |
PL61109010140000071219812874 |
|
Platnosc |
LinkDoPlatnosci |
Link do płatności |
F |
URL |
512 |
https://pay.example.com/inv/150 |
|
Platnosc |
IPKSeF |
ID płatności KSeF |
F |
Tekst |
13 |
1234567890123 |
|
DodatkowyOpis |
Klucz |
Klucz opisu |
F |
Tekst |
256 |
Nr zamówienia |
|
DodatkowyOpis |
Wartosc |
Wartość opisu |
F |
Tekst |
256 |
ZAM/2026/05/001 |
|
DodatkowyOpis |
NumerWiersza |
Nr wiersza (odwołanie) |
F |
Liczba |
- |
1 |
|
Stopka |
StopkaFaktury |
Treść stopki |
F |
Tekst |
3500 |
KRS: 0000123456, REGON: 123456789 |
|
Zalacznik |
BlokDanych |
Blok danych załącznika |
F |
Struktura |
- |
(tabele, specyfikacje) |
* O* = obligatoryjne w ramach elementu nadrzędnego, jeśli ten element jest wypełniony.
Rozliczaj małą firmę w firmly – od faktury KSeF po automatyczne podatki i ZUS
Firmly prowadzi Cię przez cały proces: od szybkiego wystawienia darmowej e-faktury VAT (zgodnej z KSeF), aż po automatyczne wyliczenie podatków i składek ZUS. Niezależnie czy prowadzisz KPiR, czy Ryczałt, intuicyjna aplikacja zmienia wystawione dokumenty w gotowe rozliczenie. Obsługujemy wszystkie rodzaje faktur, przygotowane na obowiązkowy Krajowy System e-Faktur. Aplikacja mobilna firmly daje Ci dostęp do pełnej funkcjonalności z każdego miejsca.
Nowe pola w FA(3) vs FA(2) - co się zmieniło
Struktura FA(3) zastąpiła FA(2) od 1 lutego 2026 r. Nowy wzór uwzględnia propozycje zgłoszone przez przedsiębiorców, dostawców oprogramowania i branżę księgową podczas konsultacji KSeF przeprowadzonych w 2024 r. Wszystkie faktury ustrukturyzowane - w tym korygujące do faktur wystawionych w FA(2) - muszą od tej daty korzystać z nowego schematu. Kluczowe zmiany obejmują:
- Rozszerzenia pól: Limit nazwy towaru/usługi (P_7) zwiększony z 256 do 512 znaków. Pole numeru rachunku bankowego (NrRB) przyjmuje do 34 znaków i dopuszcza znaki specjalne. Pola Nazwa, AdresL1 i AdresL2 również rozszerzone do 512 znaków.
- Nowe pola płatności: LinkDoPlatnosci (URL do bramki płatniczej, max 512 znaków), IPKSeF (identyfikator płatności KSeF generowany przez operatora płatniczego, max 13 znaków), FormaPlatnosci odrębnie dla każdej płatności częściowej (ZaplataCzesciowa).
- Nowy typ podmiotu: Rola 11 „Pracownik" w Podmiot3 - umożliwia oznaczenie pracownika dokonującego zakupu w imieniu pracodawcy, co upraszcza rozliczanie wydatków delegacyjnych.
- Pola JST i GV: Nowe obowiązkowe pola w Podmiot2 oznaczające, czy faktura dotyczy jednostki podrzędnej JST lub członka grupy VAT.
- Załączniki: Nowy element Zalacznik - ustrukturyzowane dane (tabele z max 20 kolumnami, bloki danych do 1000 per faktura) stanowiące integralną część pliku XML. Wymagają zgłoszenia do KAS i działają wyłącznie w trybie wsadowym.
- Termin płatności: Nowa konstrukcja - można podać datę, opis słowny (np. „14 dni od dostawy") lub kombinację ilości jednostek czasu + rodzaju jednostki + zdarzenia początkowego.
- Pola transportowe: Fakultatywne pola DataGodzRozpTransportu i DataGodzZakTransportu (timestamp rozpoczęcia i zakończenia transportu) oraz OpisInnegoTransportu i OpisInnegoLadunku - przydatne w branżach logistycznych i spedycyjnych.
Dane specyficzne dla różnych typów faktur
Typ faktury określa pole RodzajFaktury w elemencie Fa. Każdy typ wymaga innego zestawu pól.
Faktura sprzedaży (standard)
RodzajFaktury = VAT. Pola bazowe: pełne dane Podmiot1 i Podmiot2, daty P_1 i P_6, wiersze w FaWiersze z P_7 do P_12, podsumowanie P_13_x/P_14_x/P_15. To najczęściej wystawiany typ faktury.
Faktura korygująca - dodatkowe elementy
RodzajFaktury = KOR. Obowiązkowe dodatkowe pole: przyczyna korekty (PrzyczynaKorekty), dane faktury korygowanej (NrFaKorygowanej lub NrKSeFKorygowanej). Wiersze wykazuje się jako różnice lub stan przed i po korekcie z odrębną numeracją. Od 1 lutego 2026 r. faktury korygujące muszą być w FA(3), nawet gdy faktura pierwotna była w FA(2).
Faktura zaliczkowa - sekcja Zamówienie zamiast FaWiersze
RodzajFaktury = ZAL. Zamiast elementu FaWiersze wypełnia się element Zamowienie (ZamowienieWiersz) z danymi o zamówionym towarze lub usłudze. Faktura rozliczeniowa (końcowa) odwołuje się do faktur zaliczkowych przez pola NrKSeFZN (numer KSeF faktury zaliczkowej) lub NrFaZaliczkowej.
Faktura VAT marża
Adnotacja P_19 z odpowiednią wartością (np. „procedura marży - towary używane"). W procedurze marży nie wypełnia się sekwencji stawek P_13_x/P_14_x w standardowy sposób - stosuje się odrębne pola dla marży.
Faktura dla kontrahenta zagranicznego
Nabywca identyfikowany przez NrID (nie NIP) z KodKraju ≠ PL. Przy WDT: adnotacja P_22 = „1". Przy eksporcie: stawka P_12 = „0 EX". Fakturę wystawia się w KSeF, ale nabywca nie ma dostępu do systemu - trzeba mu dostarczyć wizualizację lub plik w uzgodniony sposób.
Faktura dla konsumenta (B2C) - uproszczenia
Wystawianie faktur dla osób fizycznych nieprowadzących działalności w KSeF jest dobrowolne (nie objęte obowiązkiem). Jeśli podatnik zdecyduje się je wystawiać w KSeF, adres nabywcy jest opcjonalny na fakturach uproszczonych. Zamiast NIP można użyć pola IDNabywcy lub pozostawić puste (konsument nie musi być identyfikowany podatkowo).
Walidacja danych - co sprawdza KSeF, a czego nie
Walidacja techniczna (schemat XML)
KSeF sprawdza każdą fakturę pod kątem zgodności ze strukturą logiczną FA(3). Walidacja obejmuje: obecność wszystkich pól obligatoryjnych, poprawność formatów danych (daty w RRRR-MM-DD, NIP jako 10 cyfr, kody walut wg ISO 4217), zgodność typów danych (tekst w polach tekstowych, liczby w polach liczbowych) i dopuszczalność wartości (np. stawki VAT z zamkniętej listy). Jeśli plik XML nie przejdzie walidacji, system zwraca komunikat błędu - faktura nie zostaje wystawiona i nie otrzymuje numeru KSeF.
Czego KSeF NIE sprawdza
KSeF nie dokonuje obliczeń matematycznych i nie weryfikuje poprawności rachunkowej faktury. System nie odrzuci faktury z błędnie obliczoną kwotą VAT, nieprawidłowym sumowaniem wierszy ani nielogicznym kursem waluty. KSeF nie sprawdza też sumy kontrolnej NIP, nie weryfikuje, czy podany NIP istnieje w rejestrze, ani czy dane adresowe są prawdziwe. Walidacja biznesowa (czy transakcja ma sens, czy stawka VAT jest prawidłowa dla danego towaru) leży w gestii podatnika i jego programu księgowego.
Walidacja na poziomie programu księgowego
Profesjonalne programy do fakturowania (w tym fillup, firmly) przeprowadzają rozszerzoną walidację przed wysłaniem faktury do KSeF: sprawdzają sumę kontrolną NIP, weryfikują zgodność rachunkową (netto + VAT = brutto), walidują format i kompletność danych, a także sprawdzają logikę biznesową (np. czy data sprzedaży nie jest późniejsza niż data wystawienia). Dzięki temu większość błędów jest wychwytywana zanim faktura trafi do systemu ministerialnego. Warunkiem wysłania faktury jest wcześniejsze uwierzytelnienie w systemie KSeF - przez podpis kwalifikowany, Profil Zaufany, pieczęć elektroniczną lub certyfikat KSeF.
Najczęstsze błędy w danych na fakturze KSeF
Błędy w formatach
- NIP z kreskami lub spacjami
❌ Źle: `123-456-78-90` lub `123 456 78 90`
✅ Dobrze: `1234567890`
KSeF wymaga podania NIP jako ciągłego ciągu 10 cyfr. Dobrą praktyką jest, aby system finansowo-księgowy automatycznie czyścił numer z kresek i spacji jeszcze przed wysyłką dokumentu do systemu ministerialnego. - Błędny format daty
❌ Źle: `04.05.2026` lub `04/05/2026` lub `2026.05.04`
✅ Dobrze: `2026-05-04`
Obowiązuje format ISO 8601 (RRRR-MM-DD). Jedyny dopuszczalny separator to myślnik. - Stawka VAT jako liczba zamiast tekstu
❌ Źle: `0.23` lub `23%`
✅ Dobrze: `23`
Pole P_12 jest tekstowe. Dopuszczalne wartości to: „23", „8", „5", „0%", „zw", „oo", „np", „0 WDT", „0 EX" itp. - Timestamp bez „Z" na końcu
❌ Źle: `2026-05-04T09:30:47`
✅ Dobrze: `2026-05-04T09:30:47Z`
Pole DataWytworzeniaFa wymaga czasu UTC z literą „Z" (ZULU).
Błędy w identyfikacji stron - Polski NIP nabywcy w polu NrID
❌ Źle: Podmiot2 → NrID: `7891234560`
✅ Dobrze: Podmiot2 → NIP: `7891234560`
Pole NIP jest zarezerwowane dla polskich identyfikatorów. Pole NrID - dla zagranicznych. Wpisanie polskiego NIP w NrID powoduje, że faktura nie trafi do nabywcy w KSeF. - Kod kraju w polu NIP zamiast osobnego pola
❌ Źle: NrID: `DE123456789` z KodKraju: pustym
✅ Dobrze: NrID: `123456789`, KodKraju: `DE`
Kod kraju należy wyodrębnić do pola KodKraju - nie wpisywać go jako prefiks identyfikatora. - Brak pola JST lub GV w Podmiot2
❌ Źle: Podmiot2 bez pól JST i GV
✅ Dobrze: JST: `2`, GV: `2` (wartość „2" = nie dotyczy)
W FA(3) pola JST i GV są obowiązkowe - nawet jeśli faktura nie dotyczy JST ani grupy VAT, trzeba wpisać wartość „2".
Błędy w warunkowo obowiązkowych polach - Brak adnotacji MPP przy obowiązku split payment
❌ Źle: Faktura powyżej 15 000 zł brutto bez P_18A = „1"
✅ Dobrze: Adnotacje/P_18A: `1`
KSeF nie sprawdzi tego - system nie zna kwoty granicznej ani przedmiotu transakcji. Ale brak adnotacji naraża sprzedawcę na sankcje podatkowe. - Brak oznaczenia WDT przy dostawie wewnątrzwspólnotowej
❌ Źle: Faktura WDT ze stawką „0 WDT" ale bez P_22 = „1"
✅ Dobrze: P_12: `0 WDT`, Adnotacje/P_22: `1`
Stawka i adnotacja muszą być spójne - niespójność nie blokuje faktury w KSeF, ale powoduje problemy w ewidencji JPK_VAT.
Błędy w wierszach - Zaokrąglenia groszowe
❌ Źle: 3 × 33.33 zł netto = 100.00 zł (zamiast 99.99 zł)
✅ Dobrze: Suma wierszy netto = kwota P_13_x (spójne zaokrąglenie)
KSeF nie sprawdzi rachunków, ale niespójność między wierszami a podsumowaniem powoduje problemy przy księgowaniu po stronie nabywcy. - Nazwa towaru za długa
❌ Źle: Pole P_7 z opisem dłuższym niż 512 znaków
✅ Dobrze: Skrócić do 512 znaków, resztę przenieść do DodatkowyOpis
FA(3) rozszerzyła limit z 256 do 512 znaków, ale nadal trzeba go przestrzegać. Nadmiarowe informacje można umieścić w polach Indeks, PKWiU lub DodatkowyOpis. - Brak jednostki miary
❌ Źle: P_8A puste przy P_8B = 2
✅ Dobrze: P_8A: `szt.`, P_8B: `2.000`
Pole jednostki miary (P_8A) jest obligatoryjne, gdy podana jest ilość (P_8B). - Brak pola RodzajFaktury lub błędna wartość
❌ Źle: RodzajFaktury puste lub RodzajFaktury: `FAKTURA`
✅ Dobrze: RodzajFaktury: `VAT` (zwykła), `KOR` (korygująca), `ZAL` (zaliczkowa)
Pole RodzajFaktury jest obligatoryjne i przyjmuje wyłącznie wartości zdefiniowane w schemacie. Wpisanie dowolnego tekstu (np. „FAKTURA", „SPRZEDAŻ") spowoduje odrzucenie. - Brak przyczyny korekty na fakturze korygującej
❌ Źle: Faktura KOR bez pola PrzyczynaKorekty
✅ Dobrze: PrzyczynaKorekty: `Błędna cena jednostkowa netto w poz. 3`
Pole PrzyczynaKorekty jest warunkowo obowiązkowe - wymagane na każdej fakturze z RodzajFaktury = KOR. Bez niego KSeF odrzuci dokument. - Wysłanie faktury w strukturze FA(2) po 1 lutego 2026 r.
❌ Źle: Plik XML zgodny z FA(2) wysłany po 01.02.2026
✅ Dobrze: Plik XML zgodny z FA(3)
Od 1 lutego 2026 r. KSeF akceptuje wyłącznie strukturę FA(3). Dotyczy to również faktur korygujących do dokumentów pierwotnie wystawionych w FA(2) - korekta musi być w FA(3).
Porównanie: tradycyjna faktura vs e-faktura KSeF
Tradycyjna faktura to dokument wizualny - PDF, papier, plik Worda. E-faktura ustrukturyzowana to zbiór uporządkowanych danych w formacie XML. Poniżej kluczowe różnice:
|
Aspekt |
Tradycyjna faktura |
E-faktura KSeF |
|
Format |
Dowolny (PDF, papier, Word) |
XML zgodny z FA(3) |
|
Wygląd |
Logo, kolory, układ dowolny |
Brak elementów wizualnych - plik danych |
|
Dostarczenie |
E-mail, poczta, osobiście |
Przez system KSeF (nabywca pobiera) |
|
Numer |
Jeden numer wewnętrzny |
Dwa: numer sprzedawcy (P_2) + numer KSeF |
|
Data wystawienia |
Data na dokumencie |
Data przesłania do KSeF (formalnie) |
|
Załączniki |
Dowolne pliki |
Tylko ustrukturyzowane dane XML (po zgłoszeniu do KAS) |
|
Archiwizacja |
Obowiązek podatnika (5-10 lat) |
KSeF przechowuje 10 lat |
|
Korekta |
Faktura korygująca lub nota |
Tylko faktura korygująca w KSeF (brak not) |
|
Walidacja |
Brak automatycznej |
KSeF sprawdza zgodność z FA(3) |
Zakres obowiązkowych danych (art. 106e ustawy o VAT) pozostaje taki sam - KSeF nie dodał nowych obowiązkowych elementów. Zmieniła się natomiast forma: zamiast dowolnego dokumentu, dane muszą trafić do ściśle określonych pól schematu XML.
Jeśli chcesz wystawiać e-faktury z automatyczną walidacją zgodności z FA(3), wypełnij i wyślij e-fakturę online przez platformę fillup - system sprawdzi kompletność pól przed wysyłką do KSeF.
Często zadawane pytania o danych na fakturze KSeF (FAQ)
Czy KSeF zmienił zakres obowiązkowych danych na fakturze?
Nie. Elementy obowiązkowe wynikają z art. 106e ustawy o VAT i nie zmieniły się po wdrożeniu KSeF. Struktura FA(3) dodaje nowe pola fakultatywne (np. LinkDoPlatnosci, IPKSeF, załączniki), ale żadne z nich nie jest obowiązkowe.
Ile pól ma struktura FA(3)?
Setki, ale większość jest fakultatywna. Obowiązkowych pól jest ok. 20–25 w zależności od typu transakcji. Kompletną listę z podziałem na kategorie zawiera tabela pól powyżej.
Czy opis towaru/usługi może mieć max 512 znaków?
Tak. FA(3) rozszerzyła limit pola P_7 z 256 (w FA(2)) do 512 znaków. Jeśli to za mało, dodatkowe informacje można umieścić w polach Indeks, PKWiU lub DodatkowyOpis.
Czy można wystawić fakturę KSeF z datą wsteczną?
Tak, pole P_1 (data wystawienia) może wskazywać datę wcześniejszą niż data przesłania do KSeF. Formalnie za datę wystawienia faktury ustrukturyzowanej uznaje się datę przesłania do KSeF (art. 106na ust. 1 ustawy o VAT), co może powodować rozbieżność wymagającą spójnego ujęcia w ewidencji.
Czy numer rachunku bankowego jest obowiązkowy?
Nie, pole NrRB jest fakultatywne. Podanie numeru rachunku jest dobrą praktyką ułatwiającą kontrahentowi dokonanie płatności. W FA(3) numer może mieć do 34 znaków i dopuszcza znaki specjalne.
Co to jest pole DodatkowyOpis i ile razy można go użyć?
Fakultatywne pole na dodatkowe informacje w formie par klucz-wartość (np. Klucz: „Nr zamówienia", Wartość: „ZAM/2026/001"). Może wystąpić max 50 razy na jednej fakturze. Każde wystąpienie można powiązać z konkretnym wierszem faktury przez pole NumerWiersza.
Czy można dodać logo firmy do e-faktury KSeF?
Nie. E-faktura to plik XML bez elementów graficznych. Logo, kolory i układ mogą pojawić się wyłącznie na wizualizacji faktury (np. PDF generowany przez program księgowy), ale nie są częścią danych przesyłanych do KSeF.
Jak podać termin płatności w FA(3)?
Trzy sposoby: konkretna data (pole TerminPlatnosci, format RRRR-MM-DD), opis słowny (pole OpisTerminu, np. „14 dni od dostawy") lub nowa konstrukcja FA(3) - ilość jednostek czasu + rodzaj jednostki + zdarzenie początkowe. Dodatkowo można podać link do płatności (LinkDoPlatnosci).
Jak oznaczyć fakturę dla grupy VAT lub jednostki podrzędnej JST?
W Podmiot2 wypełnij obowiązkowe pole GV (wartość „1" dla grupy VAT) lub JST (wartość „1" dla JST). Następnie w Podmiot3 podaj dane członka grupy lub jednostki podrzędnej - NIP lub IDWew oraz odpowiednią rolę. To nowe pola wprowadzone w FA(3).
Co się stanie, jeśli KSeF odrzuci fakturę?
System zwróci komunikat błędu z informacją, którego pola brakuje lub jaki format jest nieprawidłowy. Faktura nie zostanie wystawiona - nie otrzyma numeru KSeF i nie będzie widoczna dla nabywcy. Należy poprawić dane i wysłać ponownie.
Czy data wystawienia (P_1) to to samo co data wytworzenia (DataWytworzeniaFa)?
Nie. P_1 to data wskazana przez wystawcę - data, którą podatnik uznaje za datę wystawienia faktury. DataWytworzeniaFa to techniczny timestamp generowany automatycznie przez program w momencie wytworzenia pliku XML. Mogą się różnić, np. gdy faktura jest przygotowana wcześniej i wysłana później.
Jak wstawić kurs waluty na fakturze walutowej?
Pole KursWaluty (lub KursWalutyZ dla zaliczek). Kwota VAT w polu P_14_xW musi być przeliczona na PLN zgodnie z art. 106e ust. 11 ustawy o VAT. Kurs podaje się jako liczbę dziesiętną zgodną z kursem opublikowanym przez NBP.
Ile pozycji (wierszy) może mieć jedna e-faktura KSeF?
Schemat FA(3) nie narzuca sztywnego limitu liczby wierszy. Ograniczeniem jest rozmiar pliku XML: max 1 MB bez załącznika lub 3 MB z załącznikiem. W praktyce standardowa faktura mieści tysiące pozycji. Dla faktur z wyjątkowo dużą liczbą pozycji i złożonymi danymi przewidziano mechanizm załączników.
Czym jest identyfikator płatności KSeF (IPKSeF)?
Nowe pole fakultatywne w FA(3), generowane przez operatora płatniczego. Umożliwia automatyczne powiązanie przelewu bankowego z konkretną fakturą w KSeF. Pole przyjmuje max 13 znaków. Korzystanie z IPKSeF wymaga integracji z operatorem płatniczym obsługującym ten standard.
Czy mogę wystawić fakturę z załącznikiem w KSeF?
Tak, po wcześniejszym zgłoszeniu do Szefa KAS przez e-Urząd Skarbowy. Załącznik jest częścią pliku XML (nie osobnym plikiem). Maksymalny rozmiar faktury z załącznikiem to 3 MB. Wysyłka wyłącznie w trybie wsadowym i tylko przez komercyjne oprogramowanie - bezpłatne aplikacje MF nie obsługują załączników.
Ile informacji mieści się w stopce faktury KSeF?
Max 3 pola StopkaFaktury × 3500 znaków = 10 500 znaków łącznie. Stopka jest fakultatywna - można w niej umieścić dane rejestrowe (KRS, REGON, kapitał zakładowy), informacje kontaktowe, godziny pracy oddziałów czy inne dane, których nie ma w standardowych polach faktury.
Jak oznaczyć fakturę dla mechanizmu podzielonej płatności (MPP)?
Pole Adnotacje/P_18A z wartością „1". Jest to pole warunkowo obowiązkowe - wymagane, gdy transakcja podlega obowiązkowi split payment (kwota brutto > 15 000 zł i przedmiot transakcji z załącznika nr 15 do ustawy o VAT). KSeF nie weryfikuje, czy MPP jest wymagane - odpowiedzialność spoczywa na podatniku.
Czy w KSeF można wystawić fakturę w walucie obcej bez przeliczenia na PLN?
Częściowo. Kwoty netto i brutto mogą być wyrażone w walucie obcej (pole KodWaluty ≠ PLN), ale kwota podatku VAT w polu P_14_xW musi być zawsze przeliczona na złotówki (art. 106e ust. 11 ustawy o VAT). Kurs waluty podaje się w polu KursWaluty. Szczegółowe zasady wystawiania i dostarczania e-faktur opisuje poradnik o obiegu e-faktury ustrukturyzowanej w KSeF.
Podstawa prawna: Ustawa z dnia 11 marca 2004 r. o podatku od towarów i usług (t.j. Dz.U. 2025, poz. 775 ze zm.), art. 106a–106q. Struktura logiczna FA(3) opublikowana przez Ministerstwo Finansów (ksef.podatki.gov.pl), obowiązująca od 1 lutego 2026 r. Broszura informacyjna dotycząca struktury logicznej FA(3) - wersja z 4 marca 2026 r.

