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.

Aktualisiert am · Allgemeine Information, keine Steuerberatung

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.ElementPflichtHöchstlänge
1Kennung „BCD”ja3
2Version „001” oder „002”ja3
3Zeichensatz, z. B. 1 für UTF-8ja1
4Kennung „SCT” (SEPA Credit Transfer)ja3
5BIC der Bank des EmpfängersVersion 001: ja; Version 002: nur bei Beteiligten außerhalb des EWR11
6Name des Empfängersja70
7IBAN des Empfängersja34
8Betrag in Euro, z. B. „EUR416.50”nein12
9Zweckcode (Purpose)nein4
10Strukturierte Referenz, z. B. RF-Gläubigerreferenznein, entweder 10 oder 1135
11Verwendungszweck als Textnein, entweder 10 oder 11140
12Hinweis an den Zahlernein70

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

GrenzeWert laut EPC069-12
Zahlungsartnur SEPA-Überweisung, nur in Euro
Betrag0,01 € bis 999.999.999,99 €
Datenmengehöchstens 331 Byte, QR-Code höchstens Version 13
FehlerkorrekturStufe M (15 % der Codewörter wiederherstellbar)
Referenzstrukturierte Referenz oder Text, nicht beides
Zeichenbei 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:

  1. 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.
  2. Der Betrag ist der Zahlbetrag der Rechnung.
  3. Als Verwendungszweck dient meist die Rechnungsnummer, damit die Zahlung zugeordnet werden kann.
  4. 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-ElementFeld der E-Rechnung
Name des EmpfängersBT-85 Kontoinhaber, ersatzweise BT-27 Name des Verkäufers
IBANBT-84 Payment account identifier
BICBT-86 Payment service provider identifier
BetragBT-115 Amount due for payment
Verwendungszweck oder ReferenzBT-83 Remittance information, ersatzweise BT-1 Rechnungsnummer
VoraussetzungBT-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

Häufige Fragen

Was ist ein GiroCode?

Ein QR-Code mit den Daten einer SEPA-Überweisung, aufgebaut nach der Richtlinie EPC069-12 des European Payments Council (EPC-QR-Code). Der Zahler scannt ihn mit seiner Banking-App, die Empfänger, IBAN, Betrag und Verwendungszweck in das Überweisungsformular übernimmt.

Ist ein GiroCode auf der Rechnung Pflicht?

Nein. § 14 Abs. 4 UStG nennt weder einen QR-Code noch die Bankverbindung als Pflichtangabe. Der GiroCode ist ein freiwilliger Service für den Zahler.

Welche Daten enthält ein GiroCode?

Pflicht sind Kennung, Version, Zeichensatz, der Name des Empfängers (bis 70 Zeichen) und die IBAN. Optional sind BIC, Betrag in Euro, Zweckcode und entweder eine strukturierte Referenz (bis 35 Zeichen) oder ein Verwendungszweck als Text (bis 140 Zeichen). Das Ganze darf höchstens 331 Byte groß sein.

Gehört der GiroCode in die E-Rechnung?

Nein. Die EN 16931 kennt kein Feld für einen QR-Code. Die E-Rechnung enthält die Zahlungsdaten strukturiert (BG-16, etwa IBAN in BT-84); ein Programm kann daraus einen GiroCode erzeugen. Bei ZUGFeRD darf der sichtbare PDF-Teil einen zeigen, maßgeblich bleiben die XML-Daten.

Funktioniert der GiroCode mit jeder Bank?

Nicht zwingend. Die Richtlinie EPC069-12 ist rein informativ; ob ein Zahlungsdienstleister das Einlesen anbietet, entscheidet er selbst. Der GiroCode gilt außerdem nur für SEPA-Überweisungen in Euro.

Kann ein GiroCode einen Skonto oder ein Zahlungsziel enthalten?

Nein. Der Standard sieht kein Datum und keinen Skonto vor, nur einen Betrag. Ein Zahlungsziel oder Skonto steht deshalb im Text der Rechnung, in der E-Rechnung in BT-9 und BT-20.

Starten Sie mit 5 € Startguthaben.

Konto anlegen, API-Schlüssel erzeugen, Ihre KI verbinden. Abgelehnte Versuche kosten nichts.