KSeF

KSeF w praktyce: jak automatycznie pobierać faktury przez API

Jak działa pobieranie faktur z KSeF przez API, co jest potrzebne do uwierzytelnienia, jak wygląda przepływ do arkusza lub systemu i czego pilnować w 2026 roku.

Autor: Michał MańkaOpublikowano 5 min czytania

W skrócie

Od 1 lutego 2026 r. każdy podatnik otrzymuje faktury przez KSeF, a Ministerstwo Finansów wprost potwierdza, że oprogramowanie może pobierać je automatycznie. W praktyce wygląda to tak: Twój system uwierzytelnia się w KSeF w kontekście Twojego NIP, co kilkanaście minut pyta o nowe faktury kosztowe, pobiera je i przekazuje dalej, np. do arkusza, CRM-u albo systemu księgowego. Poniżej opisuję ten przepływ krok po kroku, na podstawie oficjalnej dokumentacji KSeF 2.0.

Kogo dotyczy KSeF w 2026 roku

Obowiązek otrzymywania faktur w KSeF istnieje od 1 lutego 2026 r. i dotyczy wszystkich podatników, także tych, którzy sami jeszcze nie wystawiają faktur w systemie. Wystawianie faktur w KSeF stało się obowiązkowe 1 lutego 2026 r. dla firm ze sprzedażą powyżej 200 mln zł w 2024 r. i 1 kwietnia 2026 r. dla pozostałych. Do końca 2026 r. obowiązują wyjątki, m.in. przy sprzedaży do 10 000 zł miesięcznie i dla faktur z kas rejestrujących.

Czy faktury z KSeF da się pobierać automatycznie?

Tak. W oficjalnych pytaniach i odpowiedziach o KSeF 2.0 ministerstwo pisze, że system pozwala na integrację, dzięki której faktury są automatycznie pobierane. Nikt nie musi logować się do Aplikacji Podatnika i ręcznie ściągać plików XML. Taką integrację ma wiele programów księgowych, ale można ją zbudować także pod własny proces, np. gdy faktury mają trafiać do arkusza kosztów, CRM-u albo systemu akceptacji.

Uwierzytelnienie: kontekst, token albo certyfikat

Każde wywołanie API KSeF 2.0 wymaga tokena dostępu (accessToken) w formacie JWT. Żeby go dostać, system przechodzi krótką procedurę opisaną w dokumentacji ministerstwa:

  1. Wyzwanie

    System prosi o wyzwanie (POST /auth/challenge). Jest ważne 10 minut.

  2. Uwierzytelnienie

    Odsyła wyzwanie razem z kontekstem, czyli identyfikatorem firmy (zwykle NIP), w jednej z dwóch form: dokument XML podpisany w formacie XAdES (np. certyfikatem KSeF, pieczęcią kwalifikowaną) albo zaszyfrowany token KSeF (POST /auth/xades-signature lub POST /auth/ksef-token).

  3. Sprawdzenie statusu

    KSeF weryfikuje podpis i uprawnienia. System sprawdza wynik (GET /auth/{referenceNumber}).

  4. Tokeny dostępu

    Po pozytywnej weryfikacji system odbiera accessToken (ważny kilka minut) i refreshToken (ważny do 7 dni), którym odświeża dostęp bez ponownego logowania (POST /auth/token/redeem, POST /auth/token/refresh).

W 2026 r. tokeny KSeF i certyfikaty KSeF działają równolegle. Certyfikat KSeF (typ 1 służy do uwierzytelniania) wydaje Ministerstwo Finansów i jest ważny maksymalnie 2 lata. Przy nowych integracjach warto od razu przewidzieć certyfikat, bo źródła branżowe wskazują tokeny jako rozwiązanie przejściowe.

Trzy sposoby pobierania faktur

Pobieranie faktur w API KSeF 2.0
SposóbEndpointKiedy używać
Jedna faktura po numerze KSeFGET /invoices/ksef/{ksefNumber}Gdy znasz numer KSeF, np. z powiadomienia albo od kontrahenta.
Wyszukiwanie metadanychPOST /invoices/query/metadataLista faktur z filtrami: typ podmiotu, zakres dat, stronicowanie.
Eksport paczki (asynchronicznie)POST /invoices/exports, potem GET /invoices/exports/{referenceNumber}Regularne, przyrostowe pobieranie wielu faktur naraz. Paczka jest szyfrowana i zawiera plik _metadata.json.

Przy fakturach kosztowych interesuje Cię rola nabywcy, w API oznaczona jako Subject2 (Podmiot 2). Sprzedawca to Subject1, a Subject3 to inne podmioty występujące na fakturze.

Pobieranie przyrostowe: bez dziur i bez duplikatów

Najczęstszy błąd w integracjach to pobieranie „od ostatniej daty wystawienia”. Faktury trafiają do KSeF z opóźnieniem, więc tak zbudowany przepływ potrafi pominąć dokumenty. Dokumentacja ministerstwa opisuje bezpieczny sposób:

  • Do pobierania przyrostowego używaj daty typu PermanentStorage, czyli momentu trwałego zapisu faktury w KSeF. Ministerstwo pisze, że jest to konieczne.
  • Kolejne okna czasowe muszą do siebie przylegać, bez przerw i bez nakładania.
  • Korzystaj z mechanizmu „high water mark” (PermanentStorageHwmDate) i opcji RestrictToPermanentStorageHwmDate, żeby następny eksport zaczął się dokładnie tam, gdzie skończył się poprzedni.
  • Usuwaj duplikaty po numerze KSeF z pliku _metadata.json.

Ograniczenia częstotliwości są konkretne: maksymalnie 20 eksportów na godzinę dla wszystkich typów podmiotów łącznie, a przy ciągłej synchronizacji zalecane są 4 eksporty na godzinę dla jednego typu podmiotu, nie częściej niż co 15 minut. Po przekroczeniu limitu KSeF odpowiada kodem HTTP 429 z nagłówkiem Retry-After. Dlatego przepływ w moim przykładzie automatyzacji pobiera faktury co kwadrans.

Co dalej z pobraną fakturą

Faktura w KSeF to ustrukturyzowany plik XML, więc da się z niego odczytać sprzedawcę, pozycje, kwoty i stawki VAT bez przepisywania. Typowy przepływ, który buduję:

  1. Pobranie nowych faktur kosztowych co 15 minut i zapis oryginałów XML w archiwum firmy.
  2. Odczytanie danych: kontrahent, numer, daty, pozycje, netto, VAT, brutto.
  3. Opcjonalnie: model językowy przypisuje kategorię kosztu albo projekt, a nietypowe pozycje oznacza do sprawdzenia.
  4. Zapis do arkusza kosztów, CRM-u lub systemu księgowego.
  5. Powiadomienie, gdy przychodzi faktura od nowego kontrahenta albo kwota odbiega od zwykłej.

Taki przepływ da się zbudować w n8n albo we własnym kodzie. O tym, które narzędzie wybrać, piszę w porównaniu n8n, Make czy Zapier.

Środowiska i testy

KSeF 2.0 działa w trzech środowiskach: testowym (TEST), przedprodukcyjnym (DEMO) i produkcyjnym (PROD), gdzie faktury mają pełną moc prawną. Integrację testuje się najpierw poza produkcją, na danych testowych, a dopiero potem włącza na prawdziwym koncie firmy. Ministerstwo udostępnia też oficjalne biblioteki klienckie (m.in. dla C# i Javy), które pokazują poprawne wywołania API.

Tryby offline i awarie

Jeśli wystawiasz faktury i KSeF jest niedostępny, przepisy przewidują tryby awaryjne. W trybie offline24 fakturę trzeba dosłać niezwłocznie, nie później niż w następnym dniu roboczym po jej wystawieniu. W trybie awarii systemu termin to 7 dni roboczych od zakończenia awarii. Dobra integracja przy wystawianiu pilnuje tych terminów sama i ponawia wysyłkę.

Jeśli chcesz, żeby faktury z KSeF trafiały tam, gdzie pracujesz, zobacz, jak buduję integracje z KSeF, albo napisz. Po krótkiej rozmowie dostaniesz wycenę na piśmie w 48 h.

Pytania i odpowiedzi

Czy muszę mieć program księgowy, żeby odbierać faktury z KSeF?

Nie. Faktury można przeglądać i pobierać w bezpłatnej Aplikacji Podatnika KSeF. Program albo integracja przydają się, gdy faktur jest dużo albo mają trafiać automatycznie do innych systemów.

Jak często można pobierać faktury z KSeF przez API?

Przy eksporcie paczek dokumentacja ministerstwa podaje maksymalnie 20 eksportów na godzinę łącznie, a przy ciągłej synchronizacji zaleca 4 na godzinę dla jednego typu podmiotu, nie częściej niż co 15 minut.

Token KSeF czy certyfikat KSeF?

W 2026 r. obie metody działają równolegle. Certyfikat KSeF wydaje Ministerstwo Finansów na maksymalnie 2 lata. Przy nowych integracjach warto od razu przewidzieć certyfikat.

Czy integracja może pobierać faktury dla wielu firm?

Tak, ale każda firma to osobny kontekst (NIP) z własnymi uprawnieniami. Biura rachunkowe działają w kontekstach swoich klientów na podstawie nadanych uprawnień.

Przygotowane z pomocą narzędzi AI, sprawdzone i uzupełnione przez autora. Liczby i przepisy mają podane źródła.

Źródła

  1. Pytania i odpowiedzi KSeF 2.0, Ministerstwo Finansów, ksef.podatki.gov.pl
  2. Podstawy prawne oraz kluczowe terminy, Ministerstwo Finansów, ksef.podatki.gov.pl
  3. Uwierzytelnianie w KSeF API 2.0, Ministerstwo Finansów, GitHub CIRFMF/ksef-api
  4. Pobieranie faktur, Ministerstwo Finansów, GitHub CIRFMF/ksef-docs
  5. Przyrostowe pobieranie faktur, Ministerstwo Finansów, GitHub CIRFMF/ksef-docs
  6. Jak zalogować się do KSeF od lutego 2026 r.? Certyfikaty, tokeny, e-podpis, Infor.pl
  7. Ustawa z dnia 5 sierpnia 2025 r. o zmianie ustawy o podatku od towarów i usług (Dz.U. 2025 poz. 1203), Sejm RP, ELI

Co mam dla Ciebie zbudować?

Napisz, co chcesz zbudować albo co Cię spowalnia. Odpowiadam zwykle tego samego dnia, najpóźniej w ciągu 24 h. Po bezpłatnej, 30-minutowej rozmowie w ciągu 48 h dostajesz pisemną wycenę ze stałą ceną.

Wolisz bez formularza?

+48 575 885 101m.manka@mankasoft.com

Godziny pracy: pon.–sob. 9:00–17:00, czas polski.

Administratorem danych jest MankaSoft Michał Mańka, ul. Kościuszki 48, 43-100 Tychy. Twój e-mail i treść wiadomości wykorzystam tylko do odpowiedzi i przygotowania wyceny. Więcej w polityce prywatności.