---
title: "Quittio: E-Rechnungen für PHP und Laravel (ZUGFeRD, XRechnung, Peppol)"
description: "Open-Source-Bibliothek für PHP und Laravel: E-Rechnungen nach EN 16931 erstellen, mit KoSIT prüfen, als PDF/A-3 ausgeben und eingehende Rechnungen lesen."
canonical_url: "https://quittio.dev/"
locale: de
meta:
  "og:description": "Open-Source-Bibliothek für PHP und Laravel: E-Rechnungen nach EN 16931 erstellen, mit KoSIT prüfen, als PDF/A-3 ausgeben und eingehende Rechnungen lesen."
  "og:image": "https://quittio.dev/og/quittio-de.jpg"
  "og:image:alt": "Quittio: E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert, mit geprüfter Beispielrechnung."
  "og:image:height": "630"
  "og:image:type": image/jpeg
  "og:image:width": "1200"
  "og:title": "Quittio: E-Rechnungen für PHP und Laravel (ZUGFeRD, XRechnung, Peppol)"
  "twitter:image": "https://quittio.dev/og/quittio-de.jpg"
  "twitter:image:alt": "Quittio: E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert, mit geprüfter Beispielrechnung."
---

> Index of every page on this site: [llms.txt](https://quittio.dev/llms.txt)

[**Neu** Quittio 0.7.1 ist da · Open Source (MIT)](https://quittio.dev/changelog)

# E-Rechnungen für PHP und Laravel. Rechtssicher, validiert, archiviert.

Quittio erstellt, prüft, liest und archiviert elektronische Rechnungen nach EN 16931, in jedem PHP-8.3-Projekt und mit eigener Laravel-Integration. ZUGFeRD, XRechnung und Peppol aus einem Datenmodell, geprüft mit den offiziellen Validatoren.

[**Loslegen**](https://quittio.dev/docs/getting-started) [**Dokumentation**](https://quittio.dev/docs)

$`composer require quittio/quittio`

$`composer require quittio/core quittio/country-de`

InvoiceController.phpKopieren$result =Quittio::invoice()->number('RE-2026-0042')->deliveryDate('2026-09-30')->buyer(Party::make('Kunde AG')->vatId('DE987654321')->address('Bahnhofstraße 5', '54321', 'Beispielstadt', 'DE'))->line('Web development', netPrice: '95.00', quantity: 24,unit: UnitCode::Hour)->line('Hosting', netPrice: '49.00')->dueInDays(14)->render();

- EN 16931
- ZUGFeRD / Factur-X
- XRechnung 3.0
- Peppol BIS 3.0
- UBL 2.1
- PDF/A-3b
- KoSIT
- veraPDF
- PHP 8.3+
- Laravel 13

**Wie Quittio arbeitet**

## Deine Daten rein. Gültige E-Rechnungen raus.

Quittio rechnet Summen und Steuer, prüft jede Rechnung in sieben Stufen gegen die offiziellen Regeln und rendert das Format, das dein Kunde braucht.

*Laravel-Apps, andere PHP-Frameworks und reines PHP übergeben Rechnungsdaten an Quittio. Quittio rechnet, prüft in sieben Stufen mit dem KoSIT-Validator und veraPDF und gibt ZUGFeRD, XRechnung 3.0 und Peppol BIS 3.0 sowie PDF, HTML und JSON aus.*

- ### Rechtssicher

  Pflichtangaben nach § 14 UStG, Steuer-Presets für Reverse Charge, Kleinunternehmer und innergemeinschaftliche Lieferungen. Ein Wächter sorgt dafür, dass PDF und XML dieselben Daten zeigen.
- ### Validiert

  Sieben Prüfstufen von der Datenstruktur bis PDF/A-3b. Die offiziellen Regeln laufen im KoSIT-Validator und in veraPDF, lokal und in deiner CI.
- ### Entwicklerfreundlich

  Eine flüssige API mit sinnvollen Standardwerten, in reinem PHP wie in Laravel, dort mit Fakes und Assertions für Pest. Ein paar Zeilen statt eines XML-Projekts.

**So einfach geht es**

## Erstellen, ausgeben, prüfen, lesen.

Echte Beispiele aus der Dokumentation. Kein XML von Hand, keine Rechenfehler.

InvoiceService.php

```
use Quittio\Core\Builder\Party;
use Quittio\Core\Enums\UnitCode;
use Quittio\Laravel\Facades\Quittio;

$result = Quittio::invoice()                 // Verkäufer und Bank aus config/quittio.php
    ->number('RE-2026-0042')
    ->deliveryDate('2026-09-30')
    ->buyer(Party::make('Kunde AG')
        ->vatId('DE987654321')
        ->address('Bahnhofstraße 5', '54321', 'Beispielstadt', 'DE')))
    ->line('Web development', netPrice: '95.00', quantity: 24, unit: UnitCode::Hour)
    ->line('Hosting', netPrice: '49.00')      // Menge 1, USt 19 % als Standard
    ->dueInDays(14)
    ->render();                               // ZUGFeRD: PDF/A-3 mit eingebettetem XML
```

invoice.php

```
use Quittio\Core\Builder\InvoiceBuilder;
use Quittio\Core\Builder\Party;
use Quittio\Core\Enums\PaymentMeansCode;
use Quittio\Core\Enums\UnitCode;
use Quittio\Core\Quittio;
use Quittio\Core\Tax\CountryDefaultVat;
use Quittio\Country\DE\CountryDE;

// einmal: Länderpaket und Standard-USt, statt config/quittio.php
$quittio = Quittio::create([], [new CountryDE]);
InvoiceBuilder::useDefaultVat(new CountryDefaultVat($quittio->countries()));

$invoice = InvoiceBuilder::make()
    ->seller(Party::make('Muster GmbH')
        ->vatId('DE123456789')
        ->address('Hauptstraße 1', '12345', 'Musterstadt', 'DE'))
    ->payment(PaymentMeansCode::SepaCreditTransfer, iban: 'DE02120300000000202051')
    ->number('RE-2026-0042')
    ->deliveryDate('2026-09-30')
    ->buyer(Party::make('Kunde AG')
        ->vatId('DE987654321')
        ->address('Bahnhofstraße 5', '54321', 'Beispielstadt', 'DE')))
    ->line('Web development', netPrice: '95.00', quantity: 24, unit: UnitCode::Hour)
    ->line('Hosting', netPrice: '49.00')      // Menge 1, USt 19 % als Standard
    ->dueInDays(14);

$result = $quittio->make($invoice)->render();   // ZUGFeRD: PDF/A-3 mit eingebettetem XML
```

![Rechnung RE-2026-0042 der Muster GmbH an die Kunde AG über 2.771,51 €, von Quittio mit der Standardvorlage erzeugt](https://quittio.dev/invoices/invoice-de-1200.webp)

**Warum jetzt**

## Die E-Rechnung kommt Schritt für Schritt.

Für inländische Rechnungen zwischen Unternehmen. Ausgenommen sind unter anderem Kleinbetragsrechnungen bis 250 €, Fahrausweise und Rechnungen an Verbraucher.

1. 01.01.2025 ### Empfangen

   Alle Unternehmen in Deutschland müssen E-Rechnungen empfangen können.
2. 01.01.2027 ### Ausstellen ab 800.000 €

   Unternehmen mit mehr als 800.000 € Vorjahresumsatz müssen im Inland E-Rechnungen ausstellen.
3. 01.01.2028 ### Ausstellen für alle

   Alle Unternehmen stellen im inländischen B2B-Bereich E-Rechnungen aus.

[**Was das für deine App bedeutet**](https://quittio.dev/e-rechnungspflicht)

Quellen: § 14 UStG, § 27 Abs. 38 UStG, BMF-Schreiben vom 15.10.2025.

**Funktionen**

## Alles, was eine E-Rechnung braucht.

- [<h3>Ein Datenmodell, alle Formate</h3>

  ZUGFeRD, XRechnung, Peppol, CII und UBL aus denselben Daten. Formatwechsel ist eine Zeile.**Mehr **](https://quittio.dev/formate)
- [<h3>Jedes PHP-Projekt</h3>

  quittio/core läuft in jedem PHP-8.3-Projekt: Symfony, Slim, Shop-Plugin oder eigenes Framework. Laravel ist optional.**Mehr **](https://quittio.dev/ratgeber/e-rechnung-mit-php-ohne-laravel)
- [<h3>Laravel-nativ</h3>

  Facade, Queue, Events, Mail, Storage, Blade und Artisan-Befehle.**Mehr **](https://quittio.dev/funktionen#laravel)
- [<h3>Rechnet selbst</h3>

  Summen, Steuer und Rundung nach den BR-CO-Regeln der EN 16931.**Mehr **](https://quittio.dev/funktionen#rechnen)
- [<h3>PDF-Vorlagen</h3>

  Logo und Farben, einzelne Partials oder ein eigenes Template. DIN 5008 und GiroCode inklusive.**Mehr **](https://quittio.dev/funktionen#pdf-design)
- [<h3>Eingangsrechnungen</h3>

  CII, UBL und ZUGFeRD lesen und prüfen, abgesichert gegen XXE und Zip-Bomben.**Mehr **](https://quittio.dev/funktionen#eingangsrechnungen)
- [<h3>Weitere Belege</h3>

  Angebote, Lieferscheine, Proforma-Rechnungen, Mahnungen und Kontoauszüge.**Mehr **](https://quittio.dev/funktionen#belege)
- [<h3>Testen</h3>

  Factories und Szenarien für Pest und PHPUnit in jedem PHP-Projekt, in Laravel dazu Quittio::fake() und Assertions.**Mehr **](https://quittio.dev/funktionen#laravel)
- [<h3>Länderpakete</h3>

  Deutschland steuerlich geprüft. Dazu Österreich, Belgien, Schweiz und Frankreich, noch ohne steuerliche Prüfung.**Mehr **](https://quittio.dev/funktionen#laender)

**Validierung**

## Fehler beim Rendern, nicht beim Kunden.

Quittio prüft jede Rechnung in sieben Stufen. Die offiziellen Regeln laufen im KoSIT-Validator und in veraPDF.

1. **L1****Struktur**Datenformate, Länder- und Währungscodes, Nachkommastellen
2. **L2****Pflichtfelder**Pflicht- und erlaubte Felder des gewählten Profils
3. **L3****Geschäftsregeln**EN 16931 (BR-…), XRechnung mit Extension und CVD, Peppol BIS 3.0 und UStG (DE-USTG-…)
4. **L4****XSD**XML gegen das Schema (CII D16B, UBL 2.1)
5. **L5****KoSIT**Offizielle Schematron-Regeln im KoSIT-Validator
6. **L6****veraPDF**PDF/A-3b-Konformität des PDFs
7. **L7****Plausibilität**IBAN, BIC, USt-IdNr., Leitweg-ID, optional VIES

**Beispieldateien**

## Sieh dir das Ergebnis an.

Eine Rechnung in allen Formaten, mit Quittio erzeugt und vom offiziellen KoSIT-Validator ohne Fehler und Warnungen akzeptiert.

- [**ZUGFeRD (EN 16931)**PDF/A-3b mit XMLRE-2026-0042.pdf**Herunterladen **](https://quittio.dev/samples/RE-2026-0042.pdf)
- [**XRechnung (CII)**XMLRE-2026-0042-xrechnung-cii.xml**Herunterladen **](https://quittio.dev/samples/RE-2026-0042-xrechnung-cii.xml)
- [**XRechnung (UBL)**XMLRE-2026-0042-xrechnung-ubl.xml**Herunterladen **](https://quittio.dev/samples/RE-2026-0042-xrechnung-ubl.xml)
- [**Peppol BIS 3.0**XMLRE-2026-0042-peppol.xml**Herunterladen **](https://quittio.dev/samples/RE-2026-0042-peppol.xml)
- [**KoSIT-Prüfbericht**HTML, zur XRechnung (CII)RE-2026-0042-kosit.html**Ansehen **(öffnet in neuem Tab)](https://quittio.dev/samples/RE-2026-0042-kosit.html)

**Open Source und Managed**

## Kostenlos starten. Managed, wenn deine App Rechnungen ausstellt.

**Open Source · MIT**

### Quittio

Erstellen, prüfen, lesen und rendern. Für jedes PHP-Projekt, mit oder ohne Laravel, kostenlos.

- ZUGFeRD, XRechnung, Peppol, UBL, CII
- Validierung L1–L7 mit KoSIT und veraPDF
- PDF-Vorlagen, DIN 5008, GiroCode
- Eingangsrechnungen lesen und prüfen

[**Loslegen**](https://quittio.dev/docs/getting-started)

**Early Access · ab 149 € pro Projekt**

### Quittio Managed

Deine Laravel-App stellt Rechnungen selbst aus? Dann brauchst du mehr als ein PDF.

- Lückenlose Nummernkreise
- Unveränderbare Rechnungen und Archiv mit SHA-256
- Storno, Teilstorno und Korrektur
- Versand, Audit-Log und Aufbewahrung

[**Quittio Managed ansehen**](https://quittio.dev/managed)

**KI-Assistenten**

## Dein KI-Assistent kennt Quittio.

Die Dokumentation gibt es als Markdown, als llms.txt und als MCP-Server. So schreiben Claude Code, Cursor oder Copilot Code für die aktuelle Version.

[**So richtest du es ein**](https://quittio.dev/docs/ai)

$`claude mcp add --transport http quittio-docs https://quittio.dev/docs/mcp`

- **Claude Code**
- **Cursor**
- **GitHub Copilot**
- **Claude Desktop**
- **Laravel Boost**

## Häufige Fragen

### **Brauche ich Laravel?**

Nein. quittio/core läuft in jedem PHP-8.3-Projekt, zum Beispiel mit Symfony, Slim oder ganz ohne Framework. Laravel 13 brauchst du nur für die Integration und für Quittio Managed. Eine Anleitung steht im Ratgeber unter „E-Rechnungen mit PHP erstellen, ganz ohne Laravel“.

### **Ist Quittio kostenlos?**

Ja. Core, Laravel-Integration und das Länderpaket Deutschland stehen unter MIT. Kostenpflichtig ist nur Quittio Managed, die Rechnungsverwaltung in der Datenbank.

### **Welche Formate unterstützt Quittio?**

ZUGFeRD/Factur-X, XRechnung 3.0 (CII und UBL, auch als Extension und CVD), Peppol BIS Billing 3.0, CII und UBL 2.1, dazu PDF, HTML und JSON. Die Länderpakete Schweiz und Österreich ergänzen die QR-Rechnung und ebInterface 6.1 (schreiben und lesen); beide sind noch nicht steuerlich geprüft.

### **Ersetzt Quittio meine Buchhaltung oder Steuerberatung?**

Nein. Quittio erzeugt und prüft Rechnungen. Buchhaltung, Umsatzsteuer-Erklärung und Beratung bleiben, wo sie sind.

### **Ist Quittio produktionsreif?**

Version 0.7.1 erzeugt Rechnungen, die die offiziellen Validatoren bestehen. Die API kann sich bis 1.0.0 noch ändern. Die rechtlichen Texte des Länderpakets Deutschland hat ein Steuerberater im Oktober 2026 bestätigt. Die Länderpakete für Österreich, Belgien, die Schweiz und Frankreich sind noch nicht steuerlich geprüft. Quittio ersetzt keine Steuerberatung im Einzelfall.

### **Was unterscheidet Quittio von Quittio Managed?**

Quittio erzeugt die Dateien. Managed verwaltet die Rechnungen danach: Nummern, Unveränderbarkeit, Archiv, Storno, Versand und Aufbewahrung.

## Deine erste gültige E-Rechnung in zehn Minuten.

Installieren, Firmendaten hinterlegen, Rechnung bauen. Den Rest prüft Quittio.

[**Loslegen**](https://quittio.dev/docs/getting-started) [**Dokumentation**](https://quittio.dev/docs)

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://quittio.dev/#website","@type":"WebSite","description":"E-Rechnungen für PHP und Laravel: ZUGFeRD, XRechnung und Peppol erstellen, prüfen, lesen und archivieren.","inLanguage":"de-DE","name":"Quittio","url":"https://quittio.dev/","publisher":{"@id":"https://quittio.dev/#identity"},"workTranslation":{"@id":"https://quittio.dev/en#website"}},{"@id":"https://quittio.dev#webpage","@type":"WebPage","description":"Open-Source-Bibliothek für PHP und Laravel: E-Rechnungen nach EN 16931 erstellen, mit KoSIT prüfen, als PDF/A-3 ausgeben und eingehende Rechnungen lesen.","name":"Quittio: E-Rechnungen für PHP und Laravel (ZUGFeRD, XRechnung, Peppol)","url":"https://quittio.dev","about":{"@id":"https://quittio.dev/#identity"},"isPartOf":{"@id":"https://quittio.dev/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://quittio.dev"]}],"primaryImageOfPage":{"@id":"https://quittio.dev/#logo"}},{"@id":"https://quittio.dev/#identity","@type":"Organization","description":"Open-Source-Bibliothek für E-Rechnungen in PHP und Laravel (ZUGFeRD, XRechnung, Peppol) und Quittio Managed.","email":"kontakt@niklasforst.de","legalName":"Niklas Forst – Softwareentwicklung","name":"Quittio","url":"https://quittio.dev","founder":{"@type":"Person","name":"Niklas Forst","url":"https://quittio.dev/ueber"},"logo":{"@id":"https://quittio.dev/#logo"},"sameAs":["https://github.com/Quittio/quittio","https://packagist.org/packages/quittio/quittio"]},{"@id":"https://quittio.dev#/schema/software-source-code/1","@type":"SoftwareSourceCode","codeRepository":"https://github.com/Quittio/quittio","license":"https://opensource.org/licenses/MIT","name":"Quittio","programmingLanguage":"PHP","version":"0.7.1"},{"@id":"https://quittio.dev#/schema/question/1","@type":"Question","inLanguage":"de-DE","name":"Brauche ich Laravel?","acceptedAnswer":{"@type":"Answer","text":"Nein. quittio/core läuft in jedem PHP-8.3-Projekt, zum Beispiel mit Symfony, Slim oder ganz ohne Framework. Laravel 13 brauchst du nur für die Integration und für Quittio Managed. Eine Anleitung steht im Ratgeber unter „E-Rechnungen mit PHP erstellen, ganz ohne Laravel“."}},{"@id":"https://quittio.dev#/schema/question/2","@type":"Question","inLanguage":"de-DE","name":"Ist Quittio kostenlos?","acceptedAnswer":{"@type":"Answer","text":"Ja. Core, Laravel-Integration und das Länderpaket Deutschland stehen unter MIT. Kostenpflichtig ist nur Quittio Managed, die Rechnungsverwaltung in der Datenbank."}},{"@id":"https://quittio.dev#/schema/question/3","@type":"Question","inLanguage":"de-DE","name":"Welche Formate unterstützt Quittio?","acceptedAnswer":{"@type":"Answer","text":"ZUGFeRD/Factur-X, XRechnung 3.0 (CII und UBL, auch als Extension und CVD), Peppol BIS Billing 3.0, CII und UBL 2.1, dazu PDF, HTML und JSON. Die Länderpakete Schweiz und Österreich ergänzen die QR-Rechnung und ebInterface 6.1 (schreiben und lesen); beide sind noch nicht steuerlich geprüft."}},{"@id":"https://quittio.dev#/schema/question/4","@type":"Question","inLanguage":"de-DE","name":"Ersetzt Quittio meine Buchhaltung oder Steuerberatung?","acceptedAnswer":{"@type":"Answer","text":"Nein. Quittio erzeugt und prüft Rechnungen. Buchhaltung, Umsatzsteuer-Erklärung und Beratung bleiben, wo sie sind."}},{"@id":"https://quittio.dev#/schema/question/5","@type":"Question","inLanguage":"de-DE","name":"Ist Quittio produktionsreif?","acceptedAnswer":{"@type":"Answer","text":"Version 0.7.1 erzeugt Rechnungen, die die offiziellen Validatoren bestehen. Die API kann sich bis 1.0.0 noch ändern. Die rechtlichen Texte des Länderpakets Deutschland hat ein Steuerberater im Oktober 2026 bestätigt. Die Länderpakete für Österreich, Belgien, die Schweiz und Frankreich sind noch nicht steuerlich geprüft. Quittio ersetzt keine Steuerberatung im Einzelfall."}},{"@id":"https://quittio.dev#/schema/question/6","@type":"Question","inLanguage":"de-DE","name":"Was unterscheidet Quittio von Quittio Managed?","acceptedAnswer":{"@type":"Answer","text":"Quittio erzeugt die Dateien. Managed verwaltet die Rechnungen danach: Nummern, Unveränderbarkeit, Archiv, Storno, Versand und Aufbewahrung."}},{"@id":"https://quittio.dev/#logo","@type":"ImageObject","caption":"Quittio","contentUrl":"https://quittio.dev/logo.png","inLanguage":"de-DE","url":"https://quittio.dev/logo.png"}]}
```