POST /validate/mustang – mit Mustang prüfen

REST-API · POST /validate/mustang · kostenpflichtig

Mit Mustang prüfen: die zweite Meinung zu ZUGFeRD und Factur-X.

Diese Route prüft eine E-Rechnung mit Mustang, dem quelloffenen Prüfprogramm aus dem Umfeld von ZUGFeRD und Factur-X. Sie bekommen dessen Bericht unverändert zurück, als XML oder als Zusammenfassung in JSON.

Mustang prüft bei einer PDF auch die PDF selbst nach PDF/A-3. Das macht die Route nützlich, wenn Sie ZUGFeRD- und Factur-X-Rechnungen vollständig prüfen wollen.


Anfrage

So rufen Sie die Route auf

Adresse: POST https://invoicepress.de/wp-json/einvoice-api/v1/validate/mustang

Schlüssel: Senden Sie Ihren API-Schlüssel in der Kopfzeile Authorization: Bearer <Schlüssel> oder in X-Api-Key. Beide Schreibweisen gelten gleich. Ohne Schlüssel gilt das freie Kontingent von zwei Aufrufen je Route und Tag; ein gesendeter, aber ungültiger Schlüssel bekommt den Status 401.

Inhalt: Der Inhalt der Anfrage ist die Rechnung selbst: als XML (XRechnung, Peppol BIS, CII oder UBL) mit Content-Type: application/xml oder als ZUGFeRD- beziehungsweise Factur-X-PDF mit Content-Type: application/pdf. Aus einer PDF holt der Dienst zuerst die eingebettete Rechnung.

Parameter

format (wahlweise) – json für die Zusammenfassung, xml für den unveränderten Bericht.

X-Filename (Kopfzeile, wahlweise) – Der Dateiname, URL-kodiert. Er erscheint im Bericht.

Diese Route reicht die Rechnung an die Validator Bridge auf unserem Server weiter. Die Bridge ist ein kleines Programm, das dort den Validator betreibt. Die Rechnung geht an diese Bridge und an keinen anderen Dienst.

Die Rechnung wird nur im Arbeitsspeicher verarbeitet und nicht gespeichert. Im Nutzungsprotokoll steht nur ein Fingerabdruck der Anfrage, nie ihr Inhalt.


Antwort

Was zurückkommt

Status 200 – auch bei einer ungültigen Rechnung. Das Ergebnis steht in der Kopfzeile X-Validation-Result mit valid oder invalid und im Bericht.

Ohne Angabe oder mit ?format=json – kommt eine Zusammenfassung als JSON.

Mit ?format=xml – kommt der unveränderte Prüfbericht des Validators.

Fehler – kommen als JSON mit den Feldern error (ein kurzer Code) und message.

Wenn etwas nicht geht

Status 401 – Es wurde ein Schlüssel gesendet, aber er ist nicht gültig.

Status 403 – Die Route ist auf diesem Dienst abgeschaltet.

Status 429 – Das Kontingent ist verbraucht. Die Kopfzeile Retry-After sagt, wann es wieder geht.

Status 502 – Die Validator Bridge hinter dem Dienst antwortet nicht.

Status 503 – Dieser Validator steht auf dem Dienst nicht zur Verfügung.


Beispiel

Ein Aufruf mit curl

curl -X POST "https://invoicepress.de/wp-json/einvoice-api/v1/validate/mustang?format=xml" \
     -H "X-Api-Key: <Schlüssel>" \
     -H "Content-Type: application/xml" \
     --data-binary @rechnung.xml -o bericht.xml

Kosten

Kontingent und Tarif

Die Route ist kostenpflichtig. Mit Schlüssel zählt jeder erfolgreiche Aufruf als eine Prüfung gegen das Monatskontingent Ihres Tarifs; Antworten mit einem Fehlerstatus zählen nicht. Zum Ausprobieren können Sie die Route ohne Schlüssel zweimal am Tag aufrufen. Diese Grenze gilt je Netzadresse und je Route: Zwei Aufrufe dieser Route lassen die übrigen Routen unberührt. Jede Antwort ohne Schlüssel sagt Ihnen in den Kopfzeilen X-RateLimit-Remaining und X-RateLimit-Reset, wie viele Aufrufe heute noch gehen und wann der Zähler zurückgesetzt wird.