EPC-QR-Code
Ein EPC-QR-Code ist ein vom European Payments Council (EPC) standardisierter QR-Code, der alle Daten für eine SEPA-Überweisung enthält. Mit einem EPC-QR-Code können Überweisungen mittels einer Banking-App auf dem Handy sehr einfach durchgeführt werden, indem der QR-Code eingescannt und die dann im Handy dargestellten Überweisungsdaten bestätigt werden. Der manuelle Aufwand der Eingabe der Daten entfällt ebenso wie das Risiko der Eingabe von fehlerhaften Daten (etwa durch Tippfehler). Der EPC-QR-Code wird in Deutschland von kommerziellen Dienstleistern als GiroCode beworben.
EPC-QR-Code für Überweisung auslesen
BearbeitenEine Mobile-Banking-App auf einem Smartphone oder Tablet als auch ein Onlinebankingprogramm auf einem Notebook oder Desktoprechner decodiert den EPC-QR-Code und füllt mit diesen Daten ein Online-Überweisungsformular aus. Der EPC-QR-Code initiiert aber nicht die Ausführung der Überweisung. Ein Nutzer kann daher die in das Online-Überweisungsformular übertragenen Daten überprüfen und anschließend die Überweisung veranlassen, abändern oder auch abbrechen. Ist ein entsprechendes Gerät vorhanden, kann der EPC-QR-Code eine Ausfüllhilfe für Online-Überweisungsformulare sein und erspart damit das u. U. fehlerträchtige manuelle Ausfüllen. Es gibt erste Versuche mit öffentlich aufgestellten Automaten, an denen man Rechnungen, sofern sie einen QR-Code enthalten, per Bareinzahlung bedienen kann.[1]
Auch auf Geräten mit Microsoft Windows kann der EPC-QR-Code ausgelesen werden. Da der EPC-QR-Code ein normaler QR-Code ist, gehört er zu den 2D-Codes. Mit einem 2D-Code-Lesegerät lassen sich die Daten z. B. in eine Textdatei übertragen oder kann auch ohne externes Lesegerät per Software aus einer Bilddatei oder einem Screenshot ausgelesen werden. Die Übertragung ausgelesener Daten in Überweisungsformulare erfolgt dann zwar meist nur durch kopieren und einfügen manuell, reduziert aber auch hier potentielle Fehlerursachen.
2D-Code-Lesegeräte, oft als USB-Handgerät genutzt, werden in der Regel im Windows-Gerätemanager unter Human Interface Devices (HID) und bei den Tastaturen angezeigt. Das erzeugte Ergebnis eines Lesegerätes entspricht der Grundfunktion einer Tastatur, da es die gescannten Daten an anderer Stelle eingibt. Bei der Übertragung (Eingabe) ausgelesener Dateninhalte spielt daher ähnlich wie bei Tastaturen die Zuordnung eines sprachlich passenden Tastaturlayouts eine wichtige Rolle. In der Grundkonfiguration verwenden 2D-Code-Lesegeräte oft ein englisches Layout, Stichwort QWERTY. Ist der 2D-Code-Leser nicht mit der passenden Sprache konfiguriert, kann das zu falschen Ergebnissen führen. So kann z. B. aus einem Z ein Y werden usw. Gerätehersteller bieten zur Umstellung auf andere Sprachen – z. B. auf das deutsche QWERTZ, spezielle Barcodes an, die mit dem 2D-Code-Lesegeräte einmalig eingescannt werden.[2] Diese Zuordnung erfolgt nur auf das 2D-Code-Lesegerät und hat keinen Einfluss auf die normale Tastatur.
QR-Code-Software kann u. U. Codes lesen und erstellen oder auch nur eines davon. Jedoch bietet nicht jede Software die hier als auch unter „EPC-QR-Code für Überweisung erstellen“ als erforderlich benannten Konfigurationsbedarfe.
EPC-QR-Code Dateninhalt
BearbeitenDer Inhalt eines EPC-QR-Codes für SEPA-Zahlungen ist ein mehrzeiliger Text nach definiertem Format. Die folgende Tabelle stellt das im EPC-QR-Code gespeicherte Schema der Daten sowie den verbindlichen als auch optionalen Inhalt dar, mit dem eine Überweisung durchgeführt werden kann.
Die meisten der in diesem Abschnitt aufgeführten Angaben entstammen dem EPC069-12 V3.1 mit dem Titel „Quick Response Code - Guidelines to Enable the Data Capture for the Initiation of a SEPA Credit Transfer“.[3]
Im Abschnitt EPC-QR-Code für Überweisung erstellen ist dargelegt, dass die Anwendung des Schemas relativ einfach gelingen kann.
Zeile | orig. Bezeichner | Beispielwert | Beschreibung | |
---|---|---|---|---|
1 | Service Tag | BCD | Service Tag Pflichtangabe fester Wert = BCD Hinweis: Jede Zeile muss mit einer Zeilenschaltung enden. Die Ausnahme bildet Zeile 12, die keine Zeilenschaltung am Ende verwenden darf. Die nach dem Wert BCD verwendete Zeilenschaltung kann LF oder CrLf sein, muss aber über alle Zeilen hinweg einheitlich erfolgen. Eine nicht genutzte Zeile bedarf dennoch eine Zeilenschaltung, damit die nachfolgende Zeile existieren kann. Auf dieser Basis gründet die verpflichtende Ausnahme der Zeile 12, da weitere Zeilen nicht definiert sind. Zudem gilt: Wird das Schema z. B. nur bis Zeile 10 genutzt, dann hat es dort zu enden → siehe EPC121-16, Abs. 2.2 Data elements[4] Weitere Angaben sind im Abschnitt EPC-QR-Code für Überweisung erstellen verfügbar. Technische Erläuterung zur Zeilenschaltung → siehe Artikel Steuerzeichen. | |
2 | Version | 002 | Beteiligte Region im Zahlungsverkehr Pflichtangabe Werte Der EWR ist respektiv die European Economic Area (EEA), demnach sind Nicht-EWR-Länder non-EEA countries.
001
002
| |
3 | Character set | 2 | Zeichenkodierung Pflichtangabe Werte
Weitere Angaben sind im Abschnitt EPC-QR-Code für Überweisung erstellen verfügbar. | |
4 | Identification | SCT | Identifikations-Code der anzuwendenden Überweisungsvariante Pflichtangabe Verfügbare Werte Pflichttermine zur Ermöglichung von SEPA Instant Credit Transfer durch die Zahlungsdienstleister innerhalb des EWR
außerhalb des EWR
SCT bleibt weiterhin nutzbar. Überprüfungspflichten ab 9. Oktober 2025 → Hinweis am Tabellenende | |
5 | BIC | BFSWDE33BER | BIC = Business Identifier Code der Empfängerbank Die BIC ist
Wert = definierter Code, der der Zahlungsempfängerbank zugeordnet ist | |
6 | Name | Wikimedia Foerdergesellschaft | Name des Zahlungsempfängers Pflichtangabe Wert = max. 70 Zeichen (Text) Ab dem 9. Oktober 2025 muss der Zahlungsempfängername dem Namen des adressierten Kontoinhabers entsprechen. Auch wenn es eine Pflichtangabe ist, so hatte es bis zum 8. Oktober 2025 keinerlei Relevanz. Eine auferlegte Validierung durch die beauftragten Zahlungsdienstleister gab es zuvor nicht. Überprüfungspflichten ab 9. Oktober 2025 → Hinweis am Tabellenende | |
7 | IBAN | DE12345678901234567890 | IBAN, im Sprachgebrauch auch Kontonummer, die einem Kontoinhaber zugeordnet ist Pflichtangabe Wert = IBAN des adressierten Zahlungsempfängers Auch wenn es eine Pflichtangabe ist, so hatte es bis zum 8. Oktober 2025 keinerlei Relevanz. Eine auferlegte Validierung durch die beauftragten Zahlungsdienstleister gab es zuvor nicht. Solange die IBAN existierte, wurde unabhängig vom verwendeten Empfängernamen die Zahlungsanweisung durchgeführt. Überprüfungspflichten ab 9. Oktober 2025 → Hinweis am Tabellenende | |
8 | Amount | EUR123.45 | Zahlungsbetrag optional, aber empfohlen Format = „EUR#.##“ Als Dezimaltrennzeichen ist der Punkt zu verwenden. | |
9 | Purpose | BENE | Definierte SEPA Purpose-Codes für den Zweck einer Zahlung optional Wert = max. vierstelliger Textschlüssel, dem DTA-Verfahren folgend existente Beispielwerte[6]
Damit können Banken, Finanzämter und andere Stellen die Verhältnisse identifizieren. Ein Dispositionskredit wird auch mit Hilfe dieser Codes geregelt. | |
10 | Remittance (Reference) | RF18 5390 0754 7034 | Referenz optional, aber empfohlen Wert = strukturierter Zeichen-Code, max. 25 Zeichen gem. ISO 11649 RF Creditor Reference Regel beachten: Wenn Zeile 10 verwendet wird, muss Zeile 11 leer bleiben. | |
11 | Remittance (Text) | Spende fuer Wikipedia | Verwendungszweck optional Wert = unstrukturierter Text, max. 140 Zeichen Regel beachten: Wenn Zeile 11 verwendet wird, muss Zeile 10 leer bleiben. | |
12 | Information | Informationen zwischen Zahlungsempfänger und Urheber der Zahlung optional Wert = max. 70 Zeichen Hinweis: Da dies das letzte Feld ist und zwar unabhängig davon, ob es leer ist oder nicht, darf hier keine Zeilenschaltung am Ende verwendet werden. |
Überprüfungspflichten und Echtzeitüberweisungen in Euro ab 9. Oktober 2025[7]
Mit Einführung der SEPA INST Überweisung innerhalb des EWR (Zahlung senden) muss ab demselben Datum der Name und die IBAN eines SEPA-Zahlungsempfängers bei einer jeden Zahlungsanweisung verbindlich dem realen Namen des empfangenden Kontoinhabers sowie seiner IBAN entsprechen. Dies dient zum Schutz vor Betrug und vor menschlichen Fehlern. Stimmen die Kriterien nicht überein, werden SEPA-Überweisung wie auch Daueraufträge nicht mehr ausgeführt.
Kontoinhaber sind daher angehalten, bereits vor dem Stichtag ihre gespeicherten oder notierten Bankverbindungen sowie Daueraufträge validiert bzw. überprüft zu haben. SEPA-Überweisungen, die an den Schorsch gehen, der aber Georg heist, laufen Gefahr, dann nicht mehr ausgeführt zu werden. Ebenso sind geänderte Firmennamen ein Problem – Stichwort alter Dauerauftrag, was schnell zu einem Zahlungsverzug führen kann. Namenswechsel durch standesamtliche Änderungen, veraltete Inhalte von seit langem genutzten EPC-QR-Codes – all das, was bis dato noch funktionierte, kann ab Oktober 2025 zu Verzögerungen im Zahlungsverkehr führen. Die vormals tolerierten Fehler waren praktisch, aber ebenso eine Option zur Erlangung eines potentiellen Vermögenschadens.
Die Verordnung (EU) 2024/886 nimmt daher die Zahlungsdienstleister in die Pflicht, dass sie auch also solche handeln und sodann eine Überprüfung vor der Ausführung einer beauftragten Überweisung oder Dauerauftrags durchführen und bei erkannten Diskrepanzen die Zahlungsanweisung nicht mehr ausführen dürfen. Macht der Dienstleister während der regelmäßigen Überprüfung Fehler und es entsteht dadurch ein finanzieller Schaden wegen falscher Buchungen, dann haftet ausschließlich der Zahlungsdienstleister.
Sollte also u. U. eine echt aussehende Zahlungsaufforderung eingehen, die beispielsweise an die namentlich bekannten lokalen Stadtwerke gehen soll, aber die Zahlungsaufforderung betrügerisch an eine nicht den Stadtwerken gehörige IBAN adressiert ist, dann wird eine solche schadhafte Überweisung aufgrund der Überprüfungspflicht der Zahlungsdienstleister nicht mehr ausgeführt.
EPC-QR-Code für Überweisung erstellen
BearbeitenZu den Informationen aus der im Artikelabschnitt EPC-QR-Code Dateninhalt dargestellten Tabelle sind auch die Informationen aus diesem Abschnitt zu beachten. Am Ende dieses Abschnitts wird die Erstellung eines QR-Codes auf Basis der benannten Regeln erläutert.
Das folgende Beispiel zeigt, dass die in einem QR-Code gespeicherten Daten in ausgelesener Form dem Schema der benannten Tabelle entsprechen und dass z. B. ungenutzte Zeilen einzig versehen mit einer Zeilenschaltung dafür Sorge tragen, dass die darauf noch folgenden Werte an der für sie vorgesehenen Stelle platziert werden können.
Hinweis: die hier im Artikel verwendeten Daten stellen keine verlässliche Quelle für reale Spendenzahlungen dar. Informationen für Spenden finden sich auf wikimedia.de[8]
BCD 001 1 SCT BFSWDE33BER Wikimedia Foerdergesellschaft DE12345678901234567890 EUR123.45 Spende fuer Wikipedia
Zeichenkodierung
Im Artikelabschnitt EPC-QR-Code Dateninhalt werden in der dargestellten Tabelle für die Zeile 3 die möglichen Werte 1–8 für das verwendete „Character set“ (Zeichenkodierung) angegeben. So steht z. B. der Wert 2 für ISO 8859-1. Ein QR-Code-Generator muss eine der acht zulässigen Zeichenkodierungen beherrschen. Um den Wert der Zeile 3 festlegen zu können, muss im QR-Code-Generator ersichtlich oder einstellbar sein, welches „Character set“ der Generator bei Erstellung des Codes verwendet.
Im regionalen Kontext betrachtet würde z. B. „ISO 8859-7 Griechisch“ für eine QR-Code-Nutzung in Deutschland nur in den seltensten Fällen zweckmäßig sein.
Zeichensatz
EPC121-16 gibt die begrenzt zulässigen Zeichen und Sonderzeichen an und regelt den Umgang mit dem Schrägstrich.
Character set: Regeln und Pflichten zum lateinischen Zeichensatz → Alle Details in EPC121-16, Abs. 1.4[4]
Zeilenschaltung
Als Zeilenschaltung sind erlaubt line feed (LF) oder carriage return line feed (CRLF), jedoch nur eine der beiden Arten innerhalb eines Codes gleichzeitig. Jede Zeile bedarf eine Zeilenschaltung. In der letzten Zeile 12 ist eine Zeilenschaltung unzulässig.
EPC121-16, Abs. 2.2 Data elements[4] gibt zudem an: Dem letzten ausgefüllten Element (Zeile) folgt kein Zeichen oder Elementtrennzeichen (Zeilenschaltung). Wird das Schema z. B. nur bis Zeile 10 genutzt, dann hat es dort zu enden.
Kriterien des QR-Codes
Die Erstellung des QR-Codes ist zulässig bis maximal Version 13 sowie mit einer Fehlerkorrektur auf dem Level „M“ (Medium) mit 15 %. Die Verwendung einer anderen Fehlertoleranz wie L = 7 %, Q = 25 % oder H = 30 % ist nicht zulässig. Der EPC-QR-Code nutzt letztlich einen normalen QR-Code der den benannten Kriterien entsprechen muss und dessen Dateninhalt den vorgegebenen Regeln zu folgen hat.
Die Größe eines QR-Codes wird mit einer Versionsangabe beschrieben. Je mehr Daten in einem QR-Code gespeichert werden, umso höher wird automatisch die verwendete QR-Code Version und damit auch seine Dimension. Generelle Informationen zur Größe bzw. Version und der Fehlerkorrektur sind hier zu finden → Version[9] und Fehlerkorrektur[10]
Ein optimaler Generator zeigt daher in der Vorschau an, welche Version die Erstellung erzeugen wird.
QR-Code für SEPA-Überweisung erstellen
Ein QR-Code-Generator ist im Abschnitt Weblinks aufgeführt.
Im Einzelanwendungsfall können z. B. in einer Textdatei (.txt) die benötigten Zeilen entsprechend den dargelegten Vorgaben erzeugt werden und als Zeilenschaltung wird die Eingabetaste (Enter) benutzt. Die in der Textdatei erstellten Zeilen werden dann kopiert und in einen den Kriterien entsprechend konfigurierten QR-Code-Generator eingefügt, der daraus eine Bilddatei erzeugt.
Der Zahlungsbetrag in Zeile 8 und der Verwendungszweck in Zeile 11 sind optional. Lässt man beispielsweise diese beiden Zeilen leer, so kann ein einmalig erstellter EPC-QR-Code universell genutzt werden, da er die Übertragung des Namens des Zahlungsempfängers sowie dessen zugehörige IBAN in ein Online-Überweisungsformular sicherstellt und dann nur noch der Zahlbetrag sowie der Verwendungszweck manuell ausgefüllt werden muss.
Geschichte
Bearbeiten2013[11] hat das European Payments Council (EPC) das Dokument „Quick Response Code: Guidelines to Enable Data Capture for the Initiation of a Credit Transfer“[12] veröffentlicht.
Österreichische Banken haben dies schnell übernommen und ihre QR-Codes mit dem Text „Zahlen mit Code“ auf der rechten Seite des Codes gekennzeichnet.[13] 2015 folgte Finnland[14], 2016 die Niederlande[15] und Belgien.[15]
Situation in der Schweiz
BearbeitenDie in der Schweiz verfügbare QR-Rechnung enthält im Zahlteil textbasierte Information über Zahlungsbetrag, Sender, Empfänger usf. sowie den Swiss QR Code. Die Textinformation aus dem Zahlteil ist ebenso im Swiss QR Code enthalten. Die schweizer QR-Rechnung legt einem Zahlungspflichtigen bereits vor der Nutzung des Swiss QR Codes die darin enthaltenen Daten für die Überweisung offen, was der EPC-QR-Code alleine nicht leisten kann, da es dazu noch immer keine begleitende rechtliche Vorgabe gibt.
Der Swiss QR Code folgt einem Schema, das mehr Informationen enthält als der EPC-QR-Code (z. B. vollständige Adressen, verschiedene Referenztypen).[16] Die Schweiz nimmt am SEPA teil.
Weblinks
Bearbeiten„QR Code“ (ohne Bindestrich)
- „QR Code“ ist eine geschützte Marke von DENSO WAVE INCORPORATED.[17]
QR-Code Generator
- Download – „Portable QR-Code Generator“, executable: QRCodeGen.jar (Freeware)[18]
→ erfordert: Oracle „Java SE Runtime Environment“, mind. jre-6uxx (kein server-jre, kein jdk) - Download – Oracle „Java SE Runtime Environment“ jre-8u431 (für div. OS)[19]
- Oracle Java (Archive) – Java SE Runtime Environment[20]
Deutschland
- GiroCode – Werbung der Sparkassen
- GiroCode – Werbung der VR-Banken
- GiroCode – Werbung der S-Public Services GmbH
- GiroCode – Werbung der Minerva Kulturdienstleistungen UG
- GiroCode – WordPress-Plugin – Werbung der Minerva Kulturdienstleistungen UG
- (aktuell nicht funktionierendes) EPC-QR-Code – WordPress-Plugin (Open Source)
Österreich
- QR-Code – Werbung der Payment Services Austria GmbH (PSA)
- QR-Code – Online Generator – Werbung der Payment Services Austria GmbH (PSA)
Niederlande
Einzelnachweise
Bearbeiten- ↑ David Torcasso: Rechnungen kann man nun am SBB-Billettautomaten zahlen. In: handelszeitung.ch. 3. Februar 2019, abgerufen am 5. Februar 2019.
- ↑ Beispiel Firma ZEBRA: Barcode zur Umstellung eines 2D-Code-Lesers auf ein deutsches Tastaturlayout. In: zebra.com. 23. Dezember 2023, abgerufen am 29. Juni 2024.
- ↑ EPC069-12 V3.1 Quick Response Code - Guidelines to Enable the Data Capture for the Initiation of an SCT. 19. März 2024, abgerufen am 1. Juli 2024 (englisch).
- ↑ a b c d e SEPA Instant Credit Transfer Scheme Customer-to-PSP Implementation Guidelines EPC121-16 / 2023 Version 1.0. (PDF) In: European Payments Council (EPC). Abgerufen am 6. Mai 2024.
- ↑ EPC List of SEPA Scheme Countries. Abgerufen am 8. Mai 2024.
- ↑ SEPA Purpose-Codes – windata WIKI. Abgerufen am 9. Juli 2021.
- ↑ EU Verordnung 2024/886 im Hinblick auf Echtzeitüberweisungen in Euro EUR-Lex. Abgerufen am 13. Mai 2024.
- ↑ Spenden für Wikipedia und andere Wikimedia-Projekte. Abgerufen am 7. Mai 2024.
- ↑ QR-Code Größe erklärt in QR-Code Versionen. In: qrcode.com. Abgerufen am 1. Juli 2024 (englisch).
- ↑ QR-Code Fehlertoleranz erklärt in QR-Code Fehlerkorrektur. In: qrcode.com. Abgerufen am 1. Juli 2024 (englisch).
- ↑ Quick Response Code Guidelines to enable data capture for the initiation of a sepa credit transfer. (englisch): „In February 2013, the European Payments Council (EPC) published the document 'Quick Response Code: Guidelines to Enable Data Capture for the Initiation of a Credit Transfer'“
- ↑ Quick Response Code: Guidelines to Enable Data Capture for the Initiation of a Credit Transfer. (englisch).
- ↑ Werbung der Payment Services Austria GmbH (PSA) – QR-Code „Zahlen mit Code“. In: psa.at. Abgerufen am 19. September 2023.
- ↑ Guidelines from the FFI ( vom 15. August 2017 im Internet Archive)
- ↑ a b Werbung der Scan2Pay – General information of the EPC QR code usage in the EU
- ↑ SIX: Schweizer Implementierungsguideline QR-Rechnung. (PDF) Abgerufen am 20. April 2021.
- ↑ Detailangaben zum Markenschutz – „QR Code“ ist eine geschützte Marke von DENSO WAVE INCORPORATED. In: qrcode.com. Abgerufen am 1. Juli 2024 (englisch).
- ↑ Download – Portable QR-Code Generator. In: heise.de. 26. Juni 2024, abgerufen am 26. Juni 2024. von Stefan Ganzer
- ↑ Download – Oracle „Java SE Runtime Environment“ jre-8u431 (für div. OS). In: java.com. 31. Juli 2024, abgerufen am 31. Juli 2024.
- ↑ Oracle Java (Archive) – Java SE Runtime Environment. In: oracle.com. 26. Juni 2024, abgerufen am 26. Juni 2024 (englisch).