Verify our privacy claims live, from your browser▾
These values are computed in your browser right now. No server round-trip. Click any row for a one-line explanation.
Outbound requests after page load…Expected: 0Everything runs in your browser, so no data ever leaves after the initial page load.
Third-party domains contacted…Expected: 0No analytics, no CDN fonts, no avatar services, no trackers, single origin only.
Cookies set…Expected: 0No session, no analytics, no preferences in cookies. Nothing to sync, nothing to leak.
localStorage keys…Only your saved QRs and preferencesSaved templates, history, and language preference. Inspected in Application → Local Storage.
Service worker status…Offline-readyStatic assets cached for offline use. You can disable your network and the generator still works.
Network status…Offline proof: turn off WiFi, click Generate. Still works.The simplest proof. If this were secretly a client for a server, offline would break it.
This symbology renders monochrome with foreground and background colours only. Templates, dot/eye shapes, gradients, frames, and centre logos are QR-only features and are hidden here.
Show 30 more templates
Save a style with the button above to keep your favourites here.
#000000
#FFFFFF
#8B5CF6
Upload an image to use as your frame.
Drag the QR to position, scroll or pinch to zoom, use the slider to rotate.
Show 108 more icons
No icons match your search.
Renders behind the QR at adjustable opacity. Auto-forces EC=H so the QR still scans through the photo.
Batch Generation
Upload a CSV to generate up to 500 QR codes in a single batch. Each row becomes its own QR, pick a template or override 21 properties on a per-row basis: colors, frames, dot/eye/eyeball styles, gradients, transparency, size, error correction, format, built-in logo, and more.
21 columns: type, data, filename, frametext, frame, template, fgcolor, bgcolor, size, ec, dotstyle, eyestyle, format, logo, gradient, g2, gtype, gangle, transparent, eyeball, eyecolor. Only type and data are required. Use | to separate fields inside data (e.g. ssid|password|WPA).
All 125+ QR/barcode types supported, including URL, WiFi, vCard, TOTP, Swiss QR-bill, PIX, PromptPay, ZATCA, PayNow, Bitcoin + Lightning, and more. Download the sample CSV to see every column, all 50 templates, 22 frame styles, and 375 built-in logo icons in action.
1. Download the sample CSV · 2. Edit it in Google Sheets, Excel, Numbers, or any text editor · 3. Upload it here
Your link is encoded inside the QR itself, no server in the middle, nothing to expire, nothing to renew. Print it once, it keeps working.
Save the entire QR (type, all field values, style, frame, logo, business card design) as a single .qr.json file. Load it later to recreate everything in one click.
Enter content to generate your QR code
Encoded payload
Recent
You're editing an existing Pro code. Click "Update Pro code" below to save your changes back to Pro.
Need to change the destination after it's printed?
Same no-lock-in approach as the free tool. Pro lets you change the destination after printing and see who's scanning (country and device only, never IP or cookies). Every dynamic code ships with a static backup, so there's nothing we can turn off. From $9/month billed annually.
SEPA (Single Euro Payments Area) QR codes follow the EPC (European Payments Council) standard for encoding bank transfer details. When someone scans the code with their banking app, it pre-fills the recipient's IBAN, name, amount, and reference — they just confirm to initiate the transfer. This eliminates manual IBAN entry, a common source of payment errors.
SEPA QR codes are used across 36 European countries and work with any banking app that supports the EPC QR standard, which includes most major European banks.
How to Create a SEPA QR Code
Enter the recipient name — the name on the receiving bank account.
Enter the IBAN — the international bank account number (e.g., DE89370400440532013000).
Add BIC, amount, and reference (optional) — the BIC/SWIFT code, payment amount in EUR, and a reference or invoice number.
Download and share your QR code on invoices, payment requests, or at point of sale.
Where to Use SEPA QR Codes
Invoices — include on invoices for error-free bank transfer payments
Utility bills — simplify bill payment for customers
Donations — churches, nonprofits, and charities across Europe
Rent and subscription payments — simplify recurring payments
Small businesses — accept Euro payments without a card terminal
Supported Countries
SEPA QR codes work across the 36 SEPA member countries, including all EU countries plus Iceland, Liechtenstein, Norway, Switzerland, Monaco, San Marino, Andorra, Vatican City, and the UK. Any bank account with an IBAN in these countries can receive SEPA transfers.
Compliance checklist
Follow the EPC QR Code Guidelines (EPC069-12): service tag, version, character set, BIC/IBAN validation, and payment-type code must all be set correctly. Non-conforming codes are rejected silently by many banking apps.
Identify yourself on any printed SEPA QR. The EU Consumer Rights Directive and national equivalents require the merchant's legal name, address, and where applicable VAT number to appear on the same printed surface as the QR.
Refunds and cancellation rights: under the EU Payment Services Directive (PSD2) a payer can request return of an unauthorized SEPA transfer for up to 13 months. Have a documented process. For B2C sales add the 14-day right of withdrawal notice.
Solicited donations in most EU member states require charitable-fundraising registration (e.g., Germany's CBF, France's DGCCRF, the Netherlands' CBF keurmerk). Check before printing a donation QR for public display.
Data protection: a printed QR containing an IBAN + name is personal data under GDPR. You are the controller for any downstream use. Do not re-use another organisation's SEPA QR in your own materials without a written agreement.
When not to use this
Do not print a SEPA QR with a mandate-style reference that implies recurring authority. SEPA Credit Transfers are one-off pushes, they are not Direct Debit mandates. A QR cannot legally establish a recurring charge; that requires a signed SEPA Direct Debit mandate under Regulation (EU) 260/2012.
Also by Abundera
E-signatures that hold up in court
Abundera Sign goes beyond basic e-signatures. Every document gets cryptographic proof, independent verification, and a tamper-evident evidence package.
Auto-generated court-ready evidence packages
Personal Document Seal, detects tampering instantly
Anchored to 5 independent systems, no single point of failure
Most major European banking apps support the EPC QR standard, including ING, ABN AMRO, Rabobank, Deutsche Bank, Commerzbank, Sparkasse, BNP Paribas, and many others. Check your specific banking app's QR scanning feature.
Is the BIC/SWIFT code required?
No. The BIC is optional for SEPA transfers within the Euro zone. Most banks can look up the BIC from the IBAN. Including it can speed up processing, but it's not required.
Can I use SEPA QR codes for non-Euro currencies?
No. SEPA QR codes (EPC standard) only support Euro (EUR) transfers. For other currencies, use a URL QR code linking to a payment provider that supports your currency.
How long does a SEPA payment take to settle?
Standard SEPA Credit Transfers settle within one business day. SEPA Instant Credit Transfer settles in under 10 seconds, 24/7, and is supported by most banks in the Euro area as of 2024. The QR code doesn't choose between standard and instant — that depends on what the payer's bank app offers when they scan.
Is the SEPA QR code format the same across all of Europe?
Yes. The EPC QR standard (EPC069-12) is published by the European Payments Council and used identically in all 36 SEPA countries. A QR code generated in Germany scans correctly in France, Spain, the Netherlands, etc. Our generator follows the standard exactly — no regional variations needed.
Can I include a payment reference for invoice tracking?
Yes — the optional reference field is encoded into the QR code and pre-filled into the payment. This is how reconciliation works in practice: include your invoice number (e.g., 'INV-2026-0042') and when the payment lands, your accounting software can match it back automatically. Keep references under 35 characters for full compliance.
What happens if the IBAN is invalid?
We don't validate the IBAN client-side — the QR code will still encode whatever you enter. Most banking apps validate the IBAN when the user scans, and reject obviously malformed entries (wrong length, bad checksum). For safety, double-check the IBAN before generating, and test with a small payment if you're sharing the code widely.