Dokumentation

Die jasy CLI

@jasy/cli macht aus jeder ZUGFeRD- oder XRechnung-PDF etwas, das Sie direkt im Terminal lesen, prüfen und exportieren können. Sie läuft vollständig auf Ihrem Rechner. Kein Upload, kein Konto.

Installation

Sie müssen nichts installieren. Starten Sie sie einmalig mit npx:

npx @jasy/cli validate ./invoice.pdf

Wenn Sie sie oft brauchen, installieren Sie sie global und nutzen überall den Befehl jasy:

pnpm add -g @jasy/cli

Die Beispiele unten verwenden den Befehl jasy. Mit npx schreiben Sie stattdessen npx @jasy/cli. Die Ausgaben der CLI sind englisch.

Eine Rechnung lesen

jasy read holt das eingebettete XML aus der PDF und zeigt, was die Rechnung tatsächlich aussagt: die Beteiligten, die Positionen und die Summen. Die CLI versteht CII (ZUGFeRD) und UBL (PEPPOL).

jasy read invoice.pdf
✓ invoice.pdf  ·  ZUGFeRD · EN 16931 (CII)

  invoice    INV-2026-0042
  date       2026-06-21   due 2026-07-05
  from       Northwind Studio GmbH
  to         Globex Corporation Ltd

  1 C62  Website design & build                      9600.00
  12 HUR  Strategy consulting                        1680.00
  ──────────────────────────────────────────────────────────
  net 11280.00   VAT 2143.20   total 13423.20 EUR

Sie brauchen das rohe XML? Mit --xml wird es ausgegeben, mit -o invoice.xml gespeichert.

jasy read invoice.pdf --xml

Eine Rechnung prüfen

jasy validate prüft die Rechnung gegen die echten Regeln: die offiziellen Geschäftsregeln der EN 16931, bei einer XRechnung zusätzlich die deutschen XRechnung-Regeln (BR-DE) und die strukturellen Anforderungen von PDF/A-3. Ist etwas falsch, endet der Befehl mit einem Fehlercode, er passt also direkt in ein Skript oder in die CI.

jasy validate invoice.pdf
  invoice.pdf  ·  XRechnung (CII)

  XRechnung rules     ✓ valid
  PDF/A-3 structure   ✓ 13/13
  PDF/A (veraPDF)     n/a - `jasy verapdf --install` for the full ISO check

  → VALID

Das sind dieselben Schematron-Regeln der KoSIT, die auch die deutschen Behörden verwenden, lokal gegen Ihre eigene Datei ausgeführt. Kein Upload.

Die vollständige PDF/A-Prüfung

Die strukturellen Prüfungen decken den Alltag bereits ab. Für das vollständige Urteil nach ISO 19005 (PDF/A) bindet jasy veraPDF ein, den offiziellen Open-Source-Validator. Der Befehl sagt Ihnen, was vorhanden ist und was als Nächstes zu tun ist:

jasy verapdf
  Java        ✓ 21.0.11
  veraPDF     ✗ not found
  → jasy verapdf --install

veraPDF ist eine Java-Anwendung, eine Java-Laufzeit ist also die einzige Voraussetzung. Installiert wird lokal, ohne Administratorrechte, nach ~/.jasy/verapdf:

jasy verapdf --install

Sobald veraPDF da ist, ergänzt jasy validate automatisch eine vollständige Zeile PDF/A (veraPDF). Sie entscheidet nie allein über das Ergebnis: Die strukturellen Prüfungen tragen den Alltag auch ohne sie.

Die Daten exportieren

jasy export liest die Rechnung zurück in strukturierte Daten und schreibt sie als JSON, als Klartext oder als Tabelle. Das Format folgt der Endung von -o oder der Option -f.

jasy export invoice.pdf -f json          # JSON to stdout
jasy export invoice.pdf -o invoice.xlsx  # an Excel file

JSON liefert das vollständige Rechnungsmodell plus einen berechneten Summenblock, bereit für Ihr eigenes System.

Das interaktive Terminal

Ohne Argumente öffnet jasy das interaktive Terminal. Mit o öffnen Sie eine Rechnung und sehen die Beteiligten, die Positionen, die Summen und jede Prüfung in einer Ansicht. Von dort exportieren j / t / x nach JSON, Text oder Excel.

jasy

Es ist dieselbe Engine wie bei den Befehlen oben, nur mit einer Oberfläche drumherum.