Obowiązkowy KSeF działa już od pół roku, a mimo to co tydzień rozmawiamy z firmami, które nadal wystawiają faktury obok systemu. Rzadko z lekceważenia: częściej program księgowy nie dostał modułu, integracja z własnym ERP-em nie zmieściła się w budżecie, albo ktoś usłyszał, że „w 2026 i tak nie ma kar”, i odłożył temat na później. Ten tekst jest dla takich firm — i dla działów IT, które mają to teraz spiąć z systemami, które już działają.
Zacznijmy od rozróżnienia, które w rozmowach najczęściej się zaciera: brak kar nie jest brakiem obowiązku. Obowiązek wystawiania faktur ustrukturyzowanych trwa od 1 lutego 2026 dla największych podatników i od 1 kwietnia 2026 dla pozostałych. Odroczono kary pieniężne — do 31 grudnia 2026 roku. Zostało więc niecałe pięć miesięcy, a wdrożenie KSeF to nie jest wymiana programu do faktur: to zmiana w datach, w numeracji, w obiegu dokumentów, w płatnościach i w uprawnieniach.
Co już obowiązuje, a co dopiero przed nami?
Kalendarz jest prosty, choć rozłożony na kilka warstw. Od 1 lutego 2026 faktury w KSeF wystawiają firmy, u których wartość sprzedaży wraz z kwotą podatku przekroczyła w 2024 roku 200 mln zł. Od tej samej daty odbierać faktury przez KSeF musi już każdy podatnik — także ten, który sam jeszcze nie wystawia. Od 1 kwietnia 2026 obowiązek wystawiania objął pozostałych przedsiębiorców, w tym zwolnionych podmiotowo z VAT.
Poza tym rytmem są dwie grupy. Podatnicy, u których miesięczna wartość sprzedaży udokumentowana fakturami nie przekracza 10 000 zł brutto, mogą do końca 2026 roku wystawiać faktury papierowe lub elektroniczne poza KSeF — ale odbierać faktury przez KSeF muszą tak samo jak wszyscy, a od 1 stycznia 2027 wchodzą w pełny obowiązek. Faktury dla osób fizycznych nieprowadzących działalności gospodarczej trafiają do KSeF dobrowolnie, nie z obowiązku. Do 31 grudnia 2026 działa też wyłączenie dla faktur wystawianych przy zastosowaniu kas rejestrujących oraz dla paragonów z NIP uznawanych za faktury uproszczone.
| Data | Co zaczyna obowiązywać | Kogo dotyczy |
|---|---|---|
| 1 lutego 2026 | Wystawianie faktur w KSeF | Sprzedaż z podatkiem powyżej 200 mln zł w 2024 r. |
| 1 lutego 2026 | Odbieranie faktur z KSeF | Wszystkich podatników, bez wyjątku |
| 1 kwietnia 2026 | Wystawianie faktur w KSeF | Pozostałych przedsiębiorców, także zwolnionych z VAT |
| do 31 grudnia 2026 | Faktury poza KSeF przy sprzedaży do 10 000 zł miesięcznie | Najmniejszych wystawców |
| do 31 grudnia 2026 | Faktury z kas rejestrujących i paragony z NIP jako faktury uproszczone | Handel detaliczny |
| do 31 grudnia 2026 | Okres bez kar pieniężnych z art. 106ni ustawy o VAT | Wszystkich |
| 1 stycznia 2027 | Kary pieniężne za naruszenie obowiązków KSeF | Wszystkich |
| 1 stycznia 2027 | Numer KSeF w komunikacie przelewu i przy podzielonej płatności | Płatności B2B między czynnymi podatnikami VAT |
Co się zmienia w codziennej pracy?
Pierwsza zmiana dotyczy dat i jest źródłem większości nieporozumień. Fakturę ustrukturyzowaną uznaje się za wystawioną w dniu przesłania jej do KSeF (art. 106na ust. 1 ustawy o VAT), a za otrzymaną — w dniu nadania jej numeru KSeF. Jeżeli data w polu P_1 faktury jest wcześniejsza niż dzień przyjęcia dokumentu przez system, KSeF sam zakwalifikuje wysyłkę jako tryb offline i za datę wystawienia przyjmie wartość z pola P_1. Twoja własna numeracja faktur zostaje bez zmian, ale obok niej pojawia się drugi identyfikator — nadawany przez system numer KSeF.
Numer KSeF ma zawsze 35 znaków i stałą strukturę: NIP sprzedawcy, data przyjęcia faktury, dwanaście znaków szesnastkowych i dwuznakowa suma kontrolna CRC-8. To ten numer ma od 2027 roku trafiać do płatności, więc już teraz warto zaplanować, gdzie go zapiszesz i jak dowiążesz do rozrachunków. Skoro numer niesie sumę kontrolną, można — i warto — sprawdzać go lokalnie, zanim trafi do przelewu przepisany ręcznie z wizualizacji faktury.
Druga zmiana to załączniki. Od 1 lutego 2026 można przesyłać faktury ustrukturyzowane z załącznikiem, ale nie automatycznie: trzeba wcześniej zgłosić taki zamiar formularzem ZGL_ZAL w e-Urzędzie Skarbowym. Zgłoszenie jest realizowane w ciągu maksymalnie trzech dni roboczych, a potwierdzenie przychodzi na wskazany w nim adres e-mail. Jeśli Twoje faktury bez specyfikacji są bezużyteczne — usługi rozliczane godzinowo, transport, media — załatw to zgłoszenie, zanim zaczniesz przebudowywać szablony.
Trzecia zmiana to praca wtedy, gdy KSeF nie odpowiada, a ustawa rozróżnia tu cztery sytuacje. Tryb offline24 (art. 106nda) to Twoja własna decyzja, żadna awaria nie jest potrzebna: wystawiasz fakturę poza systemem i przesyłasz ją najpóźniej w następnym dniu roboczym. Tryb offline (art. 106nh) uruchamia niedostępność ogłoszona przez Ministerstwo Finansów, z terminem do następnego dnia roboczego po jej zakończeniu. Tryb awaryjny (art. 106nf) dotyczy ogłoszonej awarii KSeF i daje 7 dni roboczych od jej zakończenia; jeśli w tym czasie pojawi się kolejny komunikat o awarii, licznik biegnie od nowa. Awaria całkowita, ogłaszana w środkach społecznego przekazu, znosi obowiązek przesłania faktury do KSeF w ogóle.
W trybach offline faktura przekazywana nabywcy poza systemem musi być opatrzona dwoma kodami QR: pierwszy pozwala zweryfikować ją w KSeF, drugi potwierdza tożsamość wystawcy i wymaga posiadania certyfikatu KSeF. To detal, który potrafi zaskoczyć w piątek po południu — certyfikat trzeba mieć zanim okaże się potrzebny, a nie w trakcie awarii.
Nie jesteśmy gotowi — cztery typowe sytuacje
Wystawiamy faktury w Excelu albo w Wordzie. To sytuacja najprostsza i najtańsza do naprawienia. Ministerstwo Finansów udostępnia bezpłatną Aplikację Podatnika KSeF oraz Aplikację Mobilną KSeF, w których można wystawiać i odbierać faktury w schemacie FA(3) bez żadnej integracji i bez opłat. Nie mają funkcji księgowych — nie policzą ryczałtu ani nie złożą deklaracji — ale zamykają obowiązek fakturowy od ręki. Firmie wystawiającej kilkanaście faktur miesięcznie to często wystarczy na cały 2026 rok.
Mamy program księgowy, ale bez modułu KSeF. Zacznij od pytania do dostawcy, a nie od projektu: większość polskich platform ma dziś wysyłkę do KSeF, trzeba ją tylko włączyć i skonfigurować uprawnienia. Jeżeli odpowiedź brzmi, że modułu nie będzie, masz trzy wyjścia: zmiana programu, dołożenie osobnej bramki wysyłkowej obok niego albo praca w bezpłatnej aplikacji MF i ręczne przenoszenie danych do księgowości. Trzecie działa wyłącznie przy małych wolumenach.
Mamy własny ERP albo CRM, faktury generuje nasz kod. To projekt integracyjny i najlepiej potraktować go jak każdy inny: najpierw środowisko testowe, potem przedprodukcyjne, dopiero potem produkcja. Zakres opisujemy w następnej sekcji. Realny czas to nie tydzień — samo nadanie uprawnień i wyrobienie certyfikatów potrafi zająć kilka dni, zanim powstanie pierwsza linijka kodu.
Rozliczamy się przez biuro rachunkowe. Uprawnienia w KSeF nadaje podatnik, nie biuro. Biuro potrzebuje uprawnienia do przeglądania faktur, a jeśli ma też wystawiać — do ich wystawiania; przy obsłudze wielu klientów uprawnienia mogą być nadawane pośrednio, z flagą pozwalającą na dalsze przekazanie. Jeżeli spółka nie ma kwalifikowanej pieczęci elektronicznej, pierwszą osobę fizyczną wskazuje się zawiadomieniem ZAW-FA składanym w e-Urzędzie Skarbowym; od 1 stycznia 2026 złożenie go przez ePUAP nie jest uznawane za skuteczne doręczenie. Ta jedna osoba nadaje potem kolejne uprawnienia już elektronicznie, wewnątrz systemu.
Jak wygląda integracja z API KSeF?
Ministerstwo Finansów utrzymuje trzy publiczne środowiska: testowe z wersjami release candidate, przedprodukcyjne demo o konfiguracji zbliżonej do produkcyjnej oraz produkcyjne, gdzie faktury mają pełną moc prawną. Na produkcji obowiązuje wyłącznie schemat FA(3) — starszy FA(2) pozostał tylko na środowisku testowym. Warto też wiedzieć, że dane na środowisku testowym nie są izolowane między integratorami, więc do testów używa się losowych numerów NIP, nigdy prawdziwych. Dokumentacja API oraz oficjalne klienty w Javie i C# są publikowane przez MF na GitHubie — zanim napiszesz własnego klienta HTTP, sprawdź, czy nie wystarczy Ci gotowy.
Uwierzytelnienie. Zaczyna się od pobrania jednorazowego wyzwania (challenge), ważnego 10 minut. Potem albo podpisujesz dokument autoryzacyjny podpisem XAdES — kwalifikowanym podpisem osoby, pieczęcią firmy albo certyfikatem KSeF — albo używasz tokena KSeF zaszyfrowanego algorytmem RSA-OAEP z SHA-256. W zamian dostajesz krótko żyjący accessToken, rzędu kwadransa, i refreshToken ważny do 7 dni. Token KSeF nigdy nie ma szerszych uprawnień niż osoba, która go wygenerowała, a zmiana uprawnień unieważnia wydane wcześniej tokeny — to detal, przez który integracja potrafi paść w dniu, w którym ktoś z księgowości odchodzi z firmy.
Wysyłka. Faktury przesyła się w sesji: interaktywnej dla pojedynczych dokumentów albo wsadowej dla paczek. XML szyfruje się kluczem AES-256-CBC, a sam klucz symetryczny — kluczem publicznym Ministerstwa Finansów, algorytmem RSAES-OAEP z MGF1 opartym na SHA-256. Limity, które trzeba znać już na etapie projektowania: faktura bez załącznika do 1 MB, z załącznikiem do 3 MB, maksymalnie 10 000 faktur w jednej sesji, a sesja interaktywna żyje 12 godzin od otwarcia.
Potwierdzenie. KSeF przetwarza fakturę asynchronicznie, więc po wysyłce odpytujesz o status i dopiero wtedy dostajesz numer KSeF oraz UPO, czyli urzędowe poświadczenie odbioru. To UPO, a nie kod odpowiedzi z samej wysyłki, jest dowodem przyjęcia faktury. Projektując integrację, potraktuj to jak maszynę stanów z ponowieniami, a nie jak jedno wywołanie wewnątrz transakcji bazodanowej.
Limity i błędy. Limity żądań są naliczane osobno dla każdej pary: kontekst uwierzytelnienia plus adres IP, w modelu przesuwającego się okna czasowego. Po przekroczeniu dostajesz odpowiedź 429 z nagłówkiem Retry-After, a przy powtarzających się naruszeniach blokada się wydłuża. Praktyczny wniosek: wykładniczy backoff respektujący Retry-After nie jest dobrą praktyką, tylko warunkiem działania. W godzinach nocnych, od 20:00 do 6:00, obowiązują wyższe limity pobierania — to naturalne okno na masową synchronizację faktur zakupowych.
Co zostaje po Twojej stronie. Numer KSeF, UPO, oryginalny XML faktury i informacja o trybie wysyłki — to minimum, które powinno wylądować w Twojej bazie i w Twoim backupie. KSeF przechowuje faktury, ale odtwarzanie z niego rozrachunków w trakcie kontroli albo sporu z kontrahentem jest dużo wolniejsze niż zapytanie do własnej tabeli. Po stronie odbioru zaplanuj przyrostowe pobieranie faktur zakupowych i deduplikację po numerze KSeF — to jedyny identyfikator globalnie unikalny, więc jedyny, na którym da się bezpiecznie oprzeć.
Jedna zapowiedź, która ma znaczenie dla planów: tokeny KSeF miały przestać działać z końcem 2026 roku, ale na konsultacjach 9 czerwca 2026 Ministerstwo Finansów zapowiedziało utrzymanie ich jako stałej metody logowania, z konfigurowalnym okresem ważności i możliwością automatycznego odnawiania. To zapowiedź, nie obowiązujący przepis. Jeśli budujesz integrację dziś, zaprojektuj ją tak, żeby metodę uwierzytelnienia dało się wymienić bez przepisywania reszty.
Gdzie w tym wszystkim jest miejsce dla AI?
Nie tam, gdzie zwykle się je obiecuje. Wystawienie faktury do KSeF to problem integracyjny, nie problem inteligencji: schemat jest sztywny, walidacja leży po stronie systemu, a model językowy niczego tu nie przyspieszy i może tylko dołożyć błędów. Jeśli ktoś sprzedaje Ci „AI, które wystawi faktury do KSeF”, sprzedaje Ci klienta API z ładniejszą nazwą.
Sensowne zastosowania są po drugiej stronie obiegu — tam, gdzie faktur nagle przybyło, bo od lutego wszystkie zakupowe wpadają do jednego kanału. Dopasowanie faktury zakupowej do zamówienia i umowy. Kategoryzacja kosztów oraz wychwytywanie duplikatów, które przy równoległym odbiorze z KSeF i ze skrzynki e-mail zdarzają się częściej, niż wygląda to w teorii. Weryfikacja kontrahenta w rejestrach: przy płatności od 15 000 zł art. 117ba Ordynacji podatkowej i tak wymaga sprawdzenia rachunku na Białej Liście, więc lepiej, żeby robił to system, a nie czyjaś pamięć. I wreszcie odpowiadanie na pytania w rodzaju „ile mam VAT-u do zapłaty w tym miesiącu” na podstawie danych z księgowości, a nie z pamięci modelu.
Dokładnie tak zbudowaliśmy Accounting AI Agent: łączy się z wFirma przez API, sprawdza kontrahentów na Białej Liście i w KRS, a fakturę potrafi wysłać do KSeF w schemacie FA(3) i doczekać urzędowego potwierdzenia. Opisaliśmy go od strony użytkownika w artykule o asystencie podłączonym do wFirma i od strony architektury w tekście o agencie księgowym. Jeśli wpuszczasz AI w obieg dokumentów, pamiętaj też o obowiązkach przejrzystości z AI Act, które działają od 2 sierpnia 2026 — rozłożyliśmy je na części w tekście o stanie AI Act w sierpniu 2026.
Co zrobić w najbliższych tygodniach?
1. Ustal, w której grupie jesteś. Data obowiązku, próg 10 000 zł miesięcznie, faktury konsumenckie, kasy rejestrujące. Bez tego reszta planu jest zgadywaniem, a nie planem.
2. Sprawdź uprawnienia, zanim sprawdzisz oprogramowanie. Kto w firmie ma uprawnienia w KSeF, czy jest ktoś na zastępstwo i czy przy zmianach kadrowych ktokolwiek je odbiera. Jeśli spółka nie ma kwalifikowanej pieczęci elektronicznej, złóż ZAW-FA w e-Urzędzie Skarbowym — nie przez ePUAP.
3. Wyrób certyfikaty KSeF, zanim staną się pilne. Są potrzebne do drugiego kodu QR w trybach offline i do stabilnej integracji systemowej. Limity są hojne dla numeru NIP i wąskie dla osoby fizycznej identyfikowanej numerem PESEL, więc rozpisz z góry, kto czego potrzebuje.
4. Napisz procedurę na wypadek awarii i przetestuj ją. Kto decyduje o przejściu w offline24, skąd biorą się kody QR, kto pilnuje terminu dosłania i kto obserwuje komunikaty o awariach. Ta procedura mieści się na jednej stronie i jest warta więcej niż kolejne szkolenie.
5. Jeśli wystawiasz faktury z załącznikiem, złóż ZGL_ZAL. Realizacja zgłoszenia trwa do trzech dni roboczych, a bez potwierdzenia załącznik po prostu nie przejdzie przez system.
6. Zaplanuj rok 2027 już teraz. Numer KSeF w płatnościach dotyka bankowości i rozrachunków, a nie fakturowania. Jeśli to u Ciebie dwa osobne systemy, jest to projekt na kwartał, a nie na grudzień.
7. Uporządkuj odbiór faktur zakupowych. Przyrostowe pobieranie, deduplikacja po numerze KSeF, jedno miejsce prawdy. To najbardziej niedoceniana część wdrożenia, bo obowiązek odbioru wszedł wcześniej niż obowiązek wystawiania i wielu firmom po prostu umknął.
Czy to jest porada podatkowa?
Nie jest. To zdjęcie stanu na 16 sierpnia 2026 roku, zrobione po to, żeby dało się od czegoś zacząć. Daty i szczegóły KSeF zmieniały się już kilkukrotnie, więc przed decyzjami sprawdź aktualne informacje na ksef.podatki.gov.pl, a sytuację swojej firmy skonsultuj z księgowym lub doradcą podatkowym. Jeśli natomiast pytanie brzmi „jak wpiąć KSeF w nasz ERP tak, żeby nie zatrzymać sprzedaży” — to rozmowa, którą prowadzimy na co dzień. Napisz do nas: development@mi-code.pl.
Najczęstsze pytania
- Od kiedy KSeF jest obowiązkowy?
- Obowiązek wystawiania faktur ustrukturyzowanych w KSeF obowiązuje od 1 lutego 2026 roku dla firm, u których wartość sprzedaży wraz z kwotą podatku przekroczyła w 2024 roku 200 mln zł, oraz od 1 kwietnia 2026 roku dla pozostałych przedsiębiorców, w tym zwolnionych podmiotowo z VAT. Obowiązek odbierania faktur przez KSeF dotyczy wszystkich podatników już od 1 lutego 2026 roku. Podatnicy, u których miesięczna wartość sprzedaży udokumentowana fakturami nie przekracza 10 000 zł brutto, mogą wystawiać faktury poza KSeF do 31 grudnia 2026 roku, a od 1 stycznia 2027 wchodzą w pełny obowiązek. Faktury dla osób fizycznych nieprowadzących działalności gospodarczej trafiają do KSeF dobrowolnie.
- Czy w 2026 roku grożą kary za brak KSeF?
- Kary pieniężne przewidziane w art. 106ni ustawy o VAT nie są stosowane do 31 grudnia 2026 roku — przepisy o nich wchodzą w życie 1 stycznia 2027 roku. Nie oznacza to jednak, że obowiązek nie istnieje: obowiązek wystawiania faktur w KSeF trwa od lutego i kwietnia 2026 roku, a odpowiedzialność karnoskarbowa za nierzetelne fakturowanie działa na zasadach ogólnych. Okres bez kar pieniężnych jest więc czasem na wdrożenie, a nie zwolnieniem z obowiązku.
- Co zrobić, jeśli nasz program księgowy nie obsługuje KSeF?
- Najpierw zapytaj dostawcę — większość polskich platform ma dziś wysyłkę do KSeF i wystarczy ją włączyć oraz skonfigurować uprawnienia. Jeśli modułu nie będzie, są trzy wyjścia. Można korzystać z bezpłatnej Aplikacji Podatnika KSeF lub Aplikacji Mobilnej KSeF udostępnianych przez Ministerstwo Finansów, które pozwalają wystawiać i odbierać faktury w schemacie FA(3) bez integracji. Można dołożyć obok programu osobną bramkę wysyłkową. Można wreszcie zintegrować własny system z API KSeF, co jest projektem informatycznym: uprawnienia, certyfikaty, testy na środowisku testowym i demo, dopiero potem produkcja.
- Co zrobić, gdy KSeF nie działa?
- Ustawa przewiduje cztery sytuacje. Tryb offline24 (art. 106nda) jest dostępny z wyboru podatnika, bez żadnej awarii — fakturę przesyła się do KSeF najpóźniej w następnym dniu roboczym. Tryb offline (art. 106nh) uruchamia niedostępność ogłoszona przez Ministerstwo Finansów, z terminem do następnego dnia roboczego po jej zakończeniu. Tryb awaryjny (art. 106nf) dotyczy ogłoszonej awarii KSeF i daje 7 dni roboczych od jej zakończenia, a kolejny komunikat o awarii uruchamia licznik od nowa. Awaria całkowita, ogłaszana w środkach społecznego przekazu, znosi obowiązek przesłania faktury do KSeF. W trybach offline faktura przekazywana nabywcy poza systemem musi mieć dwa kody QR: weryfikacyjny oraz potwierdzający tożsamość wystawcy, który wymaga certyfikatu KSeF.
- Od kiedy trzeba podawać numer KSeF w przelewie?
- Od 1 stycznia 2027 roku. Obowiązek dotyczy płatności za faktury ustrukturyzowane między czynnymi podatnikami VAT, w tym komunikatu przelewu przy mechanizmie podzielonej płatności; przy płatnościach zbiorczych można posłużyć się identyfikatorem zbiorczym. Numer KSeF to nie Twoja własna numeracja faktury, tylko 35-znakowy identyfikator nadawany przez system po przyjęciu dokumentu. Warto zaplanować z wyprzedzeniem, gdzie ten numer będzie przechowywany i jak trafi do systemu bankowego oraz do rozrachunków — to zwykle inny system niż program do fakturowania.