Payments
Girocode explained — Germany's name for the EPC QR code
Girocode is the German name for the EPC QR code — the same EPC069-12 twelve-line payload that begins BCD and prefills a SEPA credit transfer. It works only when scanned from inside a banking app; a phone camera sees plain text rather than a link, so nothing opens.
One standard, two names
Girocode is not a separate format. It is the German banking sector's branding for the
EPC QR code, defined in the European Payments Council's guideline EPC069-12 — a
twelve-line text payload that starts BCD and describes a single SEPA credit transfer:
beneficiary name, IBAN, optional BIC, optional amount, optional reference. The
format page documents every line; this page covers what
the German framing changes, which is mostly expectations.
You will meet the same payload under other names — "Zahlen mit Code" in Austria, "EPC QR" or "SEPA QR" elsewhere. Scan any of them and the bytes are identical. Generate one with the EPC builder and it is a Girocode.
The camera-app trap
The single most useful thing to know about Girocode: it is not a link.
A WiFi or URL QR contains something a phone's camera app knows how to act on. A Girocode
contains a block of bank-transfer text. Point an iPhone or Android camera at it and you get,
at best, a preview of raw text beginning BCD — no payment screen, nothing to tap. Users
reasonably conclude the code is broken.
The correct flow is to open the banking app first and use the app's own scanner — Sparkasse, Volksbank, comdirect, ING and most other German and Austrian banking apps have a scan function in their transfer screen. The app parses the twelve lines and prefills the transfer for confirmation.
If you print Girocodes, print that instruction next to them. "Mit Ihrer Banking-App scannen" prevents most support queries, and printing the IBAN as text beside the code rescues everyone whose app lacks a scanner.
Where it actually works
Support is strongest exactly where the branding exists: Germany and Austria, where reading Girocodes is a standard banking-app feature. Elsewhere in the eurozone support is inconsistent — a French or Spanish app may not recognise the payload at all. The format page covers this in detail; the practical rule is that a Girocode on an invoice is an accelerator for DACH customers and a no-op for others, which is acceptable because the fallback (typing the printed IBAN) always exists.
Note also what a Girocode is not:
- Not the Swiss standard — Switzerland's QR-bill is a separate, incompatible format with a Swiss cross in the centre.
- Not a payment execution — it only prefills. The payer still authorises in their app, and whether it settles instantly depends on the bank's rails, not the code.
Making one
Use the EPC generator: name (≤ 70 characters), IBAN, optionally amount
(0.01–999999999.99 EUR) and a remittance line (≤ 140 characters). UseQR validates
the IBAN's mod-97 check digits before generating and builds version 002 payloads, which
need no BIC. Keep the whole payload under 331 bytes — the constraint that bites when a
long name meets a long remittance line.
Then scan the result with your own banking app before it goes on an invoice. A code you have not scanned is a code you have not tested.
FAQ
Is Girocode the same as an EPC QR code?
Yes, byte for byte. Girocode is the German banking sector's name for the EPC069-12 QR payload used across SEPA. "Zahlen mit Code" in Austria refers to the same format.
Why does my phone camera not read a Girocode?
Because the payload is bank-transfer text, not a URL — the camera app has nothing to open. Scan it from inside your banking app's transfer screen instead, which parses the payload and prefills the payment.
Which banks support Girocode?
Most German and Austrian banking apps read it natively, including Sparkasse and Volksbank apps. Support elsewhere in the eurozone is inconsistent, so always print the IBAN as text next to the code.
Does a Girocode take money from my account when scanned?
No. It only prefills a transfer form — name, IBAN, amount, reference. You review and authorise the payment in your banking app exactly as with a manually typed transfer.
Try it — free, no signup
Related
- The EPC QR code format (GiroCode), line by line — An EPC QR code is twelve lines of text in fixed order, starting with BCD and containing the beneficiary name, IBAN and optionally an amount. The whole…
- Putting an EPC QR code on an invoice — placement and workflow — Prefill amount and reference, place the code beside the total, print the IBAN as text, and embed as vector in the PDF. The EPC invoice workflow that works.
- SEPA QR codes and instant payments — the code names the payment, not the speed — An EPC QR triggers a SEPA credit transfer; whether it settles in seconds depends on the bank sending it as SEPA Instant, which EU regulation now requires.
- QR payment standards compared: UPI, PIX, EPC, EMVCo — UPI uses its own upi:// deep link; PIX, PromptPay, QRIS, DuitNow and PayNow are all EMVCo tag-length-value profiles; EPC uses a twelve-line text block.…