PHP · Packagist
XRechnung in PHP. Ein Composer-Require, valides XML.
Kein Mustang, kein lokales Schematron, kein JRE in der CI. composer require normbill/xrechnung — generate, validate, parse. Schlägt KoSIT fehl, ist der Pfad invoice.buyer_reference, nicht ein XPath.
composer require → valides XML
composer require normbill/xrechnunguse Normbill\Xrechnung\NormbillClient;
$nb = new NormbillClient(getenv('NORMBILL_API_KEY'));
$result = $nb->generate([
'format' => 'xrechnung-3.0',
'invoice' => [
'number' => 'INV-2026-0001',
'issue_date' => '2026-06-15',
'due_date' => '2026-07-15',
'buyer_reference' => '04011000-1234512345-06',
'seller' => [
'name' => 'Muster Lieferant GmbH',
'vat_id' => 'DE123456789',
'address' => ['country' => 'DE', 'city' => 'Berlin', 'postal_code' => '10115'],
'contact' => ['name' => 'Billing', 'phone' => '+49 30 1234567', 'email' => 'billing@lieferant.example'],
],
'buyer' => [
'name' => 'Beispiel Kunde AG',
'address' => ['country' => 'DE', 'city' => 'Hamburg', 'postal_code' => '20095'],
'contact' => ['email' => 'ap@kunde.example'],
],
'payment' => ['iban' => 'DE89370400440532013000'],
'lines' => [
['name' => 'Beratungsleistung', 'qty' => 10, 'unit_price' => 100, 'vat' => 19],
],
],
]);$result['xml'] ist KoSIT-validierte XRechnung 3.0. XRechnung API · Dokumentation
Kein Java, kein Schematron lokal
KoSIT läuft bei uns. Ihre CI braucht ext-curl. PHP ≥ 8.1. Kein Mustang, kein JRE, keine gepinnten Schematron-Packs.
horstoeko / xrechnung-kit vs. API
horstoeko und xrechnung-kit sind richtig, wenn Sie XML selbst besitzen wollen. Die API ist richtig, wenn Ihr SaaS Rechnungen für Mandanten ausstellt und Sie KoSIT-Updates nicht selbst pinnen wollen. OSS-Bibliothek vs. API für XRechnung.
Generate / Validate / Parse
Dieselben drei Endpoints wie REST, auf NormbillClient:
generate(array $request)— JSON → validiertes XMLvalidate(string $content)— vorhandenes XML prüfen. Kostenlos im Fair-Use.parse(string $content)— Empfangspflicht: XML → Rechnungs-Array
TypeScript-Pendant
npm i @normbill/xrechnung — derselbe Vertrag in TypeScript. REST bleibt die Sprache, die Clients wrappen.
Preise ohne Vertriebsanruf
Free: 50/Monat, KoSIT, Test- und Live-Keys, keine Karte. Paid ab €19. Dieselbe Fläche wie die XRechnung API.