E-Rechnung im B2B: nächste Frist 1. Januar 2027

ZUGFeRD und XRechnung über eine API

Ab dem 1. Januar 2027 müssen Unternehmen mit mehr als 800.000 € Vorjahresumsatz strukturierte B2B-Rechnungen ausstellen, ab dem 1. Januar 2028 alle. invoiceapi.io erzeugt sie aus Ihren Daten — geprüft, abgelegt und nachrechenbar.

Für Entwicklerinnen und Entwickler, die Rechnungen aus einer eigenen Anwendung stellen und Format, Aufbewahrung und Nachvollziehbarkeit nicht selbst bauen wollen.

  • Geprüft mit KoSIT 1.6.2 und veraPDF
  • ZUGFeRD PDF/A-3U und XRechnung 3.0.2
  • Gehostet in Falkenstein, Deutschland

Ein Aufruf. Geprüfte Dokumente zurück.

Ein POST je Rechnung. Die Vorlage legt Layout und Absenderprofil fest; Ihr Datensatz enthält die Rechnung selbst.

POST /v1/templates/{id}/invoices
Ein Endpunkt je Vorlage.
Authorization: Bearer sk_test_…
sk_test_ für Testrechnungen mit Wasserzeichen, sk_live_ für echte. Derselbe Pfad, dieselbe Prüfung.
Idempotency-Key
Senden Sie Schlüssel und Datensatz erneut, bekommen Sie die ursprüngliche Rechnung zurück, keine zweite.
422 application/problem+json
Prüfung fehlgeschlagen: Die Regel-ID kommt zurück, und es wird nichts erzeugt oder abgelegt.

Rechnungsprofil und Vorlage legen Sie einmalig im Dashboard an. Danach ist jede Rechnung ein Aufruf. Der Testmodus ist derselbe Weg mit einem sk_test_-Schlüssel.

curl -X POST https://invoiceapi.io/v1/templates/$TEMPLATE_ID/invoices \
  -H "Authorization: Bearer $INVOICEAPI_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d @rechnung.json

{
  "seller": {
    "name": "Muster Software GmbH",
    "vatId": "DE123456789",
    "electronicAddress": "[email protected]",
    "address": {
      "line1": "Beispielstraße 12",
      "city": "Berlin",
      "postCode": "10115",
      "countryCode": "DE"
    },
    "contact": {
      "name": "Max Muster",
      "phone": "+49 30 1234567",
      "email": "[email protected]"
    }
  },
  "buyer": {
    "name": "Kunde AG",
    "vatId": "DE987654321",
    "electronicAddress": "[email protected]",
    "address": {
      "line1": "Kundenweg 1",
      "city": "München",
      "postCode": "80331",
      "countryCode": "DE"
    }
  },
  "invoice": {
    "number": "R-2026-1001",
    "issueDate": "2026-07-01",
    "dueDate": "2026-07-31",
    "currency": "EUR",
    "buyerReference": "KND-2026-77"
  },
  "items": [
    {
      "name": "Beratung",
      "quantity": "8",
      "unit": "HUR",
      "unitPrice": "120.00",
      "vatRate": "19"
    }
  ],
  "payment": {
    "iban": "DE75512108001245126199",
    "bic": "SOGEDEFF",
    "accountName": "Muster Software GmbH",
    "reference": "R-2026-1001"
  }
}

Schlägt die Prüfung fehl, kommt die Regel-ID zurück — für die 81 katalogisierten Regeln auf Deutsch und Englisch, mit BT-Code und Pfad soweit hinterlegt; für alle anderen der unübersetzte KoSIT-Text. Es wird nichts ausgeliefert und nichts abgelegt.

Ein Datensatz, zwei Formate

Sie senden die Rechnungsdaten einmal. Beide Formate entstehen daraus, werden geprüft und abgelegt.

rechnung.json

Ihre Daten

Absender, Empfänger, Positionen und Zahlungsbedingungen als JSON.

R-2026-1001.pdf

ZUGFeRD

PDF/A-3U mit eingebettetem CII-XML. Menschen sehen ein Dokument, Systeme lesen die Daten.

PDF/A-3U · CII XML

R-2026-1001.xml

XRechnung 3.0.2

Reines XML nach EN 16931 — für die öffentliche Verwaltung und alle Empfänger, die XML erwarten.

XML · EN 16931

Archiv

Jedes Dokument wird gespeichert und beim Abruf nie neu erzeugt. Sie bekommen dieselben Bytes zurück, die geprüft wurden.

SHA-256

Woran Sie das nachprüfen können

Jede Aussage dieser Seite, so formuliert, dass Sie sie selbst nachprüfen können.

Formate
ZUGFeRD · XRechnung 3.0.2
ZUGFeRD als PDF/A-3U (Mustang), XRechnung 3.0.2 als XML. Rechnungswährung ist EUR.
Prüfung
KoSIT 1.6.2 + veraPDF
KoSIT-Validator 1.6.2, Szenario v2026-01-31, dazu veraPDF für die PDF/A-3U-Konformität. Die Prüfung ist ein hartes Tor: fällt sie durch, entsteht keine Datei.
Standort
Falkenstein, Deutschland
Ein Rechenzentrum in Falkenstein, Deutschland. Region und Endpunkt des Objektspeichers werden beim Start geprüft; außerhalb der EU startet die Anwendung nicht.
Aufbewahrung
8 oder 10 Jahre
§ 147 Abs. 4 AO: gerechnet ab Ende des Kalenderjahres, wahlweise 8 oder 10 Jahre. Ein Legal Hold setzt die Löschung aus.
Hash-Kette
SHA-256
Je Organisation eine fortlaufende SHA-256-Kette über Eingabedaten und Ausgabedateien. Eine nachträgliche Änderung fällt beim Nachrechnen auf. GoBD-orientiert.
Fehlermeldungen
Deutsch + Englisch
Die 81 katalogisierten KoSIT-Regeln kommen als Klartext auf Deutsch und Englisch zurück, mit EN-16931-BT-Code und Pfad in Ihrem Datensatz, soweit hinterlegt. Nicht katalogisierte Regeln liefern stattdessen den unübersetzten KoSIT-Rohtext.
Export
ZIP · CSV · Nachweis
Ein ZIP mit Originaldateien, CSV und einem Ketten-Nachweis, den eine Prüferin ohne uns nachrechnen kann.

Sandbox

0 € pro Monat

0 Live-Dokumente pro Monat
1 Rechnungsprofil

Starter

49 € pro Monat (netto)

100 Live-Dokumente pro Monat
1 Rechnungsprofil

Pro

99 € pro Monat (netto)

500 Live-Dokumente pro Monat
5 Rechnungsprofile

Business

249 € pro Monat (netto)

2.500 Live-Dokumente pro Monat
Unbegrenzt viele Rechnungsprofile

Der Testmodus zählt nicht gegen das Dokumentkontingent. Testrechnungen tragen ein TESTRECHNUNG-Wasserzeichen. Alle Beträge netto, zuzüglich Umsatzsteuer.

Der Testmodus ist kostenlos

Ihre erste geprüfte Rechnung beginnt hier

Mit Ihrer E-Mail-Adresse anmelden, Rechnungsprofil und Vorlage anlegen und die API mit einem sk_test_-Schlüssel aufrufen. Testrechnungen durchlaufen dieselbe Prüfung wie Live-Rechnungen und tragen ein TESTRECHNUNG-Wasserzeichen.

  1. Anmelden

    Ein Anmeldelink in Ihr Postfach. Kein Passwort nötig.

  2. Profil und Vorlage

    Absenderdaten und Layout, einmalig im Dashboard angelegt.

  3. Ein API-Aufruf

    Rechnungsdaten senden, geprüfte Dokumente zurückbekommen.

    POST /v1/templates/{id}/invoices