Zum Hauptinhalt springen
KSeF 2.0 · Versand der Rechnung

KSeF-Ausnahmen beim Rechnungsversand: 21405, 21180, 21184 und die übrigen

Diese Codes kommen sofort, als HTTP-400-Antwort auf den Rechnungsversand, noch bevor KSeF den Inhalt prüft. Darin unterscheiden sie sich von Status wie 450, die später kommen. In Odoo sehen Sie sie zusammen mit der vollständigen Antwort von KSeF.

FlexigoTech · Verantwortlich: Víctor Gómez · Aktualisiert am 5. November 2026

Das Wichtigste

Versionen
Odoo 17, 18, 19 und 20
Geprüft
im Quellcode des Moduls, Version 20.0 · in den Quellen am Ende
Lesezeit
4 Min.

So sehen Sie sie in Odoo

Wenn KSeF die Anfrage ablehnt, zeigt l10n_pl_edi in Odoo 18, 19 und 20 an der Rechnung „Error when sending invoices to the KSeF“ und darunter „KSeF API Error: “ mit der Antwort genau so, wie sie eingegangen ist, einschließlich exceptionCode. In Odoo 18 und 19 lautet die Meldung auf Polnisch: „Podczas wysyłania faktur do KSeF wystąpił błąd“ und „Błąd API KSeF: …“. Lehnt KSeF schon das Öffnen der Sitzung ab, beginnt die Meldung mit „Failed to open KSeF session: “. Die Rechnung erhält keinen KSeF-Status. Nach der Korrektur senden Sie sie daher wie zuvor.

Karte der KSeF-Ausnahme 21405 mit den Codes des Versands
Der Code 21405 mit seiner Beschreibung aus der API und den übrigen Ausnahmen, die der Versand einer Rechnung in einer interaktiven Sitzung zurückgibt.

Codes, Texte und was zu tun ist

CodeText von KSeFWas zu tun ist
21405„Błąd walidacji danych wejściowych.“ (Fehler bei der Validierung der Eingabedaten), details des ValidatorsLesen Sie die details; das Beispiel der Dokumentation lautet „Wskazany kod formularza nie jest wspierany.“ (Formularcode wird nicht unterstützt).
21001„Nieczytelna treść.“ (unlesbarer Inhalt), details mit einer BeschreibungKSeF konnte die Anfrage nicht lesen; in der API 2.9.0 dokumentiert, wurde früher ebenfalls zurückgegeben.
21155„Przekroczono dozwoloną liczbę faktur w sesji.“ (zu viele Rechnungen in der Sitzung)Eine Sitzung nimmt bis zu 10.000 Rechnungen auf; es ist eine neue Sitzung nötig.
21173„Brak sesji o wskazanym numerze referencyjnym.“ (keine Sitzung mit dieser Referenznummer)KSeF kennt die im Unternehmen gespeicherte Sitzung nicht; Odoo ersetzt sie nicht von selbst (siehe unten).
21180„Status sesji nie pozwala na wykonanie operacji.“ (Sitzungsstatus erlaubt die Operation nicht), z. B. „Status sesji {code} uniemożliwia wysyłkę faktur.“Die Sitzung wurde zwischen Prüfung und Versand geschlossen oder ist abgelaufen.
21184„Sesja tymczasowo niedostępna.“ (Sitzung vorübergehend nicht verfügbar), mit details zur WartungKSeF empfiehlt, später erneut zu versuchen oder eine neue Sitzung zu öffnen.
21402„Nieprawidłowy rozmiar pliku.“ (falsche Dateigröße)Die Größenangabe der Anfrage stimmt nicht mit dem Inhalt überein.
21403„Nieprawidłowy skrót pliku.“ (falscher Dateihash)Der SHA-256-Hash stimmt nicht mit dem Inhalt überein.
21166„Korekta techniczna niedostępna.“ (technische Korrektur nicht verfügbar)Betrifft die technische Korrektur einer Offline-Rechnung.
21167„Status faktury nie pozwala na korektę techniczną.“ (Rechnungsstatus erlaubt keine technische Korrektur)Ebenso: Für eine korrekt verarbeitete Rechnung gibt es keine technische Korrektur.

Die Sitzung in Odoo

Odoo speichert die Nummer der interaktiven Sitzung am Unternehmen. Vor dem Versand fragt Odoo bei KSeF den Sitzungsstatus ab: Bei 100, offene Sitzung, wird sie weiterverwendet; andernfalls öffnet Odoo eine neue mit dem Formular FA (3) 1-0E. Deshalb verschwindet der Fehler 21180 meist beim nächsten Versuch. Bei 21173 ist es anders: Beim nächsten Versand fragt Odoo nach derselben Sitzung, erhält denselben Fehler („Failed to check KSeF session: …“) und öffnet keine neue. Die gespeicherte Sitzung wird nur gelöscht, indem Sie das KSeF-Zertifikat in den Einstellungen entfernen und speichern und das Zertifikat danach wieder hinzufügen. Das ergibt sich aus dem Code von Odoo; wir haben es nicht gegen KSeF getestet. Bei 21184 schlägt KSeF eine neue Sitzung vor, doch Odoo öffnet nur dann eine, wenn die gespeicherte Sitzung nicht mehr den Status 100 hat. Wiederholt sich der Fehler, warten Sie, wie die Meldung rät.

Die Codes 21402 und 21403 betreffen Berechnungen, die das versendende Programm selbst ausführt: Odoo berechnet Hash und Größe der Rechnung vor und nach der Verschlüsselung. Bei einem Standard-Odoo stammen sie nicht aus den Rechnungsdaten. Odoo sendet keine technischen Korrekturen von Offline-Rechnungen, daher stammen 21166 und 21167 von einem anderen Programm.

Bevor Sie das Problem melden

  • Kopieren Sie die vollständige Meldung von Odoo, einschließlich des JSON nach „KSeF API Error:“.
  • Notieren Sie den Code und den Text von details.
  • Prüfen Sie, ob der Fehler eine Rechnung oder alle versendeten Rechnungen betrifft.
  • Prüfen Sie, ob er im Produktivsystem oder in der Testumgebung auftritt.
Schema: Was KSeF bei der Ausnahme 21405 zurückgibt und was Odoo 20 anzeigt
Schema auf Grundlage des Codes von l10n_pl_edi in Odoo 20 und der Spezifikation der KSeF-API 2.9.0; durchgestrichen ist, was Odoo nicht speichert oder nicht ausführt.

Status der Sitzung selbst: 440 und 445

Auch die interaktive Sitzung hat einen eigenen Status. 440 „Sesja anulowana“ (Sitzung storniert) mit details „Nie przesłano faktur“ bedeutet, dass in der Sitzung keine Rechnung gesendet wurde; 445 „Błąd weryfikacji, brak poprawnych faktur“, dass keine Rechnung die Prüfung bestanden hat. Odoo prüft nur, ob die Sitzung den Status 100 hat, und zeigt diese daher nicht an. Suchen Sie die Ursache bei den Rechnungsstatus, etwa 450.

Unser Modul Poland KSeF 2.0 Validator versendet keine Rechnungen und sieht diese Codes nicht; mit dem Abonnement von FlexigoTech Cloud prüft es bei Klick auf „Validate FA(3) (FlexigoTech Cloud)“ vor dem Versand die Datei FA(3) gegen das Schema. Dieses Ergebnis hält den Versand durch l10n_pl_edi nicht auf: Eine als „Not valid“ markierte Rechnung wird trotzdem versendet, wenn Sie sie senden.

Weiterlesen

KSeF-Code 450: «Błąd weryfikacji semantyki dokumentu faktury»KSeF-Code 450 lehnt eine FA(3)-Rechnung nach der Prüfung ihres Inhalts ab. Wo der eigentliche Grund steht, was Odoo nicht anzeigt und wie Sie die Rechnung erneut senden.Technische Rechnungsstatus in KSeF: 550, 500, 405, 430 und 435KSeF-Status ohne Bezug zum Rechnungsinhalt: 550 «Operacja została anulowana przez system», 500, 405, 430 und 435. Was Odoo tut und warum der 550 in Sent bleibt.KSeF HTTP 429, 403 und 401: Anfragelimits und verweigerter ZugriffKSeF 2.0 antwortet mit 429 Too Many Requests, 403 mit reasonCode und 401 bei abgelaufenem Token. Limits und Verhalten in Odoo 18, 19 und 20.
Geprüft im Quellcode des Moduls (Version 20.0) und in den verlinkten Quellen

Quellen