GiroCode auf der Rechnung
Der GiroCode ist ein QR-Code für SEPA-Überweisungen nach der Richtlinie EPC069-12 des European Payments Council. Er enthält Empfänger, IBAN, Betrag und Verwendungszweck; die Banking-App füllt damit die Überweisung aus. Er ist keine Pflichtangabe und kein Bestandteil der E-Rechnung.
Ein GiroCode ist ein QR-Code, der alle Angaben für eine SEPA-Überweisung enthält. Der Standard dahinter heißt offiziell EPC-QR-Code und ist in der Richtlinie EPC069-12 des European Payments Council beschrieben, aktuell Version 3.0 vom 13. September 2022. Wer die Rechnung erhält, scannt den Code mit der Banking-App; Empfänger, IBAN, Betrag und Verwendungszweck stehen dann im Überweisungsformular. Eine Pflichtangabe ist der GiroCode nicht, und Teil der E-Rechnung ist er auch nicht – deren Zahlungsdaten liegen strukturiert im XML.
So funktioniert der GiroCode
Der Zahlungsempfänger druckt den Code auf die Rechnung oder bettet ihn in die PDF ein. Der Zahler scannt ihn mit seiner Banking-App oder einem anderen Gerät seiner Bank; die Zahlungsdaten werden in die Eingabefelder übernommen, und der Zahler gibt die Überweisung frei.
Die Richtlinie ist ausdrücklich für Fälle gedacht, in denen die Daten zugleich im Klartext zu sehen sind – etwa auf einer Rechnung –, damit der Zahler sie vergleichen kann. Für das Bezahlen an der Kasse oder im Webshop verweist der EPC auf ein eigenes Dokument (EPC 024-22). Die Richtlinie ist rein informativ: Ob eine Bank das Einlesen anbietet, entscheidet sie selbst. Nicht zu verwechseln ist der GiroCode mit der QR-Rechnung der Schweiz, einem eigenen Zahlschein-Standard – siehe Rechnung in die Schweiz.
Welche Daten der GiroCode enthält
Die Elemente stehen in fester Reihenfolge, jedes in einer eigenen Zeile (EPC069-12, Abschnitt 2.2):
| Nr. | Element | Pflicht | Höchstlänge |
|---|---|---|---|
| 1 | Kennung „BCD” | ja | 3 |
| 2 | Version „001” oder „002” | ja | 3 |
| 3 | Zeichensatz, z. B. 1 für UTF-8 | ja | 1 |
| 4 | Kennung „SCT” (SEPA Credit Transfer) | ja | 3 |
| 5 | BIC der Bank des Empfängers | Version 001: ja; Version 002: nur bei Beteiligten außerhalb des EWR | 11 |
| 6 | Name des Empfängers | ja | 70 |
| 7 | IBAN des Empfängers | ja | 34 |
| 8 | Betrag in Euro, z. B. „EUR416.50” | nein | 12 |
| 9 | Zweckcode (Purpose) | nein | 4 |
| 10 | Strukturierte Referenz, z. B. RF-Gläubigerreferenz | nein, entweder 10 oder 11 | 35 |
| 11 | Verwendungszweck als Text | nein, entweder 10 oder 11 | 140 |
| 12 | Hinweis an den Zahler | nein | 70 |
Die Zeilen sind durch einen Zeilenumbruch getrennt; nach dem letzten befüllten Element folgt keiner mehr.
Beispiel für eine Rechnung über 416,50 € mit der Rechnungsnummer als Verwendungszweck (Version 002, ohne BIC):
BCD
002
1
SCT
Musterbau GmbH
DE02120300000000202051
EUR416.50
RE-2026-0042
Grenzen des GiroCodes
| Grenze | Wert laut EPC069-12 |
|---|---|
| Zahlungsart | nur SEPA-Überweisung, nur in Euro |
| Betrag | 0,01 € bis 999.999.999,99 € |
| Datenmenge | höchstens 331 Byte, QR-Code höchstens Version 13 |
| Fehlerkorrektur | Stufe M (15 % der Codewörter wiederherstellbar) |
| Referenz | strukturierte Referenz oder Text, nicht beides |
| Zeichen | bei UTF-8 kann ein Zeichen mehr als ein Byte belegen |
Ein Fälligkeitsdatum oder einen Skonto kennt der GiroCode nicht; er überträgt nur den Betrag. Bietet die Rechnung Skonto an, muss der Zahler den Betrag selbst ändern. Für Lastschriften und Zahlungen in anderen Währungen ist der GiroCode nicht vorgesehen.
GiroCode erstellen
Einen GiroCode erzeugt jede Software, die den Aufbau aus der Tabelle oben in einen QR-Code mit Fehlerkorrekturstufe M umsetzt. Die Daten kommen aus der Rechnung:
- Name des Kontoinhabers und IBAN genau so, wie sie bei der Bank geführt werden – die Bank des Zahlers kann den Namen mit der IBAN abgleichen.
- Der Betrag ist der Zahlbetrag der Rechnung.
- Als Verwendungszweck dient meist die Rechnungsnummer, damit die Zahlung zugeordnet werden kann.
- Dieselben Daten stehen zusätzlich lesbar auf der Rechnung.
Passt ein Wert nicht in die Grenzen, etwa ein Name mit mehr als 70 Zeichen, lässt sich der Code nicht vollständig bilden. Kürzen löst das nicht: Eine gekürzte Empfängerangabe stimmt nicht mehr mit der Rechnung überein.
Ist ein GiroCode Pflicht?
Nein. Die Pflichtangaben nach § 14 Abs. 4 UStG enthalten weder einen QR-Code noch eine Bankverbindung. Auch für die E-Rechnung gibt es keine Vorgabe: Die Norm EN 16931 hat kein Feld für einen QR-Code. Eine XRechnung ist eine reine XML-Datei ohne Bildteil. Eine ZUGFeRD-Rechnung enthält eine lesbare PDF, auf der ein GiroCode stehen kann; rechtlich führend sind bei einem hybriden Format aber die Daten im strukturierten Teil, bei Abweichungen gehen sie dem Bildteil vor (UStAE Abschn. 14.4 Abs. 3). Mehr zu den Formaten unter XRechnung oder ZUGFeRD.
Woher die Daten in einer E-Rechnung kommen
Eine E-Rechnung enthält alles, was ein GiroCode braucht, in den Zahlungsanweisungen (BG-16). Ein Programm kann den Code daraus erzeugen – beim Erstellen der Rechnung oder erst beim Empfänger:
| GiroCode-Element | Feld der E-Rechnung |
|---|---|
| Name des Empfängers | BT-85 Kontoinhaber, ersatzweise BT-27 Name des Verkäufers |
| IBAN | BT-84 Payment account identifier |
| BIC | BT-86 Payment service provider identifier |
| Betrag | BT-115 Amount due for payment |
| Verwendungszweck oder Referenz | BT-83 Remittance information, ersatzweise BT-1 Rechnungsnummer |
| Voraussetzung | BT-81 Zahlungsart Überweisung (Code 58 oder 30) und BT-5 Währung EUR |
Wie Zahlungsziel und Bankdaten in die E-Rechnung kommen, erklärt der Ratgeber Zahlungsziel.
GiroCode in der PDF-Ansicht von XRIO
Die PDF-Ansicht von XRIO macht aus einer XRechnung oder einer anderen EN-16931-XML eine lesbare PDF. Im Standardlayout „xrio” zeigt sie einen GiroCode, wenn die XML gültig ist, per Überweisung (Code 58 oder 30) in Euro an eine IBAN zahlt und alle Werte in die Grenzen der Richtlinie passen; gekürzt wird nichts. Für eine ungültige XML entfällt der Code, weil ihre Zahlungsdaten falsch sein können. Die PDF-Ansicht ist keine E-Rechnung und kostet 0,25 € netto; die ZUGFeRD-PDF, die XRIO beim Erstellen erzeugt, trägt keinen GiroCode.
Quellen
- European Payments Council: EPC069-12, Quick Response Code – Guidelines to Enable the Data Capture for the Initiation of a SEPA Credit Transfer, Version 3.0, 13.09.2022 – Abschnitte 1 und 2.
- § 14 Abs. 4 UStG – Pflichtangaben einer Rechnung.
- BMF-Schreiben vom 15.10.2025 – Umsatzsteuer-Anwendungserlass Abschn. 14.4 Abs. 3 (führender strukturierter Teil bei hybriden Formaten).
- EN 16931-1 – BG-16, BT-1, BT-5, BT-27, BT-81, BT-83 bis BT-86, BT-115.