Program próbował zalogować się do Krajowego Systemu e-Faktur (KSeF) certyfikatem i dostał odmowę. W dzienniku programu widzisz status 460 z opisem „Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu”. Obok jest jeden z sześciu szczegółów, na przykład „Nieważny certyfikat” albo „Niezaufany łańcuch certyfikatów”.
Na tej stronie tłumaczymy każdy z tych szczegółów na proste słowa i podajemy, co zrobić. Faktury nie są tu winne, bo do wysyłki w ogóle nie doszło. Pozostałe kody znajdziesz na stronie z pełną listą kodów błędów KSeF.
Co oznacza kod 460
460 to status logowania. Na końcu logowania program pyta KSeF o wynik (GET /auth/{referenceNumber}). Odpowiedź przychodzi z kodem HTTP 200, a 460 jest wartością pola status.code w jej treści. To nie jest kod HTTP, status faktury ani status sesji. Wśród statusów faktur i sesji w dokumentacji API KSeF 2.0 numeru 460 nie ma.
Oficjalny opis brzmi „Uwierzytelnianie zakończone niepowodzeniem z powodu błędu certyfikatu”. Szczegół przyjmuje jedną z sześciu wartości:
| Szczegół | Co to znaczy w prostych słowach |
|---|---|
| „Nieważny certyfikat” | certyfikat jest poza okresem ważności |
| „Niepoprawny certyfikat” | plik nie nadaje się do logowania |
| „Niezaufany łańcuch certyfikatów” | certyfikat wydał ktoś, komu KSeF nie ufa |
| „Błąd weryfikacji łańcucha certyfikatów” | KSeF nie zdołał sprawdzić, kto wydał certyfikat |
| „Certyfikat odwołany” | certyfikat został unieważniony |
| „Certyfikat zawieszony” | certyfikat jest czasowo wyłączony |
Ważne zastrzeżenie: dokumentacja MF podaje tylko opis i te sześć szczegółów, bez wyjaśnień. Druga kolumna i przyczyny poniżej to nasze odczytanie, nie oficjalny komentarz MF.
Certyfikat występuje tylko przy logowaniu podpisem XAdES. Źródłem podpisu może być certyfikat KSeF do uwierzytelnienia (typ 1), podpis kwalifikowany albo pieczęć kwalifikowana. Przy logowaniu tokenem KSeF certyfikatu nie ma. Odrzucony token daje inny status, opisany w tekście o błędzie 450 w KSeF.
Inna sytuacja: certyfikat jest dobry, ale jego właściciel nie ma uprawnień w NIP-ie, do którego loguje się program. Wtedy wynik to 415 „Uwierzytelnianie zakończone niepowodzeniem” ze szczegółem „Brak przypisanych uprawnień” (błąd 415 w KSeF), a nie 460.
Najczęstsze przyczyny
1. „Nieważny certyfikat”: wygasł albo jeszcze nie działa
Certyfikat KSeF jest ważny najdłużej 2 lata. Okres liczy się od daty początkowej z wniosku, a bez niej od daty wydania. Przed datą początkową certyfikat nie działa. Po upływie okresu też nie. Podpis i pieczęć kwalifikowana mają własny termin ważności, ustalony przez dostawcę.
Jak rozpoznać: otwórz plik certyfikatu w systemowej przeglądarce certyfikatów i sprawdź daty ważności. Pierwszy scenariusz: program działał miesiącami i nagle przestał, bez zmian w ustawieniach. Drugi: nowy certyfikat ma datę początkową w przyszłości, a ktoś wgrał go do programu za wcześnie.
Co zrobić: certyfikatu KSeF nie da się odnowić. Złóż nowy wniosek w Aplikacji Podatnika (menu „Certyfikaty”, „Wnioskuj o certyfikat”) z przeznaczeniem „Uwierzytelnienie w systemie KSeF”. Gdy data początkowa jest w przyszłości, poczekaj do niej. Podpis lub pieczęć kwalifikowaną odnawiasz u dostawcy.
2. „Niepoprawny certyfikat”: zły plik albo zły typ
Dokumentacja nie mówi, co dokładnie kryje się pod tym szczegółem. Z zasad wydawania certyfikatów wynikają dwa podejrzenia.
Pierwsze: program dostał certyfikat typu 2 (offline) zamiast typu 1. Typ 2 służy wyłącznie do podpisywania linku w kodzie QR II na fakturach offline. Do logowania się nie nadaje. Typ widać w samym pliku, w polu keyUsage: certyfikat do logowania ma Digital Signature, a certyfikat offline Non-Repudiation.
Drugie: w programie wskazano nie ten plik. Na przykład plik klucza prywatnego .key w miejscu certyfikatu .crt albo plik uszkodzony przy kopiowaniu.
Co zrobić: sprawdź pole keyUsage. Jeśli masz tylko certyfikat offline, złóż wniosek o certyfikat do uwierzytelnienia. Potem wgraj do programu właściwy plik .crt razem z kluczem .key i hasłem.
3. Łańcuch certyfikatów: „Niezaufany łańcuch certyfikatów” i „Błąd weryfikacji łańcucha certyfikatów”
Każdy certyfikat ma wystawcę. Łańcuch to droga od Twojego certyfikatu do wystawcy, któremu ufa KSeF. W produkcji takim wystawcą jest Centrum Certyfikacji Ministerstwa Finansów (CCK MF) albo kwalifikowany dostawca podpisów i pieczęci.
„Niezaufany łańcuch” czytamy tak: KSeF sprawdził, kto wydał certyfikat, i temu wystawcy nie ufa. „Błąd weryfikacji łańcucha” czytamy tak: samo sprawdzenie się nie udało. W obu przypadkach warto przejrzeć te same trzy źródła:
- Certyfikat z innego środowiska. Produkcja, DEMO i TEST są od siebie niezależne. Certyfikat wydany w DEMO nie zadziała w produkcji i odwrotnie. Jak rozpoznać: w ustawieniach programu wybrane jest inne środowisko niż to, w którym powstał certyfikat. Więcej o środowiskach w poradniku jak zalogować się do KSeF.
- Certyfikat testowy albo zwykły certyfikat komercyjny. Certyfikat przygotowany do prób albo certyfikat niekwalifikowany, na przykład do podpisywania poczty, nie pochodzi od wystawcy, którego KSeF uznaje w produkcji.
- Uszkodzony albo niepełny plik. Jeśli KSeF nie odczyta certyfikatu, nie sprawdzi też jego wystawcy.
Co zrobić: ustal, skąd pochodzi certyfikat i dla jakiego środowiska powstał. Do produkcji użyj certyfikatu z produkcyjnej Aplikacji Podatnika (ap.ksef.mf.gov.pl) albo podpisu lub pieczęci kwalifikowanej. Jeśli plik może być uszkodzony, pobierz certyfikat ponownie z „Listy certyfikatów”. Da się to zrobić tylko dla certyfikatu w statusie „Aktywny”.
4. „Certyfikat odwołany”: ktoś unieważnił certyfikat
W Aplikacji Podatnika ta operacja nazywa się unieważnieniem. Certyfikat KSeF unieważnia tylko jego właściciel, po zalogowaniu środkiem z tym samym identyfikatorem. Przy certyfikacie na PESEL to sama ta osoba. Przy certyfikacie na NIP spółki to ktoś, kto loguje się w jej imieniu, na przykład pieczęcią spółki. Certyfikat podpisu lub pieczęci kwalifikowanej unieważnia jego dostawca.
Jak rozpoznać: w „Liście certyfikatów” certyfikat ma status „Unieważniony”. Niegroźny scenariusz to wymiana. Ktoś wydał nowy certyfikat, unieważnił stary z powodem „Certyfikat został zastąpiony przez inny”, a program dalej używa starego.
Co zrobić: ustal, kto i dlaczego unieważnił certyfikat. Jeśli powodem była wymiana, wgraj do programu nowe pliki. Jeśli powodem było naruszenie bezpieczeństwa klucza prywatnego, nie używaj starego klucza nigdzie i złóż wniosek o nowy certyfikat. Jeśli nikt w firmie nie wie, kto to zrobił, sprawdź, kto ma dostęp do środków logowania firmy.
5. „Certyfikat zawieszony”: certyfikat czasowo wyłączony
Zawieszenie to w świecie certyfikatów stan przejściowy. Certyfikat chwilowo nie działa, a jego wystawca może go później przywrócić albo unieważnić na stałe. Zawieszenie może zlecić właściciel, na przykład po zgubieniu karty z podpisem.
Co zrobić: zapytaj wystawcę. Przy podpisie lub pieczęci kwalifikowanej to dostawca. Przy certyfikacie KSeF sprawdź status w „Liście certyfikatów”. Ustal, kto i po co zlecił zawieszenie. Jeśli certyfikat ma wrócić do użytku, o przywrócenie prosisz wystawcę. Jeśli nie, potrzebny jest nowy certyfikat.
Co zrobić krok po kroku
- Odczytaj szczegół. To on wskazuje, który punkt powyżej Cię dotyczy. Jeśli program pokazuje tylko „460”, poproś dostawcę o pełną odpowiedź z dziennika.
- Ustal, którym certyfikatem loguje się program. Sprawdź typ (pole keyUsage albo nazwa certyfikatu w „Liście certyfikatów”), właściciela i daty ważności.
- Sprawdź środowisko. Certyfikat działa tylko w środowisku, w którym go wydano.
- Sprawdź status certyfikatu. Certyfikat KSeF w „Liście certyfikatów” w Aplikacji Podatnika, podpis lub pieczęć kwalifikowaną u dostawcy. Właściwy status certyfikatu KSeF to „Aktywny”.
- W razie potrzeby wystąp o nowy certyfikat typu 1. Wydanie trwa zwykle kilka minut. Pobierz plik
.crti wgraj go do programu razem z kluczem.keyi hasłem. Cały wniosek krok po kroku opisujemy w poradniku certyfikat KSeF. - Zaloguj się ponownie. Status 200 zamyka sprawę. Status 415 oznacza, że certyfikat jest już w porządku, a brakuje uprawnień w tym NIP-ie.
- Na czas wymiany użyj tokenu KSeF, jeśli Twój program to umożliwia. Token i certyfikat mogą działać równolegle.
- Napisz do MF, gdy wszystko jest sprawdzone. Masz aktywny certyfikat typu 1 z produkcyjnej Aplikacji Podatnika, program loguje się do produkcji, a 460 nie znika? Zgłoś to przez formularz MF albo na adres jpk.helpdesk@mf.gov.pl. Podaj datę i godzinę, NIP, numer referencyjny próby logowania i pełny szczegół.
Jak temu zapobiec
- Pilnuj dat. MF zaleca, żeby przy kolejnym wniosku wskazać jako datę początkową dzień po wygaśnięciu poprzedniego certyfikatu. Wtedy nie ma przerwy w pracy.
- Nazywaj certyfikaty tak, żeby typ był widoczny. Dopisek „logowanie” albo „offline” w nazwie chroni przed wgraniem certyfikatu offline do programu.
- Przechowuj klucz
.keyi hasło jak dane do banku. Klucza nie da się ponownie pobrać z KSeF, a hasła nie da się zresetować.
Dla programisty
Do logowania podpisem XAdES służy certyfikat KSeF typu Authentication (we wniosku „Uwierzytelnienie w systemie KSeF”) albo certyfikat kwalifikowanego podpisu lub pieczęci. Certyfikat typu Offline podpisuje tylko link w kodzie QR II i nie loguje. Program pobiera wyzwanie, buduje żądanie uwierzytelnienia i podpisuje je XAdES-BES kluczem prywatnym certyfikatu Authentication. Ten certyfikat umieszcza w podpisie. Potem odpytuje GET /auth/{referenceNumber}: 100 oznacza logowanie w toku, 200 sukces, a 460 odrzucenie certyfikatu. Nie ponawiaj logowania w pętli tym samym plikiem. Pokaż użytkownikowi szczegół dosłownie i rozróżniaj w komunikatach 460 (certyfikat), 450 (token) i 415 (uprawnienia).
Pozostałe statusy logowania: 425 i 470
425 „Uwierzytelnienie unieważnione”. Szczegół brzmi „Uwierzytelnienie i powiązane refresh tokeny zostały unieważnione przez użytkownika”. Program był już zalogowany, ale to zalogowanie zostało celowo unieważnione. Razem z nim przepadły refresh tokeny, którymi program je przedłuża. To nie jest błąd certyfikatu ani tokenu KSeF. Program musi zalogować się od nowa. Jeśli 425 powtarza się bez wiedzy Twojego zespołu, zapytaj dostawcę programu, kto i kiedy unieważnia zalogowania.
470 „Uwierzytelnianie zakończone niepowodzeniem”. Ten status ma szczegół „Próba wykorzystania metod autoryzacyjnych osoby zmarłej” i dotyczy próby logowania środkami uwierzytelnienia osoby zmarłej.
Chcesz od razu wiedzieć, czy certyfikat działa? FakturaFlow po zapisaniu certyfikatu albo tokenu KSeF od razu loguje się do KSeF i po polsku mówi, czy połączenie działa. Błędy KSeF przy wysyłce też pokazuje po polsku, razem z tym, co poprawić. To niezależne narzędzie, które działa obok Twojego programu księgowego. Załóż konto w FakturaFlow.
Podsumowanie
Status 460 znaczy, że KSeF odrzucił certyfikat, którym program podpisał logowanie. Najpierw przeczytaj szczegół, potem sprawdź typ certyfikatu, daty ważności, środowisko i status w „Liście certyfikatów”. Gdy certyfikat wygasł, został unieważniony albo jest złego typu, rozwiązaniem jest nowy certyfikat typu 1 z produkcyjnej Aplikacji Podatnika. Opisy pozostałych kodów znajdziesz na pełnej liście kodów błędów KSeF.
Stan na październik 2026 r. Opis na podstawie dokumentacji API KSeF 2.0 (wersja 2.8). Kody i komunikaty mogą się zmienić wraz z nowymi wersjami API.