What an EPC QR code is
An EPC QR code lets a person start a SEPA credit transfer by scanning instead of typing. It is defined in a guideline from the European Payments Council (EPC) and appears on invoices, utility bills and donation appeals across the euro area. In Germany and Austria it is widely known as GiroCode.
Scanning the code only fills in the transfer form in the payer’s banking app. The payer still reviews the details and authorizes the payment in their bank’s usual way, so the code does not move money on its own.
What the code contains
Unlike EMV payment codes, an EPC QR code is plain text with one field per line, in a fixed order. A typical payload for a Maple Street Bakery invoice would be the lines BCD, 002, 1, SCT, an optional BIC, the name Maple Street Bakery, the IBAN, EUR12.30, an optional purpose code, then either a structured creditor reference or free remittance text. The whole payload may be at most 331 bytes.
- Service tag: BCD
- Version: 002 (001 is the older version, which requires a BIC)
- Character set: 1 for UTF-8
- Identification: SCT (SEPA credit transfer)
- BIC (optional in version 002 within the EEA), beneficiary name (up to 70 characters), IBAN
- Amount in the form EUR12.30, optional purpose code
- Structured reference or unstructured remittance text (only one), optional note to the payer
Printing guidance
The guideline recommends error correction level M, which balances robustness against code size. Because the payload is fairly long, an EPC QR code is denser than a simple link, so it should not be printed too small on an invoice. Many banking apps in the euro area can read it, but support varies by bank and country.