EUQR

EPC-QR-Code erklärt: der SEPA-Zahlungscode auf Rechnungen

Der EPC-QR-Code ist das kleine Quadrat auf einer europäischen Rechnung, das eine SEPA-Überweisung ausfüllt, wenn Sie es mit einer Banking-App scannen. Dieser Leitfaden erklärt, was der Code laut European Payments Council enthält, was er nicht kann, wie er sich von einem Zahllink unterscheidet und warum Ihre änderbaren Codes daneben gehören.

Sie öffnen eine Rechnung Ihres Steuerbüros. In der Ecke steht ein QR-Code mit dem Hinweis "Zum Bezahlen scannen". Sie öffnen Ihre Banking-App, halten die Kamera darauf, und das Überweisungsformular ist ausgefüllt: Name, IBAN, Betrag, Verwendungszweck. Sie prüfen und bestätigen. Dieser Code folgt einem europäischen Standard. Wer ihn versteht, setzt ihn auf eigenen Rechnungen besser ein.

Was ein EPC-QR-Code ist

Der European Payments Council (EPC) legt die Regeln für SEPA-Zahlungen fest. Eines seiner Dokumente beschreibt, wie ein 2D-Code die Daten einer SEPA-Überweisung tragen kann. Die aktuelle Fassung ist EPC069-12, Version 3.1, mit dem Titel "Quick Response Code: Guidelines to Enable the Data Capture for the Initiation of a SEPA Credit Transfer". Sie wurde am 19. März 2024 herausgegeben und trat am selben Tag in Kraft.

Das Dokument ist eine Richtlinie, keine Pflicht. Dort steht: "it is optional for PSPs adhering to the SCT scheme to implement this feature". Jede Bank entscheidet also selbst, ob ihre App den Code liest. Viele Banking-Apps im Euroraum tun das. Prüfen Sie Ihre und testen Sie vor dem Druck mit einer zweiten.

Der Anwendungsfall ist im Text klar. Der Zahlungsempfänger druckt den Code auf eine Rechnung. Der Zahler scannt ihn, und die App übernimmt die Daten. Für Codes an einem Kassenterminal verweist die Dokumentseite des EPC auf ein anderes Dokument, EPC024-22. Das ist nicht Thema dieses Artikels.

Was in den 331 Bytes steht

Ein EPC-QR-Code enthält reinen Text, ein Feld pro Zeile, in fester Reihenfolge. Die Felder laut Version 3.1:

  • Kopf: der Service-Tag "BCD", eine Version (001 oder 002), ein Zeichensatz und die Kennung "SCT".
  • BIC: 8 oder 11 Zeichen. Pflicht in Version 001. In Version 002 nur in bestimmten Fällen nötig, etwa bei Zahlungen mit Teilnehmern außerhalb des EWR.
  • Empfänger: der Name mit bis zu 70 Zeichen und die IBAN mit bis zu 34 Zeichen. Die Richtlinie sagt "Only IBAN is allowed."
  • Betrag: optional, in Euro, von 0,01 bis 999.999.999,99.
  • Verwendungszweck: entweder eine strukturierte Gläubigerreferenz mit bis zu 35 Zeichen oder freier Text mit bis zu 140 Zeichen, nie beides. Ein optionaler Zweckcode mit 4 Zeichen steht davor.
  • Hinweis an den Zahler: optional, bis zu 70 Zeichen.

Der gesamte Inhalt darf 331 Bytes nicht überschreiten. Die Richtlinie verlangt Fehlerkorrekturstufe M, die etwa 15 Prozent beschädigter Codewörter wiederherstellt, und erlaubt höchstens QR-Version 13. So bleibt der Code klein genug für eine Rechnungsfußzeile.

Eine weitere Regel betrifft das Layout. Die Richtlinie geht davon aus, dass dieselben Daten als lesbarer Text neben dem Code stehen, damit der Zahler vergleichen kann, was die App zeigt und was auf der Rechnung steht.

Ein praktischer Tipp zum Verwendungszweck: Nutzen Sie eine strukturierte Gläubigerreferenz, wenn Ihre Buchhaltungssoftware sie unterstützt, etwa im Format ISO 11649, das die Richtlinie nennt. Sie bleibt deutlich unter 35 Zeichen, hält den Code klein und lässt Ihre Buchhaltung eingehende Zahlungen automatisch Rechnungen zuordnen. Freier Text geht auch, doch Kunden ändern ihn manchmal in der App, bevor sie bestätigen, und dann scheitert die Zuordnung.

Was ein EPC-QR-Code nicht kann

Der Code ist nützlich, weil er einfach ist. Das bestimmt auch seine Grenzen.

  • Er bezahlt nicht. Er füllt ein Formular aus. Der Zahler prüft und bestätigt die Überweisung selbst in der App.
  • Er ist kein Link. Es steht keine Webadresse darin, also zeigt eine Kamera-App ohne Bankfunktion nur Text, keine Seite.
  • Er meldet nichts zurück. Die Banking-App liest den Code auf dem Handy. Sie als Empfänger erfahren nicht, wer wann gescannt hat.
  • Er kann sich nicht ändern. Einmal gedruckt, stehen IBAN und Betrag fest. Ein neuer Betrag heißt ein neuer Code.

Nehmen Sie eine Sprachschule, die im September 400 Rechnungen für das Semester verschickt. Jede Rechnung bekommt einen eigenen EPC-QR-Code mit dem Betrag der Familie und der Rechnungsnummer als Referenz. Zahlt ein Elternteil, sieht die Schule die Überweisung mit der richtigen Referenz auf dem Konto. Das ist die ganze Aufgabe des Codes, und die erfüllt er gut.

EPC-QR-Code oder Zahllink-QR

Zahlungsanbieter bieten eine andere Art Zahlungscode. Mollie beschreibt auf seiner Seite zum Bezahlen per QR-Code, wie der Code zu einer Zahlseite mit vorausgefüllten Daten führt. Sie erstellen ihn unter Zahlungsanforderungen im Dashboard oder über die API, sodass Rechnungen automatisch einen Code tragen. Die Seite nennt unter anderem Kreditkarten, PayPal, Apple Pay und SEPA-Überweisungen als Methoden.

Die beiden unterscheiden sich in einigen Punkten:

  • Inhalt: Der EPC-Code trägt die Überweisungsdaten selbst. Der Zahllink-Code trägt eine Webadresse zur Seite des Anbieters.
  • Leser: Der EPC-Code braucht eine Banking-App, die ihn unterstützt. Der Link funktioniert mit jeder Kamera-App.
  • Methoden: Der EPC-Code startet nur eine SEPA-Überweisung. Die Anbieterseite kann mehrere Methoden anbieten.
  • Wer dazwischen steht: beim EPC-Code niemand. Beim Zahllink übernimmt der Anbieter Seite und Zahlung.

Keiner ist grundsätzlich besser. Ein Betrieb mit vielen Privatkunden, die mit Karte zahlen, nimmt vielleicht den Link. Ein Unternehmen, das andere Firmen per Überweisung abrechnet, druckt oft den EPC-Code. Manche drucken beide.

Warum ein EPC-QR-Code statisch bleiben muss

Wer dynamische QR-Codes im Marketing nutzt, fragt manchmal, ob auch der Zahlungscode dynamisch sein kann. Das geht nicht und sollte auch nicht sein. Eine Banking-App erwartet den BCD-Inhalt im Code selbst. Steht eine Weiterleitungsadresse im Quadrat, sieht die App eine URL statt einer Überweisung, und der Scan scheitert.

Dazu kommt ein Sicherheitsgrund. Rechnungsbetrug funktioniert oft durch vertauschte Zahlungsdaten. Ein Zahlungscode, der auf eine änderbare Weiterleitung zeigt, gäbe jedem mit Zugriff darauf die Möglichkeit, das Ziel des Geldes zu ändern. Lassen Sie den Zahlungscode genau so, wie Buchhaltungssoftware oder Bank ihn erzeugen. Drucken Sie die IBAN als Text daneben. Unser Artikel über Phishing mit QR-Codes erklärt, wie Kunden gefälschte Codes erkennen.

Wo ein dynamischer Code daneben passt

EUQR erstellt keine EPC-QR-Codes. Das übernimmt Ihre Buchhaltungssoftware oder Bank. EUQR ergänzt alles rund um die Zahlung, was sich nach dem Druck ändern kann.

Zurück zur Sprachschule. Neben den EPC-Code druckt sie einen zweiten, beschrifteten Code: "Stundenplan und Kursmaterial". Das ist ein dynamischer QR-Code zum Elternportal. Zieht das Portal im Januar um, ändert die Schule das Ziel, und die Rechnungen aus dem September funktionieren weiter. Ein dritter Code öffnet eine PDF-Seite mit den Geschäftsbedingungen, die das Büro bei Änderungen austauscht. Für die PDF-Rechnung per E-Mail leistet ein Kurzlink aus dem URL-Verkürzer von EUQR, etwa qreu.eu/stundenplan, dasselbe für Eltern, die am Handy lesen.

Diese änderbaren Codes zeigen außerdem etwas, das der Zahlungscode nie zeigt: wie oft jeder gescannt wird, als aggregierte Zahlen ohne Cookies oder rohe IP-Adressen. Sie erfahren, ob Eltern den Portallink nutzen, nicht wer sie sind.

Eine kurze Checkliste für die Fußzeile

  1. Lassen Sie den EPC-Code von Buchhaltungssoftware oder Bank erzeugen. Bauen Sie den Inhalt nicht von Hand.
  2. Testen Sie den gedruckten Code vor einer großen Auflage mit mindestens zwei Banking-Apps.
  3. Drucken Sie Name, IBAN, Betrag und Referenz als Text neben den Code.
  4. Geben Sie dem Zahlungscode den meisten Platz und eine klare Ruhezone.
  5. Beschriften Sie jeden Code, damit niemand den Portalcode zum Bezahlen scannt.
  6. Nutzen Sie änderbare Codes für alles, was sich ändert: Portale, Bedingungen, Anleitungen.

Dies ist keine Rechts- oder Finanzberatung. Bei Fragen zu Zahlungsfristen oder Rechnungsregeln wenden Sie sich an Ihre Bank oder Steuerberatung. Möchten Sie einen änderbaren Code neben Ihren Zahlungscode setzen, beginnen die Tarife von EUQR bei 0,99 € pro Monat.

Häufig gestellte Fragen

Was ist ein EPC-QR-Code?
Es ist ein QR-Code mit den Daten einer SEPA-Überweisung: Name des Empfängers, IBAN, ein optionaler Betrag und eine Referenz. Der European Payments Council beschreibt ihn in der Richtlinie EPC069-12, Version 3.1 vom 19. März 2024. Der Zahler scannt ihn mit einer passenden Banking-App, prüft die ausgefüllte Überweisung und bestätigt sie.
Liest jede Banking-App EPC-QR-Codes?
Nein. Die EPC-Richtlinie sagt, dass die Umsetzung für Zahlungsdienstleister freiwillig ist, also entscheidet jede Bank selbst. Viele Banking-Apps im Euroraum lesen den Code, aber Sie können nicht davon ausgehen, dass alle es tun. Testen Sie den gedruckten Code mit mindestens zwei Apps und drucken Sie die Zahlungsdaten immer als Text daneben.
Kann EUQR einen EPC-QR-Code erzeugen?
Nein. EUQR erstellt keine EPC- oder anderen Zahlungs-QR-Codes. Lassen Sie den Zahlungscode jeder Rechnung von Buchhaltungssoftware oder Bank erzeugen. EUQR liefert die änderbaren Codes, die Sie daneben drucken, etwa zu einem Kundenportal oder einer PDF-Seite mit Ihren Bedingungen, und zählt deren Scans ohne Cookies.
Kann ich sehen, wer den EPC-QR-Code auf meiner Rechnung scannt?
Nein. Die Banking-App liest die Zahlungsdaten direkt aus dem Code auf dem Handy des Zahlers, beim Scannen geht also nichts an Sie. Sie sehen nur die Überweisung, sobald sie mit der Referenz eingeht. Wenn Sie wissen wollen, ob Kunden Portal oder Dokumente nutzen, zählen Sie Scans auf separaten dynamischen Codes.
Wie groß darf ein EPC-QR-Code sein?
Der Inhalt darf 331 Bytes nicht überschreiten, was höchstens QR-Version 13 entspricht. Die Richtlinie verlangt Fehlerkorrekturstufe M. In der Praxis belegt der freie Verwendungszweck mit bis zu 140 Zeichen den meisten Platz. Eine kurze strukturierte Referenz hält den Code kleiner und auf einer gedruckten Rechnung besser lesbar.

Setzen Sie einen änderbaren Code neben Ihren Zahlungscode

Verbinden Sie Ihre Rechnungen mit dem Kundenportal oder Ihren Bedingungen über einen dynamischen QR-Code, den Sie nach dem Druck ändern können, gehostet in Amsterdam.

QR-Code erstellen