Convalida dei numeri di carta di credito — algoritmo di Luhn e riconoscimento del circuito
Inserendo il numero di una carta di credito, ne verifica la cifra di controllo con l'algoritmo di Luhn e ne riconosce automaticamente il circuito: Visa, Mastercard, American Express e gli altri. Comodo anche per collaudare la convalida dei moduli.
[[ labels.client_side_note ]]
[[ labels.result_label ]]
| [[ labels.formatted_label ]] | [[ result.formatted ]] |
|---|---|
| [[ labels.brand_label ]] | [[ brandName ]] [[ labels.brand_unknown ]] |
| [[ labels.checksum_label ]] | ✓ [[ labels.checksum_valid ]] ✗ [[ labels.checksum_invalid ]] |
Circuiti previsti e criteri di riconoscimento (prefisso e numero di cifre)
| Circuito | Cifre iniziali (prefisso dell'emittente) | Numero di cifre |
|---|---|---|
| Visa | 4 | 13, 16, 19 |
| Mastercard | 51–55, 2221–2720 | 16 |
| American Express | 34, 37 | 15 |
| Discover | 6011, 65 | 16 |
| JCB | 3528–3589 | 16 |
| Diners Club | 300–305, 36, 38 | 14 |
| UnionPay | 62 | 16–19 |
Consigli per l'uso
- Provate il funzionamento con i numeri di prova offerti dal pulsante degli esempi, come 4111 1111 1111 1111 per Visa, anziché con numeri di carte reali.
- Spazi e trattini sono rimossi automaticamente prima della verifica: potete quindi incollare senz'altro un numero copiato altrove.
- La verifica di questo strumento riguarda soltanto la forma, secondo l'algoritmo di Luhn. Il controllo effettivo del credito e del saldo va effettuato tramite l'interfaccia del vostro fornitore di servizi di pagamento.
- Realizzando la convalida di un modulo, conviene preparare qui tanto i casi corretti quanto quelli errati e verificarli entrambi.
Domande frequenti
A proposito — Hans Peter Luhn, il padre della cifra di controllo
La cifra di controllo inserita in coda al numero di una carta di credito si verifica con un algoritmo ideato nel 1954 da Hans Peter Luhn, ingegnere di IBM. Ne ottenne il brevetto nel 1960, ma il brevetto è ormai scaduto e l'algoritmo è oggi di pubblico dominio e liberamente utilizzabile.
Il funzionamento è sorprendentemente semplice: a partire dall'estrema destra si raddoppia una cifra sì e una no e, se il risultato ha due cifre, se ne sommano le cifre, per esempio 8 per 2 fa 16 e quindi 1 più 6 uguale 7. Se la somma di tutte le cifre è divisibile per dieci, il numero è formalmente valido.
L'algoritmo non serve soltanto alle carte di credito: si applica al rilevamento degli errori di digitazione in molti altri identificativi, come il codice che individua un telefono cellulare o certi numeri di previdenza sociale. Va però ricordato che serve unicamente a scoprire gli errori di battitura e non stabilisce né se la carta esista né se abbia credito disponibile.
Le prime sei o otto cifre del numero costituiscono il prefisso dell'emittente e recano l'informazione su quale circuito internazionale e quale banca abbiano emesso la carta. Anche il riconoscimento del circuito offerto da questo strumento si fonda sugli intervalli di quel prefisso.