430

    Błąd KSeF 430: błąd weryfikacji pliku faktury

    Kod 430 znaczy, że KSeF odrzucił sam plik, zanim zajrzał do treści faktury: plik zaczyna się niewidocznym znakiem BOM albo jego skrót lub rozmiar nie zgadza się z tym, co zadeklarował program. Faktura nie ma numeru KSeF — po poprawce wysyłasz ją ponownie.

    Aktualizacja: 11 października 2026 · Opisy z dokumentacji API KSeF 2.0 (MF) · Przykłady sprawdzone na środowisku testowym KSeF

    Gdzie pojawia się kod 430 — brzmienie z dokumentacji MF

    • Status faktury w sesji

      „Błąd weryfikacji pliku faktury”

      Wykryto BOM w pliku. · Skrót SHA-256 faktury nie jest zgodny z zadeklarowaną wartością: '…'. · Rozmiar faktury nie zgadza się z zadeklarowaną wartością: '…'.

    • Status sesji wysyłki

      „Błąd dekompresji pierwotnego archiwum”

    • Status operacji na uprawnieniach

      „Kontekst identyfikatora nie odpowiada wymaganej roli lub uprawnieniom”

    Trzy komunikaty, które wywołaliśmy na środowisku testowym

    Szczegół w komunikacieCo się stałoCzyja to sprawa
    Wykryto BOM w pliku.Plik zaczyna się 3 bajtami EF BB BF (znacznik kolejności bajtów). KSeF wymaga UTF-8 bez BOM.Twoja, jeśli edytowałeś plik ręcznie; inaczej programu.
    Skrót SHA-256 faktury nie jest zgodny z zadeklarowaną wartością: '…'.Program policzył skrót z innej treści, niż wysłał.Programu wysyłającego.
    Rozmiar faktury nie zgadza się z zadeklarowaną wartością: '…'.Program podał inny rozmiar pliku, niż wysłał.Programu wysyłającego.
    Odpowiedź KSeF dla pliku z BOMGET /sessions/{sesja}/invoices/{faktura} → status 430
    {
      "status": {
        "code": 430,
        "description": "Błąd weryfikacji pliku faktury",
        "details": ["Wykryto BOM w pliku."]
      }
    }

    Środowisko testowe MF, 11.10.2026. Numery referencyjne skróciliśmy, reszta bez zmian.

    Skąd bierze się BOM i jak go usunąć

    BOM dopisują niektóre edytory i eksporty w Windows, gdy plik zapisuje się jako „UTF-8 z BOM” (np. starszy Notatnik, część eksportów z Excela i programów ERP). W edytorze tego nie widać, ale KSeF odrzuca taki plik zawsze — wymaga tego dokumentacja MF.

    1. Otwórz plik XML w Notepad++ albo Visual Studio Code.
    2. Notepad++: menu Kodowanie → Koduj w UTF-8 (bez „BOM”). VS Code: kliknij „UTF-8 with BOM” na pasku stanu → Zapisz z kodowaniem → UTF-8.
    3. Zapisz plik i wyślij go ponownie.

    Jeśli plik generuje program, a błąd się powtarza, zgłoś to dostawcy — program powinien zapisywać XML bez BOM.

    Skrót i rozmiar: dlaczego plik „zmienia się” po drodze

    Przy wysyłce program podaje KSeF skrót SHA-256 i rozmiar faktury, a potem przesyła zaszyfrowany plik. KSeF odszyfrowuje go i porównuje. Różnica pojawia się, gdy program policzy skrót z jednej wersji pliku, a wyśle inną — np. po zmianie końców linii albo kodowania. To zawsze błąd oprogramowania, nie danych faktury. Ponowna wysyłka czasem pomaga; jeśli nie — zgłoś problem dostawcy.

    Inne znaczenia kodu 430

    • Status sesji wsadowej: „Błąd dekompresji pierwotnego archiwum” — paczka ZIP jest uszkodzona albo nie jest ZIP-em.
    • Operacje na uprawnieniach: „Kontekst identyfikatora nie odpowiada wymaganej roli lub uprawnieniom”.

    Pytania o błąd 430

    Czy faktura z błędem 430 jest w KSeF?

    Nie. KSeF odrzucił plik przed sprawdzeniem treści, więc faktura nie ma numeru KSeF. Po poprawce wyślij ją z tym samym numerem.

    Jak sprawdzić, czy plik ma BOM?

    W Notepad++ lub VS Code kodowanie widać na pasku stanu („UTF-8-BOM” albo „UTF-8 with BOM”). W edytorze heksadecymalnym plik z BOM zaczyna się bajtami EF BB BF.