W skrócie
Numer KSeF to 35-znakowy identyfikator nadawany automatycznie po przyjęciu faktury do systemu w formacie NIP(10)-RRRRMMDD(8)-6-6-2 (np. 9999999999-20260215-ABC123-DEF456-X7). Nie zastępuje numeru własnego P_2 — działają równolegle. Dla rozliczenia VAT liczy się data z P_1 (data wystawienia), a nie data systemowa z numeru KSeF. W JPK_V7(3) każda pozycja musi mieć albo NrKSeF, albo jeden ze znaczników OFF/BFK/DI. Archiwizacja w KSeF przez 10 lat (art. 112aa ustawy VAT).
Numer KSeF to 35-znakowy identyfikator nadawany automatycznie przez Krajowy System e-Faktur w chwili przyjęcia faktury. Nie zastępuje numeru własnego z pola P_2 — funkcjonują równolegle. W tym artykule pokazujemy dokładną strukturę numeru, jak go zweryfikować publicznie, gdzie trafia w JPK_V7(3) i czym się różni od daty wystawienia dla VAT.
Struktura numeru KSeF (35 znaków)
Numer KSeF ma ściśle określony format: 35 znaków podzielonych na pięć segmentów rozdzielonych myślnikami. Schemat wygląda następująco:
NIP(10) - RRRRMMDD(8) - FFFFFF(6) - FFFFFF(6) - FF(2)
Przykładowy numer:
9999999999-20260215-ABC123-DEF456-X7
Segment 1: NIP wystawcy (10 cyfr)
Polski NIP podmiotu, który wystawił fakturę. W przykładzie: 9999999999. System KSeF przyjmuje faktury wyłącznie od podatników posiadających polski NIP — podmioty zagraniczne nieposiadające polskiego NIP w ogóle nie wystawiają faktur w KSeF i nie są objęte obowiązkiem e-fakturowania.
Segment 2: Data nadania numeru (8 cyfr, RRRRMMDD)
Data w formacie rok-miesiąc-dzień, np. 20260215 = 15 lutego 2026. To data systemowa KSeF — moment, w którym system przyjął dokument i nadał mu numer. Nie jest to automatycznie data wystawienia dla celów VAT (zob. sekcja poniżej).
Segmenty 3 i 4: Dwa bloki techniczne po 6 znaków
Dwa niezależne ciągi alfanumeryczne po 6 znaków każdy, generowane przez system. W przykładzie: ABC123 i DEF456. Pełnią rolę gwarantującą unikalność numeru w całym systemie, nawet gdy ten sam wystawca wystawia wiele faktur w tym samym dniu. Uwaga: to są dwa osobne bloki (rozdzielone myślnikiem), nie jeden 12-znakowy ciąg.
Segment 5: Suma kontrolna (2 znaki)
Dwa znaki kontrolne liczone automatycznie przez system. W przykładzie: X7. Pozwalają wykryć literówkę przy ręcznym przepisywaniu numeru, zanim jeszcze wyślesz zapytanie do API KSeF.
Numer KSeF a numer własny faktury (P_2)
Pole P_2 w schemacie FA(3) to numer własny faktury — ten, który nadaje wystawca zgodnie z własną numeracją (np. FV/2026/00789). Numer KSeF to osobny identyfikator nadawany przez system. Oba istnieją równolegle i służą różnym celom.
| Cecha | Numer własny (P_2) | Numer KSeF |
|---|---|---|
| Kto nadaje | Wystawca | System KSeF automatycznie |
| Moment nadania | Przy wystawianiu faktury | Po przyjęciu pliku XML przez KSeF |
| Format | Dowolny, ciągła numeracja wystawcy | Ściśle 35 znaków, schemat NIP-data-6-6-2 |
| Obecność w XML faktury | Tak, pole Fa/P_2 | Nie — zwracany osobno jako metadana po przyjęciu |
| Zastosowanie | Komunikacja handlowa, numeracja wewnętrzna | Identyfikacja w KSeF, JPK, korektach, weryfikacja publiczna |
W praktyce numer własny P_2 widzi klient na wizualizacji faktury. Numer KSeF pojawia się obok — jako dodatkowy, unikalny identyfikator pozwalający pobrać dokument z systemu lub go zweryfikować.
Data systemowa vs data wystawienia (P_1) — krytyczne rozróżnienie
To jest najczęstsze źródło pomyłek księgowych. Data w numerze KSeF (segment RRRRMMDD) to data systemowa — moment, w którym KSeF przyjął plik. To nie zawsze jest data wystawienia dla celów VAT.
Tryb online
Gdy wystawiasz fakturę online i KSeF przyjmuje ją natychmiast, data systemowa pokrywa się z datą wystawienia. W takim przypadku numer KSeF faktycznie pokazuje datę wystawienia dla VAT.
Tryby offline24 i awaryjny
W trybie offline24 i awaryjnym sytuacja wygląda inaczej. Faktura powstaje lokalnie (z datą w polu P_1), a do KSeF trafia później — np. następnego dnia roboczego. Wtedy:
- Data wystawienia dla VAT = data z pola
P_1(data wskazana przez podatnika na fakturze) - Data systemowa KSeF = data przesłania i przyjęcia przez system (widoczna w numerze KSeF)
Te dwie daty mogą się różnić. Dla obowiązku podatkowego VAT liczy się P_1, nie data z numeru KSeF. Oznacza to, że faktura z numerem zawierającym 20260303 może dotyczyć sprzedaży wystawionej 28 lutego 2026 i rozliczanej w lutym, jeśli P_1 wskazuje 28.02.2026.
Numer KSeF w fakturze korygującej
Faktura korygująca w schemacie FA(3) musi wskazywać dokument pierwotny. Robi to przez pole Fa/DaneFaKorygowanej/NrKSeFFaKorygowanej — tam wpisujesz numer KSeF faktury pierwotnej.
Schemat FA(3) w bloku DaneFaKorygowanej rozróżnia:
NrFaKorygowanej— numer własny P_2 faktury pierwotnej. Pole jest wymagane w każdej fakturze korygującej (niezależnie od tego, czy pierwotna faktura ma numer KSeF).- Flaga
NrKSeF= 1 — zaznaczasz, gdy faktura pierwotna ma nadany numer KSeF; wtedy dodatkowo podajesz ten numer w poluNrKSeFFaKorygowanej. - Flaga
NrKSeFN= 1 — zaznaczasz, gdy faktura pierwotna nie ma numeru KSeF (np. została wystawiona w trybie offline24 i jeszcze nie trafiła do systemu albo pochodzi sprzed obowiązku KSeF).
Flagi NrKSeF i NrKSeFN są alternatywą — zaznaczasz dokładnie jedną. Numer własny NrFaKorygowanej (P_2 pierwotnej) podajesz zawsze. Nieprawidłowe połączenie flag powoduje odrzucenie faktury przez walidator.
Dzięki temu powiązaniu system automatycznie łączy korektę z dokumentem pierwotnym i prezentuje je razem — nabywca przeglądając fakturę pierwotną widzi informację o korekcie.
Weryfikacja numeru KSeF — publiczny endpoint
Ministerstwo Finansów udostępnia publiczną weryfikację faktury dostępną bez logowania. Używa się jej np. do potwierdzenia, że faktura rzeczywiście istnieje w KSeF przed jej zapłatą. Do weryfikacji anonimowej potrzebny jest zestaw danych identyfikujących fakturę:
- Numer KSeF (35 znaków)
- Numer własny faktury (pole
P_2) - NIP sprzedawcy
- NIP nabywcy lub informacja o jego rodzaju (np. „brak” dla faktury konsumenckiej)
- Kwota należności ogółem (brutto, pole
P_15)
Zgodność wszystkich pól jednocześnie zapobiega skanowaniu systemu — sam numer KSeF nie wystarczy. Publiczna weryfikacja działa też przez kod QR obecny na wizualizacji faktury — skanowanie automatycznie przekazuje wymagane parametry.
Po pozytywnej weryfikacji można pobrać pełny plik XML faktury bez konieczności logowania do KSeF. To ważne dla nabywców konsumenckich, księgowych zewnętrznych oraz w sytuacjach kontroli kontrahenta.
Numer KSeF w JPK_V7(3)
Od 1 lutego 2026 obowiązuje nowa wersja JPK_V7(3), która wprowadza pole NrKSeF w ewidencji sprzedaży i zakupu. Dla każdego dokumentu trzeba podać albo numer KSeF, albo jeden z trzech znaczników: OFF, BFK, DI.
| Oznaczenie | Kiedy się używa |
|---|---|
NrKSeF | Faktura ma nadany numer KSeF w momencie składania JPK |
OFF | Faktura wystawiona w trybie offline24 lub awaryjnym, nie ma jeszcze numeru KSeF w momencie raportowania |
BFK | Brak Faktury w KSeF — dokument zgodnie z prawem wystawiony poza KSeF (np. przez podmiot zwolniony, który nie wybrał dobrowolnego KSeF) |
DI | Dokument Inny — np. dokument niebędący fakturą w sensie KSeF, albo faktura offline bez numeru KSeF w momencie składania JPK |
Jeśli faktura offline otrzyma numer KSeF przed terminem JPK, wpisuje się ten numer (a nie OFF/DI). Dlatego tryb offline wymaga dyscypliny w przesyłaniu plików do KSeF — opóźnienie przesunie fakturę do innego oznaczenia.
Najczęściej zadawane pytania
Czym różni się numer KSeF od numeru własnego faktury (P_2)?
Numer własny P_2 nadaje wystawca zgodnie ze swoją numeracją (np. FV/2026/00789) w momencie tworzenia faktury. Numer KSeF to 35-znakowy identyfikator nadawany automatycznie przez system po pozytywnej walidacji w formacie NIP(10)-RRRRMMDD(8)-6-6-2. Oba istnieją równolegle — P_2 do komunikacji handlowej, numer KSeF do identyfikacji w systemie, JPK i korektach.
Czy numer KSeF jest unikalny i niezmienny?
Tak. Numer KSeF jest globalnie unikalny i nienaruszalny — dwie identyczne kombinacje 35 znaków nie mogą wystąpić w systemie. Po nadaniu pozostaje przypisany do tej faktury przez cały okres archiwizacji (10 lat) zgodnie z art. 112aa ustawy VAT. Anulowanie faktury nie usuwa numeru, a jedynie zmienia jej status w systemie. Korekta otrzymuje własny, osobny numer KSeF.
Gdzie znajdę numer KSeF swojej faktury?
Numer KSeF zwracany jest przez system po przyjęciu faktury jako metadana w UPO (Urzędowe Poświadczenie Odbioru) — nie jest elementem wewnątrz pliku XML. Znajdziesz go: w swoim programie księgowym obok faktury, w Aplikacji Podatnika KSeF 2.0 na ksef.podatki.gov.pl, przez API KSeF (endpoint status sesji) lub na kodzie QR faktury po przesłaniu do systemu.
Czy numer KSeF pojawia się na wizualizacji PDF faktury?
Tak — po przesłaniu faktury do KSeF kolejne wizualizacje PDF generowane z XML zawierają numer KSeF oraz kod QR linkujący do publicznej weryfikacji. Faktura offline24 w momencie wystawienia nie ma jeszcze numeru KSeF — wizualizacja zawiera wtedy dwa kody QR (OFFLINE + CERTYFIKAT) z hashem SHA-256 jako tymczasowe identyfikatory, a numer KSeF jest dodawany po przesłaniu do systemu.
Co zrobić jeśli stracę numer KSeF faktury?
Nie stracisz — system archiwizuje wszystkie numery KSeF przez 10 lat. Aby odnaleźć numer: (1) zaloguj się do Aplikacji Podatnika KSeF na ksef.podatki.gov.pl i wyszukaj po NIP kontrahenta, dacie lub kwocie, (2) użyj API KSeF do zapytania po parametrach, (3) sprawdź UPO zapisane w programie księgowym. Do dostępu po 1 stycznia 2027 potrzebujesz certyfikatu KSeF z MCU — tokeny wygasają 31.12.2026.
Czym jest NrKSeFN i kiedy się go używa?
NrKSeFN to flaga w schemacie FA(3) w bloku DaneFaKorygowanej, którą ustawiasz na 1, gdy faktura pierwotna nie ma numeru KSeF (wystawiona w trybie offline24 przed przesłaniem albo pochodząca sprzed obowiązku KSeF). Flagi NrKSeF=1 i NrKSeFN=1 są alternatywą — zaznaczasz dokładnie jedną. Numer własny NrFaKorygowanej (P_2 pierwotnej) podajesz zawsze. Błędna kombinacja powoduje odrzucenie korekty przez walidator.
Czy numer KSeF jest w samym pliku XML faktury?
Nie. Plik XML zgodny ze schematem FA(3) nie zawiera numeru KSeF jako elementu wewnętrznego, bo w momencie tworzenia pliku numer jeszcze nie istnieje. System zwraca go jako osobną metadanę (UPO — Urzędowe Poświadczenie Odbioru) po przyjęciu dokumentu.
Czy podmiot zagraniczny bez polskiego NIP ma numer KSeF?
Nie. Podmioty zagraniczne nieposiadające polskiego NIP nie są objęte obowiązkiem wystawiania faktur w KSeF i nie wystawiają ich w tym systemie. Faktury od kontrahentów zagranicznych (WNT, import usług) przychodzą poza KSeF i nie mają polskiego numeru KSeF.
Czy faktury konsumenckie mają numer KSeF?
Tak, jeśli zostały wystawione jako ustrukturyzowane w KSeF. Przy weryfikacji publicznej zamiast NIP nabywcy konsumenckiego używa się oznaczenia braku NIP — to jedno z akceptowanych wejść publicznego endpointu weryfikacyjnego.
Czy certyfikat KSeF to to samo co certyfikat kwalifikowany eIDAS?
Nie. Certyfikat KSeF to bezpłatny certyfikat wydawany przez Ministerstwo Finansów, ważny 2 lata i służący wyłącznie do uwierzytelnienia w KSeF. Certyfikat kwalifikowany eIDAS to komercyjny podpis elektroniczny z listy dostawców zaufania. Tokeny autoryzacyjne wygasają 31 grudnia 2026 — od 1 stycznia 2027 jedynym sposobem uwierzytelnienia programowego pozostaje certyfikat KSeF (lub pieczęć/podpis kwalifikowany).
Kiedy data z numeru KSeF różni się od daty wystawienia?
W trybach offline24 i awaryjnym. Datą wystawienia dla VAT jest wtedy P_1 (data na fakturze), a data systemowa z numeru KSeF to moment przesłania pliku do systemu. W trybie online obie daty są tożsame.
Kiedy wchodzi obowiązek e-fakturowania i dla kogo?
1 lutego 2026 — podatnicy o sprzedaży powyżej 200 mln zł w 2024. 1 kwietnia 2026 — wszyscy pozostali podatnicy VAT czynni. Dla sprzedaży B2C oraz B2B poniżej 10 000 zł miesięcznie obowiązuje wyłączenie przejściowe do 31 grudnia 2026 — można je wystawiać poza KSeF. Od 1 stycznia 2027 KSeF jest obowiązkowy dla wszystkich objętych (nie ma osobnej "grupy 2027").
Checklista — co sprawdzić w pierwszych fakturach z KSeF
- Czy numer KSeF ma dokładnie 35 znaków w formacie NIP(10)-data(8)-blok(6)-blok(6)-suma(2)
- Czy NIP w pierwszym segmencie numeru zgadza się z NIP sprzedawcy na fakturze
- Czy data w drugim segmencie numeru to data systemowa (nie zawsze równa dacie wystawienia dla VAT)
- Czy data wystawienia dla VAT to pole
P_1w XML — sprawdź szczególnie faktury z trybów offline - Czy Twój system księgowy zapisuje numer KSeF jako osobne pole (nie doklejone do P_2)
- Czy przy korektach system wpisuje numer KSeF do pola
NrKSeFFaKorygowaneja nieNrFaKorygowanej - Czy w JPK_V7(3) dla każdej pozycji jest albo NrKSeF, albo jeden z kodów OFF/BFK/DI (nigdy puste)
- Czy wiesz, jak zweryfikować fakturę publicznie: numer KSeF + NIP nabywcy + kwota brutto P_15
Źródła urzędowe
- ksef.podatki.gov.pl — dokumentacja schematu FA(3), struktura numeru KSeF, publiczny endpoint weryfikacji
- podatki.gov.pl — KSeF — wyjaśnienia MF dotyczące numeru KSeF i znaczników JPK_V7(3)
- mcu.mf.gov.pl — Moduł Certyfikatów i Uprawnień (wydawanie certyfikatu KSeF)
- isap.sejm.gov.pl — ustawa o VAT (art. 106na — numer identyfikujący fakturę w KSeF)