The SEPA QR code on your invoice — getting paid in one tap
A SEPA QR removes 90% of the friction of a bank transfer: the customer scans, taps, done. Here's what the code carries, how it pairs with a structured reference, and why both belong on every euro invoice.
The SEPA QR code on your invoice — getting paid in one tap
A bank transfer in Europe is cheap, settles in seconds and doesn't take a 1.5% cut. Its one weakness is the manual data entry — IBAN, amount, reference — and that's exactly what people get wrong. The EPC SEPA QR code removes that friction. Your customer points their banking app at the invoice, the transfer is pre-filled, they confirm. Done.
What's actually in the code
The QR follows the European Payments Council standard EPC069-12. It packs 11 fields into a tiny payload your customer's banking app reads in one scan:
- Beneficiary name
- IBAN (mandatory)
- BIC (optional in most of the EU)
- Amount in EUR
- Either an unstructured remittance text (free-form) or a structured
creditor reference
That last line is the one most invoicing tools get wrong — more on that below.
Why this beats a "pay now" button for some customers
Pay-now buttons (Stripe, Mollie, PayPal) are great when you want speed and don't mind the percentage. SEPA QR is great when:
- The customer is a business that prefers bank transfers anyway.
- The amount is large enough that a 1–2% gateway fee is a real number.
- You're invoicing a Belgian or Dutch SME — both markets have very high
QR-scanning adoption.
In practice the answer is "both, side by side." Eurobillr prints the EPC QR on every euro invoice with a valid IBAN, and when you connect Stripe/Mollie/PayPal it also embeds a pay-now URL — the customer picks. There's no cost to offering both.
The structured-reference twist
If you've ever reconciled bank statements by hand, you know the pain: "BANK TRANSFER FROM ACME NV" with no invoice number. Multiply by fifty clients and reconciliation becomes detective work.
The structured reference fixes this. In Belgium it's the OGM/VCS format — +++AAA/BBBB/CCCDD+++ — 12 digits with a mod-97 check, deterministic from the invoice. Eurobillr prints it on every Belgian-IBAN euro invoice: on the page, in the PDF, and inside the QR code itself. So when the customer scans, the reference is pre-filled in the transfer.
On the receiving side, your bank statement now carries the exact reference back. Matching incoming payments to invoices stops being a chore. Pair that with the bank-statement import (CAMT.053 / MT940) and you're reconciling a month of payments in minutes.
Why the structured reference and the QR are complementary
The EPC spec says: send one of (a) unstructured remittance or (b) structured creditor reference, never both. Eurobillr picks automatically — for a Belgian IBAN it ships the OGM/VCS, because the checksum protects against typos and your bank reconciliation gets the clean reference back. For other countries it falls back to the "Invoice <number>" unstructured text, which most banking apps display as the payment subject.
The point is that the customer never has to type a number, anywhere. That's where the time saving lives.
What to set up once
Two settings in the workspace and you're done:
- IBAN (and BIC if you have it) in Settings → Payment. The QR
appears the moment an IBAN is present.
- Reminders in Settings → Reminders. Pre-due plus a single
overdue follow-up catches most delays — combined with QR + pay-now, chasing-by-email becomes the exception.
That's the whole setup. Background reading: the EPC QR glossary entry, SEPA and structured reference. Step-by-step in the app: get paid faster with QR codes and online payments.