W skrócie: KSeF gwarantuje, że faktura dotarła do nabywcy - w systemie ministerstwa. Nie gwarantuje, że trafiła do twojego programu księgowego albo ERP. Integracja może się zatrzymać, pominąć część dokumentów albo odrzucić fakturę bez komunikatu. Dlatego obok samego pobierania potrzebna jest prosta, codzienna kontrola: lista numerów KSeF z systemu ministerstwa porównana z listą numerów w ERP.

Faktura w KSeF to jeszcze nie faktura w ERP

Z punktu widzenia przepisów faktura jest otrzymana w dniu nadania jej numeru KSeF (podatki.gov.pl - wystawianie i otrzymywanie faktur). Z punktu widzenia księgowości istnieje dopiero wtedy, gdy jest w programie księgowym. Pomiędzy tymi dwoma momentami pracuje integracja - i to ona może zawieść.

Ernst & Young (EY) opisuje przypadki, w których dokument jest widoczny w KSeF, ale nie pojawia się w systemie docelowym, i firmy, które wprowadziły z tego powodu dodatkowy proces kontrolny (raport EY „KSeF po pół roku”, rozdz. 6.5).

Moment otrzymania ma znaczenie dla terminów. Jeśli faktura utknie na kilka dni między KSeF a ERP, termin płatności liczony od otrzymania i tak biegnie. Jak go poprawnie liczyć i ustawić w systemie, opisuję w tekście Termin płatności a data otrzymania faktury w KSeF.

Jak działa pobieranie faktur z KSeF

Nie trzeba być programistą, żeby rozumieć zasadę. Ministerstwo zaprojektowało pobieranie jako synchronizację: program księgowy lub ERP regularnie kopiuje faktury z KSeF do własnej bazy i na niej pracuje. API nie służy do tego, żeby przy każdym kliknięciu użytkownika pytać KSeF o pojedynczą fakturę (dokumentacja API KSeF 2.0 - limity).

Sposób Kiedy się go używa Limit godzinowy
Lista metadanych faktur Sprawdzenie, jakie faktury są w KSeF za dany okres (numer KSeF, wystawca, kwoty, daty) - bez pobierania całych plików 20 zapytań na godzinę
Eksport paczki faktur Rekomendowany sposób przy większej liczbie faktur. KSeF przygotowuje paczkę w tle, a system ją pobiera 20 eksportów na godzinę
Pobranie faktury po numerze KSeF Małe wolumeny albo pojedyncze braki do uzupełnienia 64 zapytania na godzinę

Źródło: dokumentacja API KSeF 2.0 - limity. Po przekroczeniu limitu KSeF odpowiada błędem 429 i blokuje kolejne zapytania na czas, który rośnie przy wielokrotnych przekroczeniach.

Trzy szczegóły z dokumentacji, o które warto zapytać dostawcę systemu:

  • Pobieranie przyrostowe. Ministerstwo zaleca pobieranie w przylegających do siebie oknach czasowych, z punktem kontrolnym, do którego KSeF gwarantuje kompletność danych (tzw. High Water Mark). Każde kolejne pobranie zaczyna się dokładnie tam, gdzie skończyło się poprzednie. Okna liczone według innej daty, np. daty wystawienia, mogą dawać luki (dokumentacja API KSeF 2.0 - przyrostowe pobieranie faktur).
  • Wszystkie role firmy na fakturze. Faktury pobiera się osobno dla każdej roli: sprzedawcy (Podmiot 1), nabywcy (Podmiot 2), podmiotu trzeciego (Podmiot 3) i podmiotu upoważnionego. Firma może występować na fakturach w różnych rolach, a integracja ustawiona tylko na „nabywcę” nie zobaczy części dokumentów (tamże).
  • Częstotliwość. Pobieranie nie powinno odbywać się częściej niż co 15 minut dla każdej roli. Przy małej liczbie faktur wystarczy pobieranie na żądanie i raz na dobę w nocy (dokumentacja API KSeF 2.0 - limity).

Dlaczego faktury nie docierają do ERP

Najczęstsze przyczyny są dość przewidywalne. Żadna z nich nie jest błędem KSeF - wszystkie leżą po stronie integracji albo procesu.

  • Wygasł token albo certyfikat. Integracja przestaje się łączyć z KSeF, a nikt tego nie zauważa, dopóki ktoś nie zapyta o fakturę. Więcej w tekście Token czy certyfikat KSeF.
  • Zmieniły się uprawnienia. Pracownik odszedł, klient biura cofnął uprawnienia albo nadał je komuś innemu. Zobacz Uprawnienia KSeF dla biura rachunkowego.
  • Integracja pobiera tylko jedną rolę. Najczęściej nabywcę. Faktury, na których firma jest podmiotem trzecim, zostają w KSeF.
  • Limity i błędy po drodze. Pobieranie trafia na limit, dostaje błąd 429 i nie wraca do pominiętego okna.
  • ERP odrzuca fakturę. Nieznany kontrahent, brak mapowania stawki albo pozycji, dokument „zawieszony” w kolejce importu. W KSeF faktura jest, w księgach nie ma.
  • Zmiana w ERP. Aktualizacja systemu, nowa spółka w grupie albo zmiana konfiguracji potrafią zatrzymać przepływ, który działał miesiącami.

Kontrola kompletności krok po kroku

Kontrola jest prosta, bo KSeF daje coś, czego wcześniej nie było: pełną listę faktur z unikalnymi numerami. Wystarczy porównać dwie listy.

  1. Pobierz listę numerów KSeF z systemu ministerstwa. Za wczorajszy dzień, dla wszystkich ról firmy. Wystarczą same metadane - nie trzeba drugi raz pobierać całych faktur.
  2. Pobierz listę numerów KSeF z ERP. Wszystkie faktury zarejestrowane w programie księgowym, także te w kolejce importu albo odrzucone.
  3. Porównaj listy po numerze KSeF. Numer jest unikalny, więc porównanie jest jednoznaczne. Dla pewności sprawdź też liczbę faktur i sumę kwot brutto.
  4. Rozdziel wynik na trzy grupy - i każdą przekaż konkretnej osobie.
Wynik porównania Co to znaczy Co zrobić
Jest w KSeF i w ERP Wszystko w porządku Nic
Jest w KSeF, nie ma w ERP Faktura nie dotarła albo została odrzucona przy imporcie Pobrać ponownie po numerze KSeF, sprawdzić przyczynę
Jest w ERP, nie ma numeru KSeF Faktura spoza KSeF: zagraniczna, z trybu awaryjnego przed dosłaniem, PDF od dostawcy Sprawdzić, czy to nie duplikat faktury, która przyjdzie później z KSeF

Trzecia grupa jest ważniejsza, niż się wydaje. Jeśli faktura trafiła do ERP z PDF-a, a potem przyjdzie także z KSeF, może zostać zaksięgowana i zapłacona dwa razy. Jak to wyłapać, opisujemy w tekście Ta sama faktura dwa razy - jak wyłapać duplikaty z KSeF, PDF i OCR.

Sygnały, że coś przestało działać

Codzienne porównanie wyłapie braki. Kilka prostych alarmów pozwoli zauważyć awarię, zanim braki się nazbierają:

  • zero faktur kosztowych w dniu roboczym, gdy zwykle jest ich kilkanaście,
  • wyraźny spadek liczby faktur względem średniej z ostatnich tygodni,
  • ostatnie udane pobranie starsze niż kilka godzin,
  • powtarzające się błędy 429 w logach integracji,
  • zbliżająca się data wygaśnięcia tokenu lub certyfikatu.

Takie alarmy nie wymagają nowego systemu. Wystarczy automatyzacja, która raz dziennie pobiera dane z KSeF i z ERP, porównuje je i wysyła wynik mailem albo na komunikator - tylko wtedy, gdy jest coś do wyjaśnienia.

Kto za to odpowiada

Kontrola kompletności nie kończy się na teście po wdrożeniu. Integracje psują się po cichu - po aktualizacji, zmianie uprawnień albo wygaśnięciu tokenu - więc kontrola musi działać codziennie, także wtedy, gdy przez miesiące wszystko było w porządku. Potrzebuje właściciela - zwykle w księgowości, nie w IT - i jasnej ścieżki: kto dostaje listę braków, kto je wyjaśnia, do kiedy.

W biurze rachunkowym ta sama kontrola działa dla każdego klienta osobno. Przy kilkudziesięciu klientach ręczne porównywanie list przestaje być realne, a automatyczne zestawienie „klient - braki - przyczyna” oszczędza godziny w każdym miesiącu.

Jak pracujemy

Nie podłączamy KSeF - to robi twój program księgowy. Budujemy kontrolę obok niego: codzienne porównanie KSeF z ERP, alarmy i listę braków dla właściwej osoby, w narzędziach, których już używasz. Więcej o tym, dlaczego dane z KSeF dobrze nadają się do takiej automatyzacji, piszemy w tekście KSeF jako fundament automatyzacji.

Chcesz sprawdzić, czy wszystkie faktury z KSeF trafiają do twojego systemu? Zobacz automatyzacje KSeF dla firm, automatyzacje dla biur rachunkowych albo umów przegląd obiegu faktur (30 min).

Najczęstsze pytania

Czy da się to sprawdzić w Aplikacji Podatnika KSeF?

Pojedyncze faktury tak - aplikacja pozwala wyszukiwać i pobierać faktury w XML lub PDF (Aplikacja Podatnika KSeF 2.0). Przy kilkuset fakturach miesięcznie ręczne porównywanie zajmuje godziny i łatwo o pomyłkę. Do codziennej kontroli lepiej sprawdza się automatyczne pobieranie listy przez API.

Jak często program powinien pobierać faktury?

Nie częściej niż co 15 minut dla każdej roli firmy na fakturze. Przy niewielkiej liczbie faktur wystarczy raz na dobę plus pobieranie na żądanie. Kontrolę kompletności wystarczy robić raz dziennie, za poprzedni dzień.

Skoro faktury są w KSeF przez 10 lat, po co kopia w ERP?

KSeF przechowuje faktury przez 10 lat od końca roku wystawienia (podatki.gov.pl - zasady obowiązywania KSeF). Księgowanie, akceptacja i płatności odbywają się jednak w twoich systemach, a API KSeF jest zaprojektowane do synchronizacji z lokalną bazą, a nie do pracy bezpośrednio na KSeF.

Co zrobić, gdy wykryjemy brakującą fakturę?

Pobrać ją po numerze KSeF, zarejestrować w ERP i ustalić przyczynę: uprawnienia, rola, odrzucenie przy imporcie czy przerwa w synchronizacji. Jeśli przyczyna się powtarza, poprawić integrację, a nie tylko uzupełniać braki.

Powiązane teksty: Od czego zacząć automatyzację po KSeF, Termin płatności a data otrzymania faktury w KSeF, Duplikaty faktur z KSeF, PDF i OCR, KSeF jako fundament automatyzacji, KSeF po pół roku - 7 wniosków, Token czy certyfikat KSeF, Uprawnienia KSeF dla biura rachunkowego, Numer KSeF w przelewie od 2027.

Źródła: podatki.gov.pl - wystawianie i otrzymywanie faktur; dokumentacja API KSeF 2.0 - limity; dokumentacja API KSeF 2.0 - przyrostowe pobieranie faktur; podatki.gov.pl - zasady obowiązywania KSeF; Aplikacja Podatnika KSeF 2.0; EY, „KSeF po pół roku. Pierwsze wnioski i wyzwania”, 2026 - strona raportu.

Autor: Jarek Sokołowski | Aktualizacja: 20.10.2026
Tekst ma charakter informacyjny i nie stanowi porady podatkowej.