ZUGFeRD FileMaker Add-on im Detail
Schritt-für-Schritt Anleitung mit Screenshots und technischen Erläuterungen
1. Hilfe & Preferences - System-Konfiguration

KonfigurationSystem-URLs und PHP-Endpunkte einrichten
🌐 PHP-Endpunkte konfigurieren
POST-Endpoint: mc_import_post_data.php
XML-Generator: mc_create_ubl_xml.php
Wichtig: URLs müssen erreichbar und korrekt konfiguriert sein
📁 Upload-Verzeichnisse
PDF-Upload: Verzeichnis für Original-PDFs
XML-Export: Verzeichnis für generierte XML-Dateien
ZUGFeRD-Output: Finale kombinierte PDF+XML Dateien
🔧 Preferences-Einstellungen
Zentrale Konfiguration aller System-Pfade und Parameter
🛡️ Sicherheits-Einstellungen
SSL/HTTPS: Verschlüsselte Datenübertragung
Zugriffsrechte: Korrekte Verzeichnis-Berechtigungen
API-Keys: Sichere Authentifizierung
📋 Hilfe-System
Kontexthilfe: Direkte Hilfe zu jedem Feld
Validierung: Real-time Überprüfung der Eingaben
Fehlerbehebung: Detaillierte Error-Messages
🔄 System-Test
Verbindungstest zu allen konfigurierten Endpunkten
2. Payments - Allgemeine Kopfdaten der Rechnung

RechnungsdatenGrundlegende Rechnungsinformationen
🏢 sellerName - Firmenname
Vollständiger Unternehmensname laut Impressum
🏠 Adressdaten
- sellerStreet: Straße + Hausnummer
- sellerPostalCode: PLZ
- sellerCity: Ort
- sellerCountryCode: ISO-3166-1 (DE, AT, CH)
🆔 sellerTaxID - USt-ID
Format: DE999888777 (ohne Leerzeichen)
SchemeID: "VA" für VAT ID
🔢 sellerAssignedID
Interne Verkäufer-ID für eigene Referenz
3. Seller - Verkäufer/Leistungserbringer

KundendatenRechnungsempfänger-Informationen
Wichtiger Hinweis
Bei B2C-Kunden ist die USt-ID oft leer. Bei innergemeinschaftlichen Lieferungen (B2B EU) ist sie jedoch wichtig für die korrekte Steuerbehandlung.
👤 buyerName - Kundenname
Vollständiger Name oder Firmenname des Kunden
🏠 Kundenadresse
Analog zur Verkäuferadresse:
- buyerStreet
- buyerPostalCode
- buyerCity
- buyerCountryCode (ISO-3166-1)
🆔 buyerTaxID - Kunden USt-ID
B2B: Wichtig für EU-Lieferungen
B2C: Meist leer
🔢 buyerID / kunden_nr
Ihre interne Kundennummer beim Lieferanten
Nutzen: Automatisches Matching beim Empfänger
4. Buyer - Kunde/Rechnungsempfänger

ZahlungsdatenBankverbindung und Zahlungsweise
💳 paymentMeansCode - Zahlungsart
Häufige Codes (UN/CEFACT 4461):
- 58 = SEPA-Überweisung (empfohlen)
- 30 = Überweisung (allgemein)
- 48 = Lastschrift
- ZZZ = Sonstige
🏦 payeeFinancialInstitution
Bankname (optional, aber nutzerfreundlich)
🏧 payeeIBAN - IBAN
Format: DE02120300000000202051
Wichtig: Ohne Leerzeichen
🔗 payeeBIC - BIC
SEPA-Inland: Optional
Ausland: Empfohlen
📝 paymentReference
Verwendungszweck: Mind. Rechnungsnummer
Strukturiert: ISO-RF-Credit-Transfer möglich
5. Finance - Zahlung/Bankverbindung

PositionenArtikel und Dienstleistungen im Detail
🔢 positionNumber - Pos.-Nr.
Numerisch als String (1, 2, 3...)
📦 name - Artikelbezeichnung
Kurze, prägnante Produktbeschreibung
🏷️ sellerAssignedID - SKU
Beispiel: SKU-A123, ART-001
📊 quantity - Menge
Format: Dezimal mit Punkt (3, 3.5)
📏 unitCode - Einheit
UN/ECE Rec 20 Codes:
- C62 = Stück
- HUR = Stunde
- KGM = Kilogramm
- LTR = Liter
💰 priceNet - Einzelpreis
Netto-Preis pro Einheit (ohne USt)
📈 taxRateItems - USt-Satz
Steuersatz pro Position (19, 7, 0)
6. Invoice - Summen & Steuerblöcke

BerechnungenSummen und Steueraufschlüsselung
Berechnungslogik
Prüfformel: totalNetAmount + totalTaxAmount = totalGrossAmount
Rundung: Zwei Nachkommastellen auf allen Ebenen
💰 totalNetAmount - Gesamt netto
Berechnung: Summe aller Positionsnettowerte
XML: ram:LineTotalAmount
📊 totalTaxAmount - Gesamtsteuer
Berechnung: Summe aller Steuerbeträge
XML: ram:TaxTotalAmount
💯 totalGrossAmount - Gesamt brutto
Berechnung: Netto + Steuer
XML: ram:GrandTotalAmount
📈 Steuerblöcke pro Satz
taxRate: Steuersatz (19, 7)
taxCategoryCode:
- S = Standard (Inland)
- Z = 0% (Zero rated)
- E = Steuerbefreit
- AE = Reverse Charge
🔢 Pro Steuerblock
taxableAmount: Bemessungsgrundlage
taxAmount: Berechnete Steuer
7. Items - Positionsdaten

PositionenArtikel und Dienstleistungen im Detail
🌐 System-URLs
POST-Endpoint: mc_import_post_data.php
XML-Generator: mc_create_ubl_xml.php
Upload-Pfade: Konfigurierbare Verzeichnisse
📁 Datei-Management
- PDF-Upload Verzeichnis
- XML-Export Verzeichnis
- Kombinierte ZUGFeRD-PDF Ausgabe
✅ Validierung
Pflichtfelder prüfen:
- Rechnungsnummer
- Rechnungsdatum
- Verkäufer-/Käuferdaten
- Mind. eine Position
- Korrekte Summen
🔄 Automatisierung
FileMaker → PHP → ZUGFeRD → PDF
Vollautomatischer Workflow ohne manuelle Eingriffe
Best Practices & Tipps
🎯 Datenqualität
- Eindeutige IDs: Rechnungsnummern systemweit unique
- Codes statt Text: Immer UN/ECE-, ISO-Codes verwenden
- Dezimaltrenner: Punkt, nie Komma verwenden
- Datumsformat: YYYY-MM-DD standardisiert
⚡ Performance
- Batch-Verarbeitung: Mehrere Rechnungen parallel
- Caching: Stammdaten zwischenspeichern
- Validierung: Vor Export, nicht währenddessen
- Fehlerbehandlung: Robuste Error-Logs
KI-Integration & Automatisierung
🤖 ChatGPT + MCP
Automatische Feldbefüllung durch KI-Erkennung von Rechnungsinhalten
🔄 n8n.io Workflows
Automatischer Export zu Buchhaltungssystemen nach ZUGFeRD-Erstellung
☁️ Cloud-Synchronisation
Real-time Sync mit AWS, Google Cloud, Azure für nahtlose Integration
🚀 Bereit für ZUGFeRD in FileMaker?
Implementieren Sie standardkonforme E-Rechnungen mit unserem bewährten Add-on