Handbuch
eInvoice Validator for KoSIT (App)Installieren, arbeiten, einstellen
invoicePress / Handbücher / eInvoice Validator for KoSIT (App)

eInvoice Validator for KoSIT (App) – Handbuch

Gilt für Fassung 2.0.0. Stand 28.10.2026.

1 · Überblick

Die App eInvoice Validator for KoSIT ist eine Seite, die ohne Installation im Browser läuft. Sie legen eine E-Rechnung auf die Seite, den KoSIT-Validator prüft sie, und der Prüfbericht erscheint darunter. Zu jedem Befund nennt der Bericht das betroffene Feld der Rechnung und erklärt die Regel in Klartext.

Die App enthält keinen Validator. Sie schickt die Rechnung an die Quelle ihrer Prüfung. Das ist die Validator Bridge, ein kostenloses Programm, das den KoSIT-Validator auf Ihrem Rechner oder auf einem Server startet und über HTTP anbietet, eine Website mit dem Plugin eInvoice Validator for KoSIT oder eine Website mit der eInvoice API wie invoicePress.de. Alle drei bieten dieselben Adressen an. Die Quelle schickt den Bericht zurück, und die App zeigt ihn an. Ohne Quelle prüft die App nichts; kein anderer Validator springt ein.

Achtung: Die Rechnung geht an die Quelle, die in den Einstellungen der App steht, und an keine andere Stelle. Wie ausgeliefert ist das die Bridge auf demselben Rechner (http://127.0.0.1:8090).

Was die App kann:

  • Sie nimmt XML-Rechnungen sowie ZUGFeRD- und Factur-X-PDFs per Ziehen und Ablegen, per Dateiauswahl oder aus der Zwischenablage an.
  • Sie zeigt den Bericht des KoSIT-Validators mit Urteil, Befunden, Feldnamen, Erklärungen und dem Inhalt der Rechnung.
  • Sie bietet den unveränderten Bericht als report.xml zum Herunterladen an.
  • Sie spricht Deutsch, Englisch und Französisch.
  • Sie liegt als Ordner und zusätzlich als eine einzige Datei vor.

Was die App nicht kann:

  • Ohne eingetragene und erreichbare Quelle prüft sie nichts. Die Seite sagt dann, dass keine Quelle eingetragen ist oder dass der Prüfdienst nicht erreichbar war.
  • Sie installiert weder die Bridge noch den Validator.

Voraussetzungen:

WasAnforderung
Browserein aktueller Chrome, Edge, Firefox oder Safari mit eingeschaltetem JavaScript
Quelleeine Validator Bridge ab Fassung 1.1.0 mit geladenem KoSIT, eine Website mit dem Plugin eInvoice Validator for KoSIT ab Fassung 2.0.0, oder eine Website mit der eInvoice API ab Fassung 2.0.0, der eine solche Bridge angeschlossen ist
Javaauf dem Rechner, auf dem die Bridge läuft, Fassung 11 oder neuer

2 · Die App aufstellen

Als Ordner

Der Ordner bringt die Schriften, die Gestaltung und den Regelkatalog mit. Wie ausgeliefert lädt er nichts von einer Website.

Als einzelne Datei

Die einzelne Datei bringt Englisch und die Gestaltung Kit H mit. Weitere Sprachen, die Regelkataloge, die Schriften und dieses Handbuch lädt sie von der Website, die in ihren Einstellungen unter site steht. Aus der Rechnung sendet sie dorthin nichts.

In einer Website

Im Ordner examples liegt die Seite embed-one-file-iframe.html. Sie zeigt, wie die einzelne Datei in einem Rahmen auf einer Seite Ihrer Website erscheint, ohne eigene Bildlaufleiste und mit dem Hintergrund Ihrer Seite.

3 · Die Validator Bridge einrichten

Die Bridge hat ein eigenes Handbuch (README.de.md in ihrem Paket). Für diese App kommt es auf drei Punkte an.

Wie Sie die App öffnenWas in allowed.origins stehen muss
über http://localhost oder http://127.0.0.1nichts, eine Bridge im lokalen Betrieb lässt diese Seiten immer zu
über die Adresse einer Websitedie Adresse der Website mit https:// und ohne Schrägstrich am Ende, zum Beispiel https://example.com
mit einem Doppelklick vom eigenen Rechnernull

Wichtig: Eine Seite, die mit einem Doppelklick vom Datenträger geöffnet wird, meldet dem Browser die Herkunft null. Die Bridge weist eine solche Anfrage ab, solange null nicht in allowed.origins steht. Die Seite meldet dann, dass die Bridge nicht erreichbar war, denn der Browser verrät ihr den Grund nicht. Tragen Sie null nur auf einem Rechner ein, auf dem Sie selbst arbeiten: Jede Datei, die Sie dort öffnen, darf die Bridge dann ansprechen.

Statt einer Bridge: eine Website

Eine Website, auf der das Plugin eInvoice Validator for KoSIT mit einem funktionierenden KoSIT läuft, bietet dieselbe Prüfung an. Tragen Sie unter sources.kosit als url ihre Adresse mit /wp-json/einvoice/v1 am Ende ein, zum Beispiel https://example.com/wp-json/einvoice/v1. Die Website prüft für jeden Besucher im Rahmen des Tageslimits, das ihr Plugin für Gäste festlegt; eine Rolle, die in der Tabelle „Tägliche Uploads je Rolle“ auf 0 steht, hat keinen Zugang.

Bietet eine Website die eInvoice API an, etwa invoicePress.de, tragen Sie als url deren Adresse mit /wp-json/einvoice-api/v1 am Ende ein und als key Ihren API-Schlüssel dieser Website. Damit der Browser die Antwort lesen darf, muss die eInvoice API die Seite der App unter ihren erlaubten Herkünften führen.

Wichtig: Eine Seite, die vom Datenträger geöffnet wurde, nimmt eine Website ohne Schlüssel nie an, und eine eInvoice API nimmt sie überhaupt nicht an. Öffnen Sie die App dafür über eine Adresse wie http://localhost/…, oder nutzen Sie eine Validator Bridge mit null in allowed.origins.

4 · Eine Rechnung prüfen

Viele Rechnungen auf einmal: die Stapelprüfung

Über dem Ablagefeld stehen zwei Reiter, Einzelprüfung und Stapelprüfung. Die Stapelprüfung ist für alle, die mehr als eine Rechnung prüfen: das Unternehmen, das den Eingang eines Monats im Überblick sehen will, und den kleinen Betrieb, der seinen Monatsordner einmal durchsieht.

Eine PDF ohne eingebettete Rechnung, etwa eine eingescannte Rechnung, steht als keine E-Rechnung in der Übersicht, damit klar ist, dass sie nicht geprüft wurde. Ein Stapel nimmt höchstens 500 Dateien.

Bittet der Prüfdienst um eine Pause, weil zu viele Prüfungen in kurzer Zeit kamen, wartet die Stapelprüfung die genannte Zeit ab und macht dann weiter; über dem Balken steht, wie lange. Ist das Kontingent für den Tag aufgebraucht, hält der Stapel an, und die übrigen Rechnungen stehen als nicht geprüft in der Übersicht.

Im eInvoice Viewer

Die App bringt den Knopf Mit KoSIT prüfen für die App „eInvoice Viewer for PEPPOL & EN16931“ ab Fassung 3.0.0 mit. Der Viewer schickt die Rechnung, die er gerade zeigt, an die Quelle, die in seinen eigenen Einstellungen für KoSIT steht, und der Bericht erscheint im Viewer in einem eigenen Reiter „KoSIT Validator“.

Der Viewer im Ordner lädt nichts aus dem Internet. Deshalb zeigt sein Bericht die Meldungen des Validators ohne die Erklärungen in Klartext; die volle Ansicht mit Erklärungen hat diese App.

5 · Einstellungen

Alle Einstellungen stehen in der Datei config.js im Ordner der App, bei der einzelnen Datei im Block ganz oben in der Datei.

EinstellungBedeutung
sources.kosit.urldie Adresse der Quelle: eine Validator Bridge, eine Website mit dem Validator-Plugin ( Adresse mit /wp-json/einvoice/v1 am Ende ) oder eine Website mit der eInvoice API ( Adresse mit /wp-json/einvoice-api/v1 am Ende ). Wie ausgeliefert http://127.0.0.1:8090, die Bridge auf diesem Rechner. Leer bedeutet: keine Quelle, die Seite prüft nichts.
sources.kosit.keybei einer Bridge auf einem Server einer der Schlüssel aus api.keys ihrer Einstellungen, bei einer eInvoice API Ihr API-Schlüssel dieser Website. Eine Website mit dem Validator-Plugin braucht keinen Schlüssel.
langleer für die Sprache des Browsers, sonst de, en oder fr.
designKitdie Gestaltung: h, a oder s.
site, siteNamedie Website, die die Seite nennt und von der die einzelne Datei ihre Daten lädt.
limittrue fragt vor jeder Prüfung das Tageslimit der Website ab.

Achtung: Der Schlüssel in sources.kosit.key ist im Browser nicht geheim. Jeder, der die Seite öffnet, kann ihn lesen. Er hält nur beiläufigen Missbrauch fern; eine Bridge im Internet braucht zusätzlich allowed.origins und eine Begrenzung der Aufrufe im Webserver.

6 · Was mit der Rechnung geschieht

  • Die Rechnung geht als Datei an die Quelle unter sources.kosit.url. Sie prüft die Rechnung und vergisst sie danach.
  • Den Bericht liest und erklärt die Seite im Browser.
  • Die App sendet die Rechnung an keine andere Stelle. Die einzelne Datei lädt Sprachen und Regelkataloge von der Website unter site, sendet dorthin aber nichts aus der Rechnung.

7 · Wenn etwas nicht klappt

Was die Seite meldetWas zu tun ist
Der Prüfdienst unter … war nicht erreichbar.Prüfen Sie sources.kosit.url. Eine Bridge muss laufen und die Seite in allowed.origins erlauben; eine eInvoice API muss die Seite unter ihren erlaubten Herkünften führen (Kapitel 3).
Der Prüfdienst hat mit Status 401 geantwortet.Der Schlüssel in sources.kosit.key fehlt oder ist falsch, oder eine Seite vom Datenträger hat eine Website ohne Schlüssel gefragt.
Der Prüfdienst hat mit Status 403 geantwortet.Die eInvoice API hat diese Prüfung abgeschaltet, oder die Website lässt Gäste nicht prüfen.
Der Prüfdienst hat mit Status 429 geantwortet.Das Tageslimit der Website ist aufgebraucht. Die Meldung nennt es; der Zähler beginnt um Mitternacht neu.
Für diese Prüfung ist keine Quelle eingetragen.Tragen Sie unter sources.kosit.url in config.js eine Adresse ein (Kapitel 5).
Der Prüfdienst hat mit Status 503 geantwortet.KoSIT ist in der Quelle nicht verfügbar: in der Bridge nicht geladen, der eInvoice API ist keine Bridge angeschlossen, oder die Website hat kein funktionierendes Validator-Plugin. Prüfen Sie den Pfad in ihrer Einstellungsdatei und /info.
Dieses PDF enthält keine Rechnungs-XML.Das PDF ist keine ZUGFeRD- oder Factur-X-Rechnung.
Der Regelkatalog konnte nicht geladen werden.Der Bericht ist vollständig, nur ohne Erklärungen. Die einzelne Datei braucht dafür eine Verbindung zur Website unter site.