Zum Inhalt springen

Schnellstart: Ihre erste E-Rechnung in fünf Minuten

Sie brauchen curl, ein kostenloses Konto und etwa fünf Minuten. Alles hier läuft in der Sandbox: Testdokumente sind gültige XRechnungen, als Test gekennzeichnet, werden nie berechnet und nach 30 Tagen gelöscht.

  1. Registrieren Sie sich unter /registrieren und bestätigen Sie Ihre E-Mail-Adresse.
  2. Legen Sie einen Verkäufer an – im Portal unter Verkäufer: das Unternehmen, das die Rechnungen ausstellt (Name, Anschrift, USt-IdNr., Bankverbindung). Für den Peppol-Schritt unten braucht er eine Peppol-Adresse, z. B. Schema 9930 mit seiner USt-IdNr.
  3. Erstellen Sie einen Testschlüssel im Portal unter API-Schlüssel: wählen Sie Test. Er beginnt mit fkn_test_ und wird nur einmal angezeigt.
export KEY=fkn_test_…                      # Ihr Testschlüssel
export BASE=https://fakturnaut.com/v1
SELLER=$(curl -s "$BASE/sellers?size=1" -H "Authorization: Bearer $KEY" | jq -r '.items[0].id')
  1. Prüfen Sie eine Rechnung (nichts wird gespeichert). Der Käufer unten ist eine deutsche Behörde mit Leitweg-ID.
cat > invoice.json <<JSON
{"sellerId": "$SELLER", "number": "RE-2026-0001", "issueDate": "2026-10-19",
 "buyerReference": "04011000-12345-34",
 "buyer": {"name": "Stadt Beispiel", "electronicAddress": "04011000-12345-34", "electronicAddressScheme": "0204",
           "address": {"street": "Rathausplatz 1", "city": "Köln", "postCode": "50667", "country": "DE"}},
 "lines": [{"name": "Beratung", "quantity": 10, "unitCode": "HUR", "netPrice": 100.00, "vatRate": 19}]}
JSON
curl -s -X POST $BASE/invoices/validate -H "Authorization: Bearer $KEY" \
  -H 'Content-Type: application/json' --data @invoice.json
# → {"valid": true, "totals": {"amountDue": 1190.00, …}, "findings": []}
  1. Stellen Sie sie aus. Der Idempotency-Key macht Wiederholungen sicher.
curl -s -X POST $BASE/invoices -H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' \
  -H "Idempotency-Key: $(uuidgen)" --data @invoice.json
# → 201 {"id": "…", "documents": [{"format": "xrechnung-ubl", …}, {"format": "xrechnung-cii", …},
#        {"format": "zugferd", …}]}
  1. Laden Sie die XRechnung herunter und stellen Sie sie zu – über Peppol (in der Sandbox simuliert):
curl -s -OJ "$BASE/invoices/<id>/document?format=xrechnung-ubl" -H "Authorization: Bearer $KEY"
curl -s -X POST $BASE/invoices/<id>/deliveries -H "Authorization: Bearer $KEY" \
  -H 'Content-Type: application/json' -d '{"channel":"peppol","recipient":"0204:04011000-12345-34"}'

Fertig. Jeden Endpunkt beschreibt die API-Referenz, die Sie als OpenAPI herunterladen und daraus einen Client erzeugen können; SDKs für TypeScript, PHP, Java und C# werden gerade veröffentlicht. Für den Echtbetrieb erstellen Sie einen Live-Schlüssel und lassen Ihren Verkäufer verifizieren.