Outils Développeur
Validateur de Numéro de Carte Bancaire | Algorithme de Luhn
Saisissez un numéro de carte bancaire pour vérifier sa clé de contrôle avec l'algorithme de Luhn et détecter automatiquement la marque (Visa, Mastercard, Amex, etc.). Pratique pour tester la validation de formulaires.
[[ 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 ]] |
Marques prises en charge et règles de détection (IIN et longueur)
| Marque | Chiffres de tête (IIN) | Longueur |
|---|---|---|
| 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 |
Astuces
- Essayez les boutons d'exemple avec des numéros de test connus (ex. Visa : 4111 1111 1111 1111) plutôt qu'un numéro réel.
- Les espaces et tirets sont supprimés automatiquement, vous pouvez donc coller un numéro copié depuis n'importe où.
- Cet outil ne vérifie que le format via l'algorithme de Luhn. Pour une autorisation réelle ou une consultation de solde, utilisez l'API de votre prestataire de paiement.
- Lors du développement d'une validation de formulaire, utilisez cet outil pour générer un cas valide et un cas invalide afin de tester votre logique.
Questions Fréquentes
Anecdote — Hans Peter Luhn, le Père de la Clé de Contrôle
La clé de contrôle située à la fin d'un numéro de carte bancaire est vérifiée grâce à un algorithme conçu en 1954 par l'ingénieur d'IBM Hans Peter Luhn. Il en obtint le brevet en 1960, mais celui-ci a expiré depuis longtemps : l'algorithme est aujourd'hui libre d'utilisation pour tous.
Le mécanisme est étonnamment simple. En partant du chiffre le plus à droite, un chiffre sur deux est doublé ; si le résultat comporte deux chiffres, on les additionne entre eux (par exemple 8×2=16 → 1+6=7). Si la somme de tous les chiffres est un multiple de 10, le numéro est considéré comme formellement valide.
Cet algorithme est utilisé bien au-delà des cartes bancaires : il détecte aussi les erreurs de frappe dans les numéros IMEI (qui identifient les smartphones) ou les numéros d'assurance sociale canadiens. Il faut garder à l'esprit que Luhn détecte uniquement les erreurs de saisie accidentelles ; il ne dit rien sur l'existence réelle de la carte ni sur son solde.
Les 6 à 8 premiers chiffres d'un numéro de carte forment l'IIN (Issuer Identification Number), qui identifie le réseau de la carte et la banque émettrice. La détection de marque de cet outil repose sur les plages d'IIN publiquement documentées pour chaque réseau.