Jak sprawdzić status faktury w KSeF po wysyłce?
Faktura została wysłana do KSeF, ale nie wiesz, czy jest przyjęta, nadal się przetwarza, czy została odrzucona? Sprawdź status, numer referencyjny, numer KSeF i UPO krok po kroku.

Streszczenie artykułu
Status faktury w KSeF pokazuje, czy dokument jest jeszcze w przetwarzaniu, zakończył się sukcesem, czy wymaga diagnostyki błędu. Sama informacja, że faktura została wysłana, nie wystarcza do uznania jej za przyjętą.
Statusy 100 i 150 to stany przejściowe, 200 oznacza sukces faktury, a statusy błędów wymagają odczytania szczegółów przed jakąkolwiek ponowną wysyłką. Nie myl technicznej odpowiedzi HTTP 200 OK ze statusem faktury zapisanym w polu statusu dokumentu.
Status sesji, numer referencyjny faktury, numer KSeF i UPO to różne elementy tego samego procesu. Dopiero ich połączenie mówi, czy czekać, pobrać potwierdzenie, czy diagnozować odrzucenie.
Status faktury w KSeF w jednym zdaniu
Po wysłaniu XML sprawdź status tej samej faktury lub sesji, nie wysyłaj automatycznie drugiej wersji, przy statusie 200 zapisz numer KSeF i UPO, a przy błędzie odczytaj kod, opis i szczegóły odpowiedzi przed kolejną decyzją.
Faktura została wysłana do KSeF, ale nie wiesz, czy jest już przyjęta, nadal się przetwarza, czy została odrzucona. Ten poradnik prowadzi przez decyzje po wysyłce, od statusu przejściowego po numer KSeF, UPO albo diagnostykę błędu.
Co sprawdzić zaraz po wysyłce
Po wysyłce powinien zostać ślad techniczny i biznesowy. Jeżeli masz tylko ogólny komunikat o wysłaniu, nie masz jeszcze pełnej kontroli nad procesem.
Minimalny zestaw danych to numer referencyjny sesji, numer referencyjny faktury, numer własny faktury z pola P_2, NIP sprzedawcy, data wysyłki, status, ewentualny numer KSeF i informacja o UPO. Te elementy pozwalają wrócić do tej samej operacji, zamiast zgadywać, czy trzeba wysłać dokument ponownie.
| Element | Co oznacza | Do czego służy | Czego z nim nie mylić |
|---|---|---|---|
| Numer referencyjny sesji | Identyfikator technicznej sesji wysyłki | Pozwala sprawdzić status sesji i faktury w tej sesji | Nie jest numerem KSeF |
| Numer referencyjny faktury | Identyfikator dokumentu w sesji | Pozwala sprawdzić status konkretnej faktury | Nie jest numerem własnym faktury |
| Numer własny z pola P_2 | Numer faktury z systemu sprzedawcy | Pomaga odszukać dokument w księgowości | Nie potwierdza przyjęcia przez KSeF |
| NIP sprzedawcy | Kontekst podatnika, w którym wysłano dokument | Pozwala uniknąć sprawdzania w złym podmiocie | Nie zastępuje uprawnień |
| Status faktury | Stan konkretnego dokumentu | Decyduje, czy czekać, pobrać UPO, czy diagnozować błąd | Nie jest statusem HTTP |
| Numer KSeF | Identyfikator przyjętej faktury | Potwierdza, że dokument przeszedł do obrotu w KSeF | Nie wpisuje się go do XML przed wysyłką |
| UPO | Urzędowe potwierdzenie odbioru | Dokumentuje przyjęcie faktury lub sesji | Nie powstaje dla odrzuconej faktury |
Status faktury, status sesji i numer referencyjny
Status sesji mówi o stanie kontenera wysyłki. Status faktury mówi o konkretnym dokumencie w tej sesji. Numer referencyjny pozwala wrócić do operacji technicznej, ale nie jest numerem KSeF.
W sesji interaktywnej możesz śledzić pojedynczy dokument przesłany w ramach sesji. W sesji wsadowej albo przy wielu fakturach trzeba dodatkowo sprawdzić, ile dokumentów przeszło poprawnie, ile zostało odrzuconych i jakie statusy mają poszczególne faktury.
Numer KSeF pojawia się dopiero po przyjęciu faktury. Jeżeli widzisz tylko numer referencyjny, jesteś na etapie śledzenia operacji, a nie na etapie potwierdzonego przyjęcia dokumentu.
| Pojęcie | Zakres | Najważniejsza decyzja |
|---|---|---|
| Status sesji | Cała sesja lub paczka wysyłki | Czy sesja nadal trwa, została przetworzona albo wymaga diagnozy |
| Status faktury | Jeden dokument w sesji | Czy faktura czeka, ma sukces, czy ma błąd |
| Numer referencyjny | Operacja techniczna | Którą sesję lub fakturę odpytać ponownie |
| Numer KSeF | Faktura przyjęta przez system | Jaki identyfikator zapisać w dokumentacji i powiązać z UPO |
| UPO | Potwierdzenie przyjęcia | Co zapisać po sukcesie faktury lub sesji |
Kody statusu faktury i kolejny krok
Najważniejsza zasada po wysyłce brzmi: status przejściowy monitorujesz, sukces archiwizujesz, błąd diagnozujesz. Nie ma jednego przycisku ani jednego kodu, który zastępuje sprawdzenie statusu faktury.
Poniższa tabela jest praktyczną mapą decyzji. Nie zastępuje pełnej dokumentacji API, ale pomaga uniknąć najczęstszych pomyłek po wysyłce XML.
| Status | Co oznacza | Co zrobić | Czego nie robić |
|---|---|---|---|
| 100 | Faktura przyjęta do dalszego przetwarzania | Monitoruj dalej tę samą fakturę lub sesję | Nie wysyłaj od razu drugiej wersji |
| 150 | Trwa przetwarzanie | Czekaj na wynik końcowy i odśwież status w tym samym śladzie | Nie szukaj jeszcze UPO jako potwierdzenia końcowego |
| 200 | Sukces faktury | Zapisz numer KSeF, datę przyjęcia i UPO | Nie myl z odpowiedzią HTTP 200 OK |
| 405 | Przetwarzanie anulowane z powodu błędu sesji | Sprawdź opis i szczegóły, także kontekst sesji | Nie skracaj diagnozy do samego kodu |
| 410 | Problem z uprawnieniami lub zakresem dostępu | Sprawdź NIP, podmiot, sesję i prawo do wystawiania | Nie poprawiaj XML, jeśli problemem jest dostęp |
| 415 | Brak możliwości wysyłania faktury z załącznikiem | Przeczytaj szczegóły odpowiedzi i metadane | Nie zakładaj, że faktura jest przyjęta |
| 430 | Błąd weryfikacji pliku faktury | Sprawdź XML, strukturę, schemat i wymagane dane | Nie szukaj UPO dla odrzuconego pliku |
| 435 | Błąd odszyfrowania pliku | Sprawdź szyfrowanie, metadane i sposób przygotowania pliku | Nie ponawiaj bez sprawdzenia konfiguracji |
| 440 | Duplikat faktury | Sprawdź pierwotny numer referencyjny sesji i pierwotny numer KSeF, jeśli zostały zwrócone | Nie zmieniaj numeru faktury tylko po to, aby ominąć błąd |
| 450 | Błąd semantyki dokumentu | Sprawdź znaczenie danych i zależności wskazane w szczegółach | Nie ograniczaj kontroli do samego XSD |
| 500 lub 550 | Nieznany błąd albo operacja anulowana przez system | Zachowaj identyfikatory i ustal stan poprzedniej operacji | Nie ponawiaj automatycznie bez sprawdzenia, czy nie było sukcesu |
Kiedy czekać, a kiedy reagować
Jeżeli status faktury to 100 albo 150, podstawową reakcją jest dalsze monitorowanie tej samej wysyłki. Nie publikuj wewnętrznie informacji, że faktura jest już przyjęta, ale też nie traktuj jej automatycznie jako odrzuconej.
Jeżeli status faktury to 200, przejdź do numeru KSeF, daty przyjęcia i UPO. To etap porządkowania potwierdzeń, a nie szukania przyczyny błędu.
Jeżeli status wskazuje błąd, nie szukasz UPO. Odczytujesz kod, opis, szczegóły i ewentualne dane duplikatu. Dopiero potem decydujesz, czy poprawić dane, naprawić uprawnienia, odszukać pierwotną wysyłkę, czy ponowić operację techniczną.
Czy status sesji 200 oznacza sukces każdej faktury
Nie traktuj statusu sesji jako automatycznego potwierdzenia sukcesu każdego dokumentu. Sesja i faktury mają odrębne poziomy kontroli. W szczególności przy paczkach trzeba sprawdzić liczniki poprawnie i niepoprawnie przetworzonych faktur oraz listę dokumentów w sesji.
W praktyce nie wystarczy sprawdzić, czy sesja jest przetworzona. Trzeba ustalić, które faktury w tej sesji mają sukces, które mają błąd i jakie identyfikatory trzeba zapisać. To chroni przed sytuacją, w której paczka wygląda na obsłużoną, ale pojedyncza faktura wymaga poprawy.
| Co sprawdzić w sesji | Dlaczego to ważne | Typowy błąd |
|---|---|---|
| Status sesji | Pokazuje stan kontenera wysyłki | Uznanie go za status każdej faktury |
| Licznik faktur poprawnych | Pokazuje liczbę dokumentów przetworzonych poprawnie | Brak porównania z liczbą wysłanych faktur |
| Licznik faktur błędnych | Pokazuje liczbę dokumentów z błędem | Ignorowanie odrzuconych faktur w paczce |
| Lista faktur w sesji | Pozwala sprawdzić status i identyfikatory każdej faktury | Archiwizacja tylko danych sesji |
| Lista faktur odrzuconych | Zawiera szczegóły błędów dla dokumentów niepoprawnych | Ponowna wysyłka całej paczki zamiast diagnostyki konkretnych pozycji |
Brak UPO przy statusie faktury
Brak UPO nie jest samodzielną diagnozą. Przy statusach 100 i 150 UPO nie jest jeszcze punktem docelowym, bo faktura nadal nie ma wyniku końcowego.
Przy statusie 200 sprawdź numer KSeF, wygenerowany link do UPO, termin ważności linku i narzędzie, przez które dokument został wysłany. Link do pobrania UPO jest elementem odpowiedzi statusowej i może wymagać ponownego odpytywania statusu, gdy link wygasł.
Jeżeli problemem jest brak widocznego potwierdzenia, przejdź do poradnika Brak UPO w KSeF. Ten artykuł skupia się na statusie po wysyłce, a nie na pełnej procedurze odzyskiwania UPO.
Status błędu i ponowna wysyłka
Ponowna wysyłka ma sens dopiero po ustaleniu, co stało się z poprzednią operacją. Jeżeli nie wiesz, czy dokument nie dostał już numeru KSeF albo czy API nie wskazało duplikatu, druga wysyłka może tylko pogorszyć ślad zdarzeń.
Przy kodzie 440 najpierw odszukaj pierwotną sesję i pierwotny numer KSeF, jeśli zostały zwrócone. Przy błędach XML, semantyki albo uprawnień popraw źródło problemu, a nie tylko końcowy plik.
Szczegółową procedurę diagnozy znajdziesz w poradniku Faktura odrzucona przez KSeF.
Jak sprawdzić status w aplikacji lub systemie księgowym
W ścieżce użytkowej zacznij od właściwego podmiotu. Wybierz prawidłowy NIP sprzedawcy albo kontekst firmy, bo status odczytany w złym podmiocie nie wyjaśni realnej wysyłki.
Następnie odszukaj fakturę po numerze własnym, dacie, kontrahencie, numerze referencyjnym albo numerze KSeF, jeśli już został nadany. Sprawdź status dokumentu, a nie tylko status ostatniej akcji w interfejsie.
Jeżeli faktura ma sukces, zapisz numer KSeF i pobierz UPO w narzędziu, które obsłużyło wysyłkę. Jeżeli status wskazuje błąd, odczytaj szczegóły. Nie podaję tutaj nazw przycisków jako pewnych, bo interfejsy aplikacji i podręczniki mogą się zmieniać.
Jak sprawdzić status przez API KSeF
W integracji API status sprawdza się etapami. Najpierw ustalasz sesję, potem dokumenty w sesji, a dopiero po sukcesie konkretnej faktury przechodzisz do UPO. UPO nie zastępuje statusu, tylko jest kolejnym krokiem po potwierdzonym sukcesie.
Typowe ścieżki kontrolne obejmują listę sesji, szczegóły konkretnej sesji, listę faktur w sesji, szczegóły konkretnej faktury oraz listę faktur odrzuconych.
Integracja powinna zapisywać co najmniej numer referencyjny sesji, numer referencyjny faktury, status, numer KSeF, datę przyjęcia, błędy i informacje o UPO. Bez tych danych późniejsza obsługa reklamacji, duplikatu albo braku potwierdzenia staje się ręczna.
Jak KSeFGPT porządkuje statusy po wysyłce
W KSeFGPT status po wysyłce ma być czytelny dla osoby, która nie chce analizować surowej odpowiedzi API. Po obsłużeniu wysyłki aplikacja pomaga zobaczyć, czy dokument został przekazany do KSeF, jaki ma status, czy pojawił się numer KSeF oraz czy dla obsługiwanego dokumentu dostępne jest UPO.
To ważne rozróżnienie: KSeFGPT porządkuje statusy i potwierdzenia dla faktur wysyłanych przez tę aplikację. Nie należy zakładać, że narzędzie pobierze UPO dla każdej faktury, która została kiedyś wysłana innym ERP albo inną integracją. W takim przypadku szukaj potwierdzenia w systemie, który wykonał wysyłkę, w Aplikacji Podatnika KSeF albo we własnej integracji API.
Praktycznie oznacza to jeden ślad pracy: faktura, status, numer KSeF i potwierdzenie są powiązane w tym samym kontekście. Dzięki temu łatwiej odróżnić dokument przetwarzany od przyjętego, a błąd od braku widocznego UPO.

Sprawdź status faktury w jednym miejscu
KSeFGPT pomaga wysłać fakturę do KSeF, monitorować status, zapisać numer KSeF i obsłużyć UPO dla dokumentów wysyłanych przez aplikację.
Przejdź do KSeFGPTNajczęstsze pomyłki przy sprawdzaniu statusu
Najczęstsze błędy nie wynikają z jednego trudnego kodu, tylko z pomieszania warstw: HTTP, sesji, faktury, numeru referencyjnego, numeru KSeF i UPO.
| Pomyłka | Dlaczego jest ryzykowna | Jak postąpić poprawnie |
|---|---|---|
| Pomylenie odpowiedzi HTTP 200 OK ze statusem faktury 200 | Endpoint mógł odpowiedzieć poprawnie technicznie, ale faktura może nadal się przetwarzać | Czytaj pole statusu faktury |
| Pomylenie numeru referencyjnego z numerem KSeF | Numer referencyjny nie potwierdza przyjęcia dokumentu | Czekaj na numer KSeF po sukcesie faktury |
| Ponowna wysyłka przy statusie 100 albo 150 | Może doprowadzić do duplikatu albo chaosu w śladzie operacji | Monitoruj tę samą wysyłkę |
| Traktowanie statusu sesji jako statusu każdej faktury | W paczce mogą być dokumenty poprawne i błędne | Sprawdź listę faktur i liczniki |
| Szukanie UPO dla odrzuconej faktury | UPO nie powstaje dla dokumentu, który nie został przyjęty | Diagnozuj kod błędu |
| Ignorowanie licznika faktur błędnych | Możesz przeoczyć faktury wymagające poprawy | Porównaj liczniki z listą dokumentów |
| Przepisywanie statusu z niewłaściwego NIP | Status z innego kontekstu nie dotyczy tej wysyłki | Sprawdź podmiot i uprawnienia |
Najczęściej zadawane pytania
Co oznacza status 100 w KSeF?
Status 100 oznacza, że faktura została przyjęta do dalszego przetwarzania. To nie jest końcowy sukces i nie jest odrzucenie. Monitoruj tę samą fakturę lub sesję, zamiast wysyłać dokument ponownie.
Co oznacza status 150 w KSeF?
Status 150 oznacza trwające przetwarzanie. W tym stanie nie szukaj jeszcze UPO jako potwierdzenia końcowego i nie zakładaj, że dokument został odrzucony.
Czy status 200 oznacza, że mam numer KSeF?
Status faktury 200 oznacza sukces przetwarzania faktury. Wtedy sprawdź numer KSeF, datę przyjęcia i ścieżkę do UPO. Nie myl tego z technicznym HTTP 200 OK zwróconym przez punkt końcowy API.
Czy status sesji 200 oznacza sukces wszystkich faktur?
Nie należy tak tego upraszczać. Status sesji trzeba czytać razem z listą faktur, statusami dokumentów oraz licznikami faktur poprawnych i niepoprawnych. Przy wielu fakturach kontroluj każdy dokument osobno.
Czy brak UPO oznacza odrzucenie?
Nie zawsze. Brak UPO może oznaczać przetwarzanie, zły kontekst NIP, wygasły link, szukanie w złej sesji, ograniczenie narzędzia albo odrzucenie. Najpierw sprawdź status i numer KSeF.
Czy numer referencyjny to numer KSeF?
Nie. Numer referencyjny identyfikuje operację techniczną, sesję albo fakturę w sesji. Numer KSeF identyfikuje fakturę przyjętą przez system i pojawia się dopiero po sukcesie dokumentu.
Czy mogę wysłać fakturę ponownie, gdy status się nie zmienia?
Nie wysyłaj automatycznie drugiej wersji tylko dlatego, że status pozostaje przejściowy. Najpierw sprawdź tę samą sesję, tę samą fakturę, numer referencyjny i ewentualne dane duplikatu.
Jak sprawdzić odrzucone faktury w sesji?
W integracji API sprawdź listę faktur w sesji oraz punkt końcowy odrzuconych faktur. W aplikacji użytkowej szukaj widoku błędów, statusu dokumentu i szczegółów odpowiedzi, a nie samego komunikatu po kliknięciu wysyłki.
Rekomendacja
Po wysyłce faktury do KSeF pracuj według stałej sekwencji: sprawdź status, sprawdź identyfikatory, zdecyduj, czy czekać, pobrać UPO, czy diagnozować błąd. Nie zaczynaj od ponownej wysyłki i nie archiwizuj samego numeru referencyjnego jako dowodu przyjęcia.
Jeżeli potrzebujesz pełnego procesu, zacznij od Wysyłka faktur do KSeF. Po statusie sukcesu przejdź do UPO w KSeF. Gdy potwierdzenia nie widać, użyj poradnika Brak UPO w KSeF. Przy błędzie dokumentu przejdź do Faktura odrzucona przez KSeF.
Monitoruj wysyłkę faktur w KSeFGPT
Wyślij fakturę do KSeF, sprawdź jej status, zapisz numer KSeF i obsłuż UPO dla dokumentów wysłanych przez aplikację.
Przejdź do KSeFGPTŹródła
Artykuł przygotowano na podstawie oficjalnych materiałów Ministerstwa Finansów, dokumentacji CIRF i KSeF API 2.0, zweryfikowanych 2 lipca 2026 r.
- KSeF API 2.0
Ministerstwo Finansów · dostęp: 2 lipca 2026
Dokumentacja statusów faktury i sesji, linków do pobierania UPO, liczników sesji oraz punktów końcowych sprawdzania statusu.
- KSeF API 2.0 - środowisko testowe
Ministerstwo Finansów · dostęp: 2 lipca 2026
Testowa dokumentacja OpenAPI używana do weryfikacji punktów końcowych i statusów integracyjnych.
- CIRFMF/ksef-api
CIRF / Ministerstwo Finansów · dostęp: 2 lipca 2026
Oficjalne repozytorium dokumentacji technicznej KSeF API 2.0 dla integratorów.
- Sesja: sprawdzenie stanu i pobranie UPO
CIRF / Ministerstwo Finansów · dostęp: 2 lipca 2026
Opis sprawdzania statusu sesji, listy faktur w sesji, faktur odrzuconych oraz pobierania UPO faktury i sesji.
- Sesja interaktywna
CIRF / Ministerstwo Finansów · dostęp: 2 lipca 2026
Opis wysyłki faktury w sesji interaktywnej, asynchronicznej weryfikacji i numeru referencyjnego dokumentu.
- Sesja wsadowa
CIRF / Ministerstwo Finansów · dostęp: 2 lipca 2026
Opis wysyłki wielu faktur w pliku ZIP i wykorzystania numeru referencyjnego sesji wsadowej.
- Numer KSeF i zbiorczy identyfikator
Ministerstwo Finansów · dostęp: 2 lipca 2026
Oficjalne wyjaśnienie numeru KSeF, jego nadawania po przyjęciu faktury oraz zwracania w UPO.
- Numer KSeF
CIRF / Ministerstwo Finansów · dostęp: 2 lipca 2026
Techniczny opis struktury numeru KSeF i jego znaczenia jako identyfikatora przyjętej faktury.
- Weryfikacja faktury
CIRF / Ministerstwo Finansów · dostęp: 2 lipca 2026
Opis kontroli technicznych i semantycznych faktury oraz reguł dotyczących duplikatu.
- Zagadnienia techniczne KSeF
Ministerstwo Finansów · dostęp: 2 lipca 2026
Techniczne FAQ dotyczące KSeF, w tym praktycznych zagadnień związanych z UPO.
Zobacz inne artykuły dotyczące krajowego systemu e-faktur
Jak wystawić fakturę VAT w KSeF krok po kroku
Przejdź przez cały proces zwykłej faktury sprzedaży w KSeF: od decyzji, że to faktura podstawowa, po sprawdzenie XML i zapisanie potwierdzeń po wysyłce.
Rodzaje faktur w KSeF: VAT, KOR, ZAL, ROZ i UPR
Czym są typy RodzajFaktury w FA(3), kiedy użyć VAT, KOR, ZAL, ROZ, UPR, KOR_ZAL i KOR_ROZ oraz jak sprawdzić typ przed wysyłką.
KSeF a VAT marża. Jak wystawić fakturę marżową
Jak opisać fakturę VAT marża w FA(3): art. 119, art. 120, P_PMarzy, P_13_11, MR_T, MR_UZ i proces kontroli przed wysyłką.
Faktura zaliczkowa w KSeF dla małej firmy
Jak wystawić zaliczkę w FA(3), kiedy potrzebna jest faktura rozliczeniowa i jak pilnować numeru KSeF, UPO oraz korekt.