Logo Tom's Hardware
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Tom's Hardware Logo
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Forum
  • Sconti & Coupon
% Black Friday
%
Accedi a Xenforo
Immagine di Come funziona il pagamento tramite codice QR
Business
Immagine di Legge italiana contro il ransomware, proibito pagare! Legge italiana contro il ransomware, proibito pagare!...
Immagine di L'Euro Digitale può salvare l'Europa, ma i problemi non mancano L'Euro Digitale può salvare l'Europa, ma i problemi non man...

Come funziona il pagamento tramite codice QR

Il pagamento tramite codice QR è ormai parte della vita quotidiana, ma come funziona tecnicamente? Scopriamo i meccanismi dietro EMVCo e JPQR.

Avatar di Valerio Porcu

a cura di Valerio Porcu

Senior Editor @Tom's Hardware Italia

Pubblicato il 27/10/2025 alle 13:50

La notizia in un minuto

  • Il codice QR per pagamenti non contiene denaro ma funziona come un indirizzo digitale che trasmette dati critici (identificativo commerciante, importo, valuta) ai server bancari per completare la transazione
  • La struttura si basa sul formato TLV (Tag-Length-Value) standardizzato da EMVCo, con codici statici riutilizzabili o dinamici generati per singola transazione, e modalità MPM o CPM a seconda di chi presenta il codice
  • La sicurezza richiede validazione server-side, scadenze temporali, controlli CRC e protezione fisica contro attacchi overlay dove malintenzionati sovrappongono codici fraudolenti

Riassunto generato con l’IA. Potrebbe non essere accurato.

Quando acquisti tramite i link sul nostro sito, potremmo guadagnare una commissione di affiliazione. Scopri di più

Il pagamento digitale tramite QR code è ormai parte integrante della nostra quotidianità: basta inquadrare con lo smartphone un semplice quadrato bianco e nero per completare una transazione finanziaria. Ma dietro quella che appare come una banale immagine pixelata si nasconde un meccanismo sofisticato, frutto di standard internazionali e protocolli di sicurezza rigorosi.

La chiave per comprendere il funzionamento risiede in un concetto fondamentale: il codice QR non contiene denaro né valore intrinseco. Si tratta piuttosto di un indirizzo digitale accompagnato da istruzioni precise che indicano al sistema di pagamento "chi paga chi e quanto".

Ti potrebbe interessare anche

youtube play
Guarda su youtube logo

Trattandosi di un indirizzo, inquadrare il codice QR semplicemente manda l'utente a un'app di pagamento: Google Pay od Apple Pay sono le più comuni, ma sono moltissime le opzioni possibile. In teoria si potrebbe persino connettere direttamente l'app di home banking, ma in quel caso la complessità sarebbe davvero troppa. 

Quando il consumatore inquadra il codice con la fotocamera, l'applicazione di pagamento estrae istantaneamente una serie di dati critici: l'identificativo del commerciante, la rete di pagamento da utilizzare, l'importo della transazione, la valuta, un numero di riferimento univoco e le informazioni sul punto vendita.

Queste informazioni vengono quindi trasmesse online ai server di pagamento che, seguendo le regole dei circuiti bancari, delle reti di carte di credito o dei sistemi proprietari, procedono con l'autenticazione, la verifica del credito disponibile e l'addebito immediato. Il codice QR funge dunque da semplice punto d'ingresso al processo, un ponte tra il mondo fisico e l'infrastruttura finanziaria digitale.

A differenza dei tradizionali terminali POS che richiedono cablaggi complessi e hardware dedicato, un esercente può accettare pagamenti semplicemente stampando un codice su carta e apponendolo in vetrina. La densità informativa del QR code, unita alla sua capacità di correzione degli errori che permette di recuperare i dati anche quando parte dell'immagine è danneggiata o sporca, garantisce affidabilità anche in condizioni ambientali difficili. Questa robustezza tecnica ha favorito l'adozione massiccia in contesti diversissimi: dalle bancarelle di strada alle bollette domestiche, dagli e-commerce alle campagne pubblicitarie televisive.

Il QR code è un indirizzo, non un portafoglio digitale

Una volta deciso di usare il codice QR per le transazioni, il passo successivo è scegliere tra dinamico e statico. I codici statici vengono generati una volta sola e possono essere riutilizzati indefinitamente, con l'importo inserito manualmente dall'utente o determinato successivamente dal server. Sono ideali per piccoli commercianti, attività informali o raccolte fondi dove la semplicità operativa è prioritaria. I codici dinamici, invece, vengono creati al momento per ogni transazione, incorporando importo preciso, numero d'ordine e scadenza temporale, offrendo protezione superiore contro frodi e uso improprio.

Il secondo asse distingue tra modalità MPM (Merchant-Presented Mode) e CPM (Consumer-Presented Mode). Nella prima, il commerciante espone il codice che il cliente scansiona con il proprio smartphone: è la configurazione più diffusa nei negozi fisici e segue gli standard EMVCo (Giappone con la specifica JPQR) per facilitare l'interoperabilità tra diversi operatori nazionali. Nella modalità CPM accade l'opposto: il cliente mostra sullo schermo del telefono un codice che viene letto da uno scanner del commerciante, soluzione preferita nei self-service dei convenience store o nei tornelli dei trasporti pubblici dove la velocità di lettura è essenziale.

La struttura dati che alimenta questi codici si basa sul formato TLV, acronimo di Tag-Length-Value. Ogni frammento di informazione è organizzato in triplette composte da un identificatore numerico (tag) che specifica il tipo di dato, un campo che ne indica la lunghezza e il valore effettivo. Questo schema modulare permette all'applicazione di analizzare sequenzialmente il flusso di caratteri estraendo con precisione ogni singolo elemento necessario alla transazione.

Il payload, ovvero la stringa di dati contenuta nel QR code, inizia sempre con il tag "00" che funge da indicatore di formato, confermando la conformità allo standard EMVCo con il valore "01". Segue immediatamente il tag "01" che dichiara se il codice è statico (valore "11") o dinamico (valore "12"), permettendo all'app di adottare il flusso di elaborazione appropriato. I tag compresi tra "26" e "51" sono riservati alle informazioni specifiche di ciascun fornitore di servizi di pagamento: qui vengono nidificate, sempre in formato TLV, le credenziali del commerciante e i dettagli dell'account ricevente validi all'interno di quella particolare rete.

Gli elementi successivi sono standardizzati e universali. Il tag "52" identifica il codice di categoria merceologica del commerciante, mentre "53" specifica la valuta secondo lo standard ISO 4217. Il tag "54" contiene l'importo della transazione quando questo è predefinito. I tag "58", "59" e "60" registrano rispettivamente il codice paese, la denominazione ufficiale dell'esercente e la località del punto vendita.

Particolarmente importante è il tag "62", il campo dati aggiuntivi, che funziona come contenitore flessibile per informazioni supplementari anch'esse strutturate in formato TLV: numero di scontrino, identificativo del terminale, codici di riferimento operativi. Infine, la stringa termina sempre con il tag "63" che ospita il CRC, un codice di controllo a quattro caratteri esadecimali calcolato matematicamente sull'intero payload per verificarne l'integrità e rilevare eventuali corruzioni o manomissioni.

Il processo di generazione effettivo si articola in tre fasi distinte. Prima si assembla la stringa TLV secondo le specifiche, inserendo provvisoriamente "0000" nel campo CRC. Successivamente si applica l'algoritmo CRC-16/CCITT-FALSE all'intera sequenza di byte, ottenendo un valore esadecimale che sostituisce il placeholder. A questo punto il payload è completo e pronto per la terza fase: la conversione in simbolo grafico bidimensionale secondo lo standard ISO/IEC 18004.

Durante l'encoding si seleziona la modalità di codifica ottimale in base alla natura dei dati (numerici, alfanumerici, binari) e si sceglie il livello di correzione errori tra L, M, Q e H. Livelli superiori permettono di recuperare il contenuto anche con danneggiamenti fino al 30% del codice, ma producono immagini più complesse e dense. Per i pagamenti si privilegia solitamente il livello M o Q come compromesso tra leggibilità e resilienza. Infine si applica una maschera ottimizzata per migliorare la scansionabilità del pattern finale.

Rischi di sicurezza e frodi

Le considerazioni di sicurezza operativa richiedono attenzione particolare. I codici statici con importo fisso prevengono errori di digitazione ma necessitano ristampa ad ogni modifica di prezzo. I codici dinamici con scadenza temporale breve neutralizzano il rischio che screenshot del codice vengano riutilizzati fraudolentemente.

La minaccia fisica più insidiosa rimane l'attacco "overlay", dove malintenzionati sovrappongono codici falsi su quelli legittimi: contromisure efficaci includono watermark visibili, loghi aziendali integrati nel design, verifiche periodiche degli espositori e interfacce utente che evidenziano chiaramente il nome del beneficiario prima di confermare il pagamento.

Sul fronte sistemico, la validazione server-side costituisce la linea di difesa critica: ogni richiesta di pagamento deve essere confrontata con l'elenco degli ordini pendenti, verificando che l'identificativo univoco non sia già stato utilizzato e che non sia scaduto il termine di validità. Solo attraverso questa combinazione di standard tecnici rigorosi, crittografia applicata con intelligenza e procedure operative attente si può trasformare un semplice foglio stampato in uno strumento di pagamento sicuro, scalabile e accessibile a qualsiasi tipo di attività commerciale, dalle multinazionali ai venditori ambulanti.

Fonte dell'articolo: www.cio.com

👋 Partecipa alla discussione! Scopri le ultime novità che abbiamo riservato per te!

0 Commenti

⚠️ Stai commentando come Ospite . Vuoi accedere?

Invia

Per commentare come utente ospite, clicca cerchi

Cliccati: 0 /

Reset

Questa funzionalità è attualmente in beta, se trovi qualche errore segnalacelo.

Segui questa discussione

Ti potrebbe interessare anche

L'Euro Digitale può salvare l'Europa, ma i problemi non mancano
1

Business

L'Euro Digitale può salvare l'Europa, ma i problemi non mancano

Di Valerio Porcu • 1 giorno fa
Legge italiana contro il ransomware, proibito pagare!

Business

Legge italiana contro il ransomware, proibito pagare!

Di Valerio Porcu • 1 giorno fa
Senza GenAI non si va avanti ma il ROI resta una scommessa

Business

Senza GenAI non si va avanti ma il ROI resta una scommessa

Di Valerio Porcu • 1 giorno fa
Resilienza cyber e IA aumentata, la lunga ascesa della napoletana Innovaway
1

Business

Resilienza cyber e IA aumentata, la lunga ascesa della napoletana Innovaway

Di Antonino Caffo • 1 giorno fa
Microsoft Azure ha davvero bloccato il più grande attacco DDoS?
2

Business

Microsoft Azure ha davvero bloccato il più grande attacco DDoS?

Di Antonino Caffo • 13 ore fa
Footer
Tom's Hardware Logo

 
Contatti
  • Contattaci
  • Feed RSS
Legale
  • Chi siamo
  • Privacy
  • Cookie
  • Affiliazione Commerciale
Altri link
  • Forum
Il Network 3Labs Network Logo
  • Tom's Hardware
  • SpazioGames
  • CulturaPop
  • Data4Biz
  • TechRadar
  • SosHomeGarden
  • Aibay

Tom's Hardware - Testata giornalistica associata all'USPI Unione Stampa Periodica Italiana, registrata presso il Tribunale di Milano, nr. 285 del 9/9/2013 - Direttore: Andrea Ferrario

3LABS S.R.L. • Via Pietro Paleocapa 1 - Milano (MI) 20121
CF/P.IVA: 04146420965 - REA: MI - 1729249 - Capitale Sociale: 10.000 euro

© 2025 3Labs Srl. Tutti i diritti riservati.