Wszystkie artykuły
    KSeF6 maja 20268 min

    Numer KSeF: gdzie go znaleźć i czym różni się od numeru faktury

    Zespół FakturaFlowPraktycy automatyzacji KSeF dla biur rachunkowych w Polsce.

    Po wysyłce faktury do Krajowego Systemu e-Faktur (KSeF) podatnicy często pytają: „gdzie jest ten numer KSeF, o którym wszyscy mówią?”. Pytanie nie jest trywialne, bo każda faktura w KSeF ma w praktyce trzy różne identyfikatory, a tylko jeden z nich pełni rolę dowodu doręczenia. W tym artykule pokazujemy, czym dokładnie jest „numer KSeF”, gdzie go znaleźć w Urzędowym Poświadczeniu Odbioru (UPO), w pliku XML faktury oraz w aplikacji webowej Ministerstwa Finansów. Wyjaśniamy też, czym różni się od numeru własnego faktury (np. „FV/2026/04/001”) i kiedy który z nich należy podać klientowi, kontrahentowi albo urzędowi skarbowemu.

    Numer KSeF kontra numer faktury: dlaczego to nie to samo

    Zanim zaczniemy szukać numeru KSeF, warto zrozumieć, że na każdej fakturze ustrukturyzowanej istnieje co najmniej kilka identyfikatorów, które łatwo ze sobą pomylić.

    Numer faktury (P_2 w schemacie FA(3)) to numer nadawany przez wystawcę zgodnie z jego własną konwencją: „FV/2026/04/001”, „FA-001/04/26”, „2026/04/123” (co kto lubi). Ten numer pojawia się w polu <P_2> w XML i jest tym, co klient widzi na PDF-ie wysłanym e-mailem.

    Numer KSeF (ksefReference) to identyfikator nadawany przez system Ministerstwa Finansów dopiero po pomyślnym przyjęciu faktury. Ma format YYYYMMDD-XX-HEX-HEX-NN, np. 20260427-EE-43C87BE000-C697C961E1-77. Bez niego faktura formalnie nie istnieje w KSeF, nawet jeśli wystawca wpisał już własny P_2.

    Numer sesji oraz numer odniesienia w UPO to dodatkowe identyfikatory pomocnicze (sessionReference, referenceNumber), które przydają się przy diagnostyce, ale nie zastępują numeru KSeF.

    W praktyce: klientowi wysyłasz numer faktury (P_2), do księgowości i KAS-u podajesz numer KSeF, a numer sesji zostawiasz sobie na wypadek reklamacji. Pomyłka w tej hierarchii to najczęstszy błąd, jaki widzimy w biurach rachunkowych w pierwszych tygodniach pracy z KSeF.

    Gdzie znaleźć numer KSeF: pięć miejsc po kolei

    W odpowiedzi z API po wysyłce faktury

    Jeżeli korzystasz z systemu zintegrowanego z KSeF API (jak Cockpit KSeF FakturaFlow albo własna integracja), numer KSeF dostajesz w odpowiedzi JSON z endpointu /api/v2/sessions/online/{sessionRef}/invoices. Wygląda to mniej więcej tak:

    {
      "ksefReferenceNumber": "20260427-EE-43C87BE000-C697C961E1-77",
      "invoiceReferenceNumber": "20260427-FV-A1B2C3-456789-01",
      "acquisitionTimestamp": "2026-04-27T14:23:45.123Z",
      "status": {
        "code": 200,
        "description": "Invoice accepted"
      }
    }
    

    Pole ksefReferenceNumber to właśnie numer KSeF. Pole invoiceReferenceNumber jest aliasem zwracanym przez nowsze wersje API; w praktyce trzymamy się nazwy „numer KSeF” w komunikacji z klientem.

    W UPO (Urzędowe Poświadczenie Odbioru)

    UPO (Urzędowe Poświadczenie Odbioru) to dokument XML wystawiany przez Ministerstwo Finansów po przetworzeniu sesji wysyłkowej. Pobierasz go z API (/api/v2/sessions/online/{sessionRef}/upo) albo bezpośrednio z aplikacji web KSeF. W jego zawartości znajdziesz blok <NumerKSeFFaktury> dla każdej faktury wysłanej w danej sesji:

    <UPO>
      <Naglowek>
        <DataWystawieniaUPO>2026-04-27T14:23:45Z</DataWystawieniaUPO>
        <NumerSesji>20260427-AU-A1B2C3-456789-AB</NumerSesji>
      </Naglowek>
      <DokumentyKSeF>
        <NumerKSeFFaktury>20260427-EE-43C87BE000-C697C961E1-77</NumerKSeFFaktury>
        <NumerFakturyWystawcy>FV/2026/04/001</NumerFakturyWystawcy>
        <DataPrzyjecia>2026-04-27T14:23:45Z</DataPrzyjecia>
      </DokumentyKSeF>
    </UPO>
    

    UPO jest dokumentem urzędowym i to właśnie on (nie sam komunikat z API) stanowi ostateczny dowód, że faktura trafiła do systemu. Dlatego biuro rachunkowe powinno archiwizować UPO dla każdej sesji przez pełny okres przechowywania faktur (10 lat).

    W aplikacji web KSeF Ministerstwa Finansów

    Najprostszy sposób dla księgowej, która nie chce grzebać w XML-ach: zaloguj się do aplikacji webowej Ministerstwa Finansów na środowisku produkcyjnym (api.ksef.mf.gov.pl) lub testowym (api-test.ksef.mf.gov.pl), przejdź do zakładki „Faktury wystawione”, a następnie wyszukaj fakturę po jej numerze własnym (P_2) albo dacie wystawienia. W szczegółach każdej faktury widoczne jest pole „Numer KSeF” oraz data nadania.

    To samo dotyczy aplikacji mobilnej KSeF, która od marca 2026 r. została udostępniona księgowym z uprawnieniami w organizacjach klientów.

    W bazie danych Twojego systemu KSeF

    Każda integracja zapisuje numer KSeF lokalnie w bazie danych. W FakturaFlow numer KSeF trafia do kolumny ksef_reference na tabeli invoices natychmiast po otrzymaniu odpowiedzi z API. Dzięki temu numer jest dostępny w panelu cockpitu, w eksporcie do CSV, w fakturze PDF (jako stopka) oraz w widoku „Szczegóły faktury”.

    Jeżeli pracujesz w innym narzędziu, sprawdź dokumentację dostawcy. Większość rozwiązań ujmuje numer KSeF w jednym z trzech miejsc: stopce PDF-a faktury, dedykowanej kolumnie w widoku listy faktur, albo eksporcie XML do księgowości.

    W pliku PDF faktury (od kwietnia 2026 r.)

    Od 1 kwietnia 2026 r., gdy obowiązek KSeF objął wszystkich czynnych podatników VAT (po pierwszym etapie 1 lutego 2026 r. dla największych podatników z obrotem > 200 mln zł, a przed 1 stycznia 2027 r. dla najmniejszych), Ministerstwo Finansów zaleca, aby wystawcy umieszczali numer KSeF na wizualizacji faktury (PDF). Choć formalnie nie jest to obowiązek wynikający z ustawy, w praktyce odbiorca często prosi o numer KSeF, żeby móc zweryfikować fakturę w aplikacji KSeF po stronie nabywcy. Standardowe miejsce to stopka strony, mała czcionka, opis: „Numer KSeF: 20260427-EE-43C87BE000-C697C961E1-77”.

    Co oznaczają poszczególne segmenty numeru KSeF

    Format YYYYMMDD-XX-HEX-HEX-NN nie jest losowy. Każdy segment ma swoje znaczenie i jest opisany w specyfikacji KSeF 2.0:

    SegmentPrzykładZnaczenie
    YYYYMMDD20260427Data nadania numeru przez KSeF (UTC)
    XXEEPrefiks typu (EE = przyjęcie faktury, AU = sesja autoryzacyjna, CR = challenge)
    HEX43C87BE000Identyfikator powiązany z wystawcą
    HEXC697C961E1Identyfikator faktury w ramach sesji wystawcy
    NN77Suma kontrolna (CRC)

    Znajomość tych segmentów przydaje się rzadko, ale bywa pomocna przy diagnostyce: jeżeli widzisz numer z prefiksem AU, to znaczy, że to nie numer faktury, tylko numer sesji autoryzacyjnej. Łatwo je pomylić w logach.

    Numer KSeF w korekcie i fakturze zaliczkowej

    Każdy dokument w KSeF, w tym korekta faktury oraz faktura zaliczkowa, dostaje swój własny, niezależny numer KSeF. Nie dziedziczy go po fakturze pierwotnej. Oznacza to, że w korekcie do faktury z numerem KSeF 20260427-EE-43C87BE000-C697C961E1-77 znajdziesz dwa identyfikatory:

    • numer KSeF samej korekty (np. 20260503-EE-43C87BE000-D710E2F300-12),
    • numer KSeF faktury pierwotnej (20260427-EE-43C87BE000-C697C961E1-77), umieszczany w polu <NrKSeFFakturyKorygowanej> w bloku <DaneFaKorygowanej> w XML korekty.

    Brak numeru KSeF faktury pierwotnej w korekcie to jeden z najczęstszych błędów walidacji schemy FA(3). Ministerstwo Finansów odrzuca taki dokument z błędem 21405 („missing required field”). Po szczegóły zajrzyj do naszego przeglądu najczęstszych błędów KSeF.

    Jak Cockpit KSeF FakturaFlow upraszcza obsługę numeru KSeF

    W panelu FakturaFlow numer KSeF jest widoczny w czterech miejscach, które pokrywają codzienne potrzeby biura rachunkowego:

    1. Lista faktur: kolumna „Numer KSeF” obok numeru własnego (P_2).
    2. Szczegóły faktury: pełny numer + data nadania + link do podglądu UPO.
    3. Eksport CSV: kolumna ksef_reference w pliku eksportowym.
    4. Stopka PDF: numer KSeF w wizualizacji faktury (włączane w ustawieniach organizacji).

    Dodatkowo, dla każdej sesji wysyłkowej archiwizujemy automatycznie UPO w oryginalnym XML-u. Nie musisz już ręcznie pobierać poświadczeń z aplikacji web; robi to nasz queue worker, a archiwum jest dostępne przez 10 lat (nawet po wygaśnięciu subskrypcji, na podstawie art. 112a ustawy o VAT). To jest jedna z głównych różnic między obsługą KSeF „ręcznie” (przez aplikację MF) a obsługą przez Cockpit KSeF.

    Cockpit KSeF FakturaFlow dostępny jest w trzech planach: Starter (199 zł / mies.), Professional (319 zł / mies.) oraz Enterprise (499 zł / mies.). W każdym z nich numer KSeF jest widoczny w czasie rzeczywistym, bez ograniczeń ilościowych.

    Częste pytania: gdzie jest mój numer KSeF?

    Wysłałem fakturę 5 minut temu i numer KSeF wciąż nie pojawia się w panelu. Czy coś poszło nie tak?

    Najczęściej nie. Sesja wysyłkowa w KSeF jest asynchroniczna: faktura przechodzi przez kolejkę walidacyjną Ministerstwa Finansów i numer nadawany jest dopiero po przyjęciu (status Invoice accepted). W godzinach szczytu (koniec miesiąca) opóźnienia sięgają kilkunastu minut. Jeżeli po godzinie numer wciąż się nie pojawił, sprawdź status sesji; być może faktura została odrzucona, np. z powodu błędnego NIP-u albo niezgodnej kwoty VAT.

    Klient prosi o numer KSeF, ale nie potrafi go zweryfikować po swojej stronie. Co robić?

    Najczęstsza przyczyna: klient szuka numeru w skrzynce mailowej, podczas gdy KSeF nie wysyła e-maili. Faktura w KSeF jest doręczana przez sam fakt jej przyjęcia do systemu (data acquisitionTimestamp), niezależnie od tego, czy nabywca ją pobierze. Klient powinien zalogować się do aplikacji web KSeF, przejść do zakładki „Faktury otrzymane” i wyszukać dokument po Twoim NIP-ie wystawcy.

    Czy numer KSeF zmienia się, gdy fakturę cofnę i wystawię ponownie?

    Tak. Każde wysłanie do KSeF generuje nowy numer KSeF, niezależnie od tego, czy P_2 (numer własny) został zachowany. Dlatego anulowanie i ponowna wysyłka nie są bezkosztowe. Sprawdź najpierw, czy nie wystarczy korekta.

    Czy numer KSeF zastępuje wymóg drukowania faktury?

    Tak. Od momentu przyjęcia do KSeF faktura jest doręczona, a wystawca nie ma obowiązku przekazywać jej w innej formie. PDF z numerem KSeF to wyłącznie wizualizacja dla wygody odbiorcy, a nie odrębny dokument prawny.

    Podsumowanie

    Numer KSeF (ksefReference) to identyfikator w formacie YYYYMMDD-XX-HEX-HEX-NN, nadawany przez Ministerstwo Finansów po pomyślnym przyjęciu faktury do systemu. Jest dostępny w pięciu miejscach: w odpowiedzi z API, w UPO (Urzędowe Poświadczenie Odbioru), w aplikacji web KSeF, w bazie danych systemu integracyjnego oraz na wizualizacji PDF faktury. Nie należy mylić go z numerem własnym faktury (P_2), który nadaje wystawca, ani z numerem sesji, który służy wyłącznie diagnostyce.

    W codziennej pracy biura rachunkowego numer KSeF pełni rolę: dowodu wysyłki przed klientem, identyfikatora w komunikacji z urzędem skarbowym oraz klucza referencyjnego w korektach. Dlatego najprostsza rekomendacja: zawsze archiwizuj UPO razem z numerem KSeF, niezależnie od tego, w jakim systemie pracujesz. To jedyny sposób, żeby udowodnić, że wysyłka faktury rzeczywiście doszła do skutku.

    Wypróbuj za darmo

    Sprawdź swoją fakturę, zanim odrzuci ją KSeF

    Wgraj XML faktury w walidatorze FakturaFlow i zobacz konkretne błędy zanim plik trafi do Krajowego Systemu e-Faktur. Bez konta, bez instalacji, pliki nie opuszczają Twojej przeglądarki.

    Walidator XML FA(3) · Konwerter PDF → XML · 3 użycia dziennie za darmo