Vai al contenuto
QR code

Generatore QR code: URL, Wi-Fi, vCard, bonifico SEPA

Crea QR code per URL, reti Wi-Fi, contatti vCard, testo libero e bonifico SEPA in formato EPC069-12, lo standard EU letto nativamente dalle app delle banche italiane. Validazione IBAN MOD-97 inline per i QR di pagamento, correzione errori configurabile fino al 30% per supportare un logo centrale, export in PNG per web e SVG per stampa professionale. Il QR generato è un payload statico, senza redirect: leggibile per sempre, indipendente dalla sopravvivenza di shortener o domini di terze parti.

Tipo di QR code
Correzione errori / Dimensione (px)
Logo al centro (opzionale)

Quando aggiungi un logo l'ECC viene impostato automaticamente a H per tollerare l'occlusione centrale.

Anteprima

Cronologia (massimo 10)

Come generare un QR code

  1. 1

    Scegli il tipo

    URL per link, Wi-Fi per condividere accesso a una rete, vCard per scambio contatti, SEPA per bonifico precompilato leggibile dalle app bancarie italiane, testo libero per qualsiasi payload arbitrario.

  2. 2

    Compila i campi

    Per Wi-Fi servono SSID, password e tipo di sicurezza. Per vCard nome e almeno un canale di contatto. Per SEPA servono beneficiario e IBAN; il tool valida l'IBAN con il controllo MOD-97 prima di generare il QR.

  3. 3

    Imposta correzione errori

    L (7%) per QR su monitor in alta risoluzione, M (15%) è il default ragionevole, Q (25%) se vuoi sovrapporre un logo al centro (la ridondanza copre l'area mascherata), H (30%) per QR stampati su materiali soggetti a usura (etichette, packaging).

  4. 4

    Esporta

    PNG per uso web e print di base, SVG per stampa professionale (vettoriale, scalabile a qualsiasi DPI). Entrambi senza filigrana, generati in locale e scaricati direttamente nel tuo browser.

Tre dettagli che fanno la differenza

Payload statico, niente redirect. Il contenuto vive interamente dentro il QR: nessun shortener proprietario al centro della catena, nessun dominio di terze parti che fa da intermediario. Se imposti come payload https://www.tuosito.it/landing, il QR contiene esattamente quella URL e continuerà a portare lì fra dieci anni. I generatori che applicano un redirect sul proprio dominio creano una dipendenza implicita: se quel dominio cambia gestione o scompare, tutti i QR stampati smettono di funzionare. Su materiali con vita lunga (etichette, packaging, brochure stampate, volantini fiera) questa è la differenza fra un investimento ammortizzato e un costo perso.

SEPA EPC069-12 supportato nativamente. L'EPC Quick Response Code Guidelines (versione 002 corrente, identificativo tecnico EPC069-12) è lo standard EU per i QR di bonifico SEPA. Le app delle principali banche italiane (Intesa, UniCredit, BPER, MPS, BNL, Banco BPM, Crédit Agricole Italia, Fineco, BancoPosta) leggono questo formato e precompilano beneficiario, IBAN, importo e causale. Il tool valida l'IBAN MOD-97 inline prima di generare il QR, evitando di stampare codici con IBAN inesistenti o con typo.

Privacy by default sul payload. Il calcolo del QR avviene direttamente nel browser. Il payload (URL, password Wi-Fi, IBAN del bonifico, dati vCard) non viene trasferito a un servizio esterno: il file PNG o SVG che scarichi è generato in locale, identico a quello che otterresti chiamando offline la stessa libreria di rendering. Utile in particolare per QR di bonifico SEPA, dove l'IBAN è un dato finanziario personale.

Bonifico SEPA QR (EPC069-12) per le banche italiane

Il QR di bonifico SEPA EPC069-12 è un payload testuale strutturato in righe fisse, di lunghezza massima 331 byte, con queste sezioni nell'ordine prescritto: identificatore (BCD), versione (002), encoding (1=UTF-8), function (SCT=SEPA Credit Transfer), BIC (opzionale), nome beneficiario (max 70), IBAN, importo (formato EUR + decimali con punto), purpose code, reference creditizio, causale (max 140), nota beneficiario.

Tutte le banche italiane in Open Banking PSD2 leggono questo formato. Caso d'uso tipico: emettere una fattura con QR che il cliente inquadra dall'app bancaria e ottiene un bonifico precompilato, riducendo errori di trascrizione (IBAN sbagliato è uno dei motivi più frequenti di bonifici tornati indietro). Il tool valida l'IBAN con il controllo MOD-97 (algoritmo standard ISO 13616) prima di generare il QR, evitando di stampare QR con IBAN inesistenti.

Glossario

Termini tecnici usati in questa pagina, spiegati in due righe.

Error Correction Level (ECL) #
Quattro livelli definiti dallo standard ISO/IEC 18004: L (~7% di byte recuperabili), M (~15%), Q (~25%), H (~30%). Più alto è il livello, più moduli (pixel) servono a parita' di payload, più grande risulta il QR.
EPC069-12 #
Identificatore tecnico delle EPC Quick Response Code Guidelines, lo standard EU per QR di bonifico SEPA. Standard de facto in Italia, Germania, Austria, Belgio, Paesi Bassi.
MOD-97 #
Algoritmo di controllo IBAN definito da ISO 13616: il numero formato dalle prime due lettere (codice paese), dai due check digit e dal Basic Bank Account Number, modulo 97, deve dare 1. Rilevazione affidabile di errori di trascrizione di un solo carattere.
vCard 4.0 #
Formato standard per scambio contatti, definito da RFC 6350. Versione corrente, supportata da iOS, Android, Outlook. Le vCard 3.0 (RFC 2426) sono ancora in giro ma deprecate.
WPA-PSK QR string #
Formato per QR Wi-Fi: WIFI:T:WPA;S:<ssid>;P:<password>;H:<true|false>;;. Caratteri speciali nel payload (backslash, doppi apici, punto e virgola, virgola, due punti) vanno escapati con backslash.

Domande frequenti

Il QR di bonifico SEPA funziona con la mia banca italiana?
Si se la tua banca aderisce alla SEPA Quick Response Code initiative dell'EPC. Banche italiane principali con supporto certificato: Intesa Sanpaolo, Unicredit, BPER, MPS, BNL, Banco BPM, Credit Agricole Italia, Poste Italiane (BancoPosta), Fineco, Mediolanum. App di banche più piccole o credito cooperativo possono supportarlo via il framework PSD2 ma con qualche giorno di lag rispetto alle major. Test rapido: genera un QR con importo 1 euro a tuo IBAN, inquadra dall'app, vedi se compila i campi.
Posso aggiungere un logo al centro del QR?
Sì. Il tool supporta l'upload di un logo (PNG, JPG o SVG, max 200 KB) che viene sovrapposto al centro del QR. La correzione errori passa automaticamente al livello H (30%), valore necessario perché lo standard ISO/IEC 18004 ammetta area mascherata senza compromettere la lettura. In alternativa, generando il QR senza logo ed esportando in SVG, puoi sovrapporre il logo manualmente in Figma o Inkscape.
Il QR Wi-Fi funziona su iOS?
Si, dal iOS 11 (2017) la fotocamera nativa lo riconosce e propone di unirsi alla rete con un tap. Stesso comportamento su Android 10+ via Google Lens. Per dispositivi più vecchi servono app dedicate. Attenzione alle password con caratteri speciali (apici, backslash, virgole, due punti, punto e virgola): il tool li escapa correttamente con backslash, ma alcune app fanno parsing imperfetto e potrebbero richiedere di reinserire la password manualmente.
Quanto è grande in byte il payload massimo?
Dipende dal livello di correzione errori e dal charset. Numeri puri: 7089 caratteri max a ECL=L. Alfanumerici: 4296 max. Byte arbitrari (UTF-8 testo): 2953 max. Kanji: 1817 max. Importante: più grande il payload, più fitti i moduli, più difficile la lettura su stampe a bassa risoluzione. Stay below 300-500 byte per QR letti da fotocamera mobile.
Esiste un modo per testare il QR generato senza stamparlo?
Sì. Il modo più rapido è inquadrarlo direttamente dallo schermo con la fotocamera del telefono: se l'app riconosce il payload e propone l'azione corretta (apri URL, unisciti alla rete Wi-Fi, precompila bonifico), il QR è valido. Per test scriptabili o batch, ZBar offre un decoder CLI per Linux che lavora interamente in locale, senza richiedere upload del file. Per test occasionali su QR sensibili (bonifici SEPA, password Wi-Fi aziendali), evitare i decoder online che fanno upload del file.
Genera anche micro-QR o QR alternativi?
Solo QR standard ISO/IEC 18004 (versione 1-40, da 21x21 a 177x177 moduli). I formati più compatti come Micro QR (M1-M4) e rMQR sono opzionali nello standard, supportati da poche app, lasciamo fuori per evitare problemi di compatibilita'. Per QR Code Model 1 (vecchio standard) idem: zero use case moderni.
Posso generare il QR in batch da una lista (es. CSV)?
Non in questa versione. Per workflow batch consigliamo lo script Python qrcode (PyPI) o node-qrcode da CLI: 5-10 righe di codice processano un CSV intero. Se hai un caso aziendale specifico (es. generazione QR univoci per N migliaia di prodotti con tracking) è una integrazione che faccio in consulenza.
Il QR generato ha scadenza?
No, mai. Il QR è un payload statico: il contenuto è nel QR stesso, non c'e' nessun redirect, nessun server intermedio, nessuna scadenza. Stampato su un volantino oggi, sarà leggibile fra dieci anni. Questo è uno dei motivi per cui evitiamo gli shortener/tracking-redirect: legano il QR alla sopravvivenza di un dominio terzo.
Posso modificare il colore o lo stile del QR?
Per ora no, il render è standard nero su bianco. Lo standard ISO/IEC 18004 raccomanda contrasto >= 40% tra moduli e sfondo, e contrasto su sfondo chiaro (modulo scuro su sfondo chiaro o viceversa). Colori invertiti, gradient, moduli rotondi rendono il QR meno robusto a condizioni di lettura subottimali. Se hai bisogno di styling avanzato, importa l'SVG in Figma o Illustrator e personalizza la' (mantenendo contrasto).

Chi sviluppa questi strumenti?

Maurizio Fonte, consulente IT senior con oltre 20 anni di esperienza in PHP, Laravel, infrastrutture Linux, cybersecurity e integrazione AI/LLM in azienda. Backend di produzione, modernizzazione di codice legacy, audit di sicurezza, agenti AI e MCP server custom: il lavoro che sta dietro a questi strumenti.

Conosci Maurizio Fonte