FM ZUGFeRD · Einrichtung
ZUGFeRD Creator: Einrichtung und Zuordnung
Wie aus einer Rechnung in Ihrer FileMaker-Lösung eine E-Rechnung wird, Schritt für Schritt
Der Creator erzeugt aus einem vorhandenen Beleg zwei Formate: ZUGFeRD/Factur-X als PDF/A-3 mit eingebettetem XML und XRechnung 3.0 als UBL, für Rechnungen und für Gutschriften. Dafür wird kein Feld Ihrer Lösung geändert. Die ganze Arbeit steckt in einer Zuordnung, die einmal eingerichtet und dann gespeichert wird.

Schritt 1
Server und Schlüssel
Im Reiter „Preferences“ stehen drei Angaben: die Adresse des eigenen Webservers, auf dem die PHP-Komponente liegt, ein API-Schlüssel für den KI-Vorschlag, der optional ist, und der Lizenzschlüssel. Darunter liegen zwei Containerfelder, in denen die erzeugte ZUGFeRD-PDF und die UBL-Datei landen.

Die Grafik rechts im Bild zeigt den Weg: aus der Rechnung im Rechnungsprogramm wird über die Zuordnung nach EN 16931 eine PDF/A-3 mit eingebettetem XML.
Schritt 2
Die Zuordnung
Der Reiter „Zuordnung“ ist die zentrale Seite. Oben rechts steht ein Reiter je Belegart, hier „Rechnung“ und „Gutschrift“, dazu „+ Belegart“.
Links stehen die Einstellungen der Belegart: Name, Typcode (380 für die Rechnung, 381 für die Gutschrift), das Tabellenauftreten des Belegs, das Layout, das Feld mit der Belegnummer, der Container mit der gedruckten Rechnung, die Zielcontainer und die Angaben zu den Positionen.
Rechts liegt die eigentliche Zuordnung, aufgeteilt in fünf Bereiche mit Zähler: Beleg 15/17, Verkäufer 9/10, Käufer 7/7, Zahlung 4/5, Positionen 8/9. Jede Zeile ist ein Wert der E-Rechnung, mit seiner Nummer aus der Norm (BT-1, BT-2, BT-5 und so fort) und einer kurzen Erklärung. Daneben das Eingabefeld: dort steht ein Feld der eigenen Lösung, eine FileMaker-Formel oder ein fester Wert. Die kleine Marke dahinter sagt, was es ist:
| Marke | Bedeutung |
|---|---|
| FELD | Ein Feld der eigenen Lösung, etwa RECHNUNG::#RechnungNr |
| FORMEL | Eine FileMaker-Formel, etwa eine Fallunterscheidung für die Währung |
| KONSTANTE | Ein fester Wert in Anführungszeichen, etwa "DE" als Landcode |
| LEER | Nicht zugeordnet. Bei Pflichtangaben ist das ein offener Punkt |
Pflichtangaben sind markiert, ebenso die Angaben, die nur für die XRechnung Pflicht sind, etwa Leitweg-ID, Ansprechpartner, Telefon und E-Mail des Ausstellers.
Die Vorschau
Ganz rechts steht die Spalte „Vorschau“. Wer unten eine Belegnummer eingibt und „Vorschau“ drückt, sieht je Zeile den echten Wert dieses Belegs, bevor die erste Rechnung entsteht. Unten links steht das Ergebnis, im Bild „Vorschau für RE602127: 48 Werte, 7 leer.“ So sieht man vor dem ersten Test, ob die Zuordnung trägt.
Schritt 3
Der KI-Vorschlag
Statt die Zuordnung von Hand zu füllen, drückt man unten „KI-Vorschlag“. Die Software schickt die Namen und Typen der Felder an den eigenen Server, der fragt ein Sprachmodell. Zurück kommt je Wert ein Vorschlag mit Begründung.

Im Bild ist der Bereich „Verkäufer“ zu sehen. Rechts steht je Zeile die Herkunft und die Sicherheit, „KI · hoch“ oder „KI · mittel“, darunter die Begründung im Klartext, etwa „USt-IdNr. des Ausstellers“ oder „kein Landcodefeld beim Verkäufer, deutsche Firma“. Findet die KI nichts, steht dort in Rot „KI · niedrig · nichts gefunden“.
Was sich gegenüber dem gespeicherten Stand ändert, bekommt die Marke „GEÄNDERT“ oder „NEU“. Der alte Wert steht durchgestrichen daneben, ein kleiner Knopf „zurück“ stellt ihn wieder her. Unten steht die Bilanz, im Bild „29 von der KI, 14 über den Namen, 5 offen, prüfen und speichern.“
Wichtig: Übertragen werden nur Feld- und Tabellennamen, keine Rechnungsdaten. Der API-Schlüssel gehört dem Kunden, die Funktion ist optional.
Schritt 4
Weitere Belegarten
Jede Belegart hat ihren eigenen Reiter und ihre eigene Zuordnung. Die Gutschrift trägt den Typcode 381, und bei ihr ist „Bezug auf Rechnung“ (BT-25) gefüllt, der Verweis auf die Ursprungsrechnung.


Eine neue Belegart entsteht über „+ Belegart“: links Name und Tabellenauftreten eintragen. Beim Tippen schlägt die Software alle Tabellenauftreten der angebundenen Lösung vor. Dieselbe Hilfe gibt es in jedem Zuordnungsfeld für die Feldnamen.
Schritt 5
Sichern und übertragen
Mit „Export“ lässt sich die gesamte Zuordnung als JSON anzeigen und kopieren, mit „Import“ wieder einlesen. Damit sichert man eine fertige Einrichtung oder überträgt sie in eine andere Installation.

Schritt 6
Testen
Oben links stehen „Test PDF“ und „Test UBL“ mit einem Feld für die Belegnummer. Beide erzeugen die Datei genau so, wie es das Rechnungsprogramm später tut. Das Ergebnis landet in den Containerfeldern aus Schritt 1: links die fertige ZUGFeRD-PDF, die aussieht wie die gewohnte Rechnung und das XML im Inneren trägt, rechts die UBL-Datei der XRechnung.

Schritt 7
Einbau in die eigene Lösung
In der eigenen Lösung genügt ein Knopf, der ein Script mit drei Angaben aufruft: Belegart, Belegnummer und Format. Zurück kommt die fertige Datei.
- Kein Feld der eigenen Lösung muss geändert werden.
- Keine Hilfsfelder, keine Layouts mit Feldern.
- Was sich ändert, ändert sich in der Zuordnung, nicht im Rechnungsprogramm.
Die andere Richtung
Eingehende Rechnungen lesen
Der Creator schreibt E-Rechnungen. Hereinkommende Rechnungen liest der ZUGFeRD Reader, der dieselbe Serverkomponente nutzt und in der ZUGFeRD Suite gleich mit dabei ist. Er nimmt an, was auf dem Markt unterwegs ist: ZUGFeRD und Factur-X als PDF/A-3 mit eingebettetem XML, XRechnung als UBL, Rechnung und Gutschrift, sowie reines CII-XML. Der Server erkennt selbst, was er bekommt.

Herauskommt eine lesbare Ansicht des Belegs, dazu die Prüfung: Pflichtangaben vollständig, Summen rechnen sich, bei ZUGFeRD zusätzlich das Schema. Für UBL liegt kein Schema im Paket, geprüft werden dort Pflichtangaben und Rechenregeln. Eine Gutschrift mit Typcode 381 läuft genauso durch, mit Bezug auf die ursprüngliche Rechnung. Wird derselbe Beleg ein zweites Mal eingelesen, meldet der Reader „Schon im Eingang“.


Was danach mit dem Beleg geschieht, entscheidet Ihre Lösung. Der Reader legt ihn im Eingang ab, prüft ihn und stellt ein JSON bereit. An der Stelle übernimmt ein Script, in dem Ihre Warenwirtschaft daraus einen Eingangsbeleg, eine Freigabe oder eine Übergabe an ein anderes System macht.


Eingerichtet wird er wie der Creator, mit der Adresse des eigenen Servers und dem Lizenzschlüssel. Zwei Testknöpfe zeigen nach der Installation gleich, ob die Verbindung steht.
Normtreue
Formate und Prüfung
| Format | Was erzeugt wird |
|---|---|
| ZUGFeRD / Factur-X | PDF/A-3 mit eingebettetem XML, Profil EN 16931 |
| XRechnung 3.0 | UBL als reines XML |
| Belegarten | Rechnung (Typcode 380) und Gutschrift (Typcode 381), weitere frei anlegbar |
Die Software ist entwickelt und getestet gegen die offiziellen Prüfregeln, den CEN-Schematron der EN 16931 und die Prüfregeln der XRechnung. Im Betrieb prüft der Server die Pflichtangaben und errechnet die Summen.
Datenhaltung
Wo die Daten liegen
Die PHP-Komponente läuft auf dem Server des Kunden, im Haus oder beim eigenen Hoster. Keine Cloud, keine Telemetrie, keine Aktivierung über das Netz. Der Lizenzschlüssel wird auf dem Server des Kunden geprüft, ohne Verbindung nach außen. Rechnungsdaten verlassen das Haus des Kunden nicht.
Voraussetzungen
Was Sie brauchen
| FileMaker | FileMaker Pro ab Version 19 |
|---|---|
| Server | Webserver mit PHP 8.1 oder neuer. Zum Ausprobieren genügt Laravel Herd auf dem eigenen Rechner |
| KI-Vorschlag | Ein eigener API-Schlüssel, optional |
Fristen
Ab wann es gilt
- Seit 2025 muss jedes Unternehmen E-Rechnungen empfangen können.
- Ab 1. Januar 2027 müssen Unternehmen mit mehr als 800.000 Euro Vorjahresumsatz E-Rechnungen ausstellen.
- Ab 1. Januar 2028 gilt das für alle.