e-Invoice REST API

e-Invoice REST API

Für Entwickler · Dienst auf einvoiceTools

E-Rechnungen prüfen, ohne selbst etwas zu betreiben.

Die e-Invoice REST API von einvoiceTools ist eine Schnittstelle, die Ihr eigenes Programm über das Internet aufruft. Sie prüft E-Rechnungen mit VAMPIRE, dem offiziellen KoSIT-Validator oder Mustang, stellt sie als Webseite oder PDF dar, prüft Kennungen bei den zuständigen Registern – nicht nur die USt-IdNr. über VIES, sondern auch SIREN und SIRET über SIRENE, LEI, ABN, NIP, Peppol-ID und EORI – und liefert die Codelisten der EN 16931 zum Nachschlagen.

Kurz erklärt

Sie rufen sie aus Ihrem Skript, Ihrem ERP-System oder einem anderen Programm auf und müssen dafür nichts installieren. Die API läuft unter https://einvoicetools.de/wp-json/einvoice-api/v1/.


Die Routen

Jede Aufgabe hat ihre Route.

Rechnungen prüfen

POST /validate – Prüft eine E-Rechnung und liefert Ergebnis, Befunde mit Erklärung und den Bericht im KoSIT-Format.

POST /validate/multi – Prüft gegen jede Fassung des Regelwerks, die in Frage kommt.

POST /validate/kosit – Prüft mit dem offiziellen KoSIT-Validator.

POST /validate/mustang – Prüft mit Mustang, auch die PDF nach PDF/A-3.

POST /validate/vampire – Prüft mit VAMPIRE über die gemeinsame Schnittstelle der Suite.

Rechnungen darstellen

POST /visualize/html – Macht aus der Rechnung eine lesbare Webseite.

POST /visualize/pdf – Macht aus der Rechnung eine lesbare PDF.

Kennungen prüfen

POST /check – Prüft eine Kennung beim zuständigen Register.

POST /check/batch – Prüft bis zu 1.000 Kennungen in einem Aufruf.

GET /check/{register} – Eine Route je Register, die Kennung in der Adresse.

Dienst

GET /health · /info · /usage – Auskunft über den Dienst; kostet nichts.

Referenzdaten

GET /codelists, /fields, /rules, /identifiers – Codelisten, Felder, Regeln und Kennungsarten der EN 16931. Frei und ohne Schlüssel.

Schlüssel und Kontingent

Was frei ist und was zählt.

Die Referenzdaten, also Codelisten, Felder, Regeln und Kennungsarten, sind frei und brauchen keinen Schlüssel. Alle anderen Routen sind kostenpflichtig. Mit Ihrem API-Schlüssel in der Kopfzeile Authorization: Bearer <Schlüssel> zählen sie gegen das Monatskontingent Ihres Tarifs.

Zum Ausprobieren können Sie jede Prüf- und Darstellungsroute ohne Schlüssel zweimal am Tag aufrufen, je Netzadresse und je Route. Kennungsprüfungen brauchen immer einen Schlüssel; dafür gibt es den kostenlosen Tarif „Frei“, der für etwa zwei Kennungsprüfungen am Tag reicht. Für mehr gibt es Tarife mit einem größeren Monatskontingent. Ihren Schlüssel, auch für den Tarif „Frei“, fragen Sie über das Formular auf der Seite Tarife an.

Jede Antwort sagt Ihnen in ihren Kopfzeilen, wie viel von Ihrem Kontingent noch übrig ist. Ist es verbraucht, gibt es bis zum Monatsende ein kleines Zusatzkontingent, bevor der Dienst mit dem Status 429 antwortet.

Ihre Daten

Rechnungen und Berichte werden nur im Arbeitsspeicher verarbeitet und nicht gespeichert. Im Nutzungsprotokoll steht nur ein Fingerabdruck der Anfrage, nie ihr Inhalt. Für eine Kennungsprüfung geht nur die Kennung an das zuständige Register.


Erste Schritte

Eine Rechnung prüfen mit einem einzigen Befehl.

Sie schicken die Rechnungsdatei selbst als Inhalt der Anfrage. Ohne die Zeile mit dem Schlüssel geht der Aufruf zweimal am Tag kostenlos:

curl -X POST https://einvoicetools.de/wp-json/einvoice-api/v1/validate \
     -H "Authorization: Bearer <Schlüssel>" \
     --data-binary @rechnung.xml

Die Antwort kommt im Format JSON. Das Feld accepted sagt, ob die Rechnung angenommen ist. Dazu kommen das erkannte Prüfszenario, die Befunde mit Erklärung und der vollständige Prüfbericht.

Referenzdaten

Die Codelisten der EN 16931, frei und ohne Schlüssel.

Die europäische Norm EN 16931-1 legt fest, welche Codelisten für jedes Feld mit dem Datentyp „Code“ zulässig sind. Über die API erhalten Sie jede Tabelle vollständig oder einen einzelnen Eintrag daraus, ohne Schlüssel. Jede Antwort nennt den Datenstand der Liste.

Jede Liste hat außerdem eine eigene Seite mit einer durchsuchbaren Tabelle.


Ausprobieren

Alle Routen, direkt im Browser.

Klappen Sie eine Route auf, tragen Sie über „Authorize“ Ihren Schlüssel ein, wählen Sie „Try it out“ und senden Sie die Anfrage. Der Schlüssel bleibt nur in diesem Browserfenster. Die Codelisten gehen immer ohne Schlüssel, die Prüfrouten zweimal am Tag.


Erst ansehen, dann automatisieren.

Zum Lesen einer einzelnen E-Rechnung brauchen Sie keine API: Nehmen Sie den eInvoice Viewer als One-File-App. Die API lohnt sich, wenn Ihr Programm viele Rechnungen oder Kennungen ohne Handarbeit prüfen soll.