Outils Développeur

Numéros de carte de crédit de test

Numéros de carte de test pour Stripe, PayPal, Square et Braintree. Classés par marque et scénario succès/échec, avec copie en un clic. Idéal pour l'implémentation et les tests de paiement.


[[ labels.stripe_hint ]]
Service [[ labels.col_number ]] [[ labels.col_brand ]] [[ labels.col_behavior ]]
[[ card.service ]] [[ formatNumber(card.number) ]] [[ card.brand ]] [[ labels['subtype_' + card.subtype] ]] [[ behaviorLabel(card.behavior) ]]

Conseils

  • En mode test de Stripe, n'importe quel CVC à 3 chiffres (4 pour Amex), toute date d'expiration future et tout code postal à 5 chiffres seront acceptés. Aucun débit réel n'est effectué tant que vous utilisez des clés de test.
  • Tous les numéros de carte de test sont conçus pour passer la vérification de Luhn (algorithme de validation des numéros de carte) et ne seront donc pas rejetés par la validation côté client.
  • Pour tester le 3D Secure (3DS), utilisez des cartes dédiées. 4000002500003155 déclenche le dialogue d'authentification, et 4000000000003220 est utilisé pour le flux 3DS 2.
  • L'utilisation de numéros de carte de test en production entraînera un refus de transaction. Utilisez toujours des clés de test avec des cartes de test. Chez Stripe, les clés de test commencent par sk_test_.

Questions fréquentes

Tant que vous les utilisez avec des clés de test (comme sk_test_), aucun débit réel ne sera effectué. Si vous utilisez accidentellement une clé de production, la transaction sera tentée même avec des numéros de test — veillez donc à ne pas les confondre.

Chez Stripe, n'importe quel chiffre convient pour le CVC (3 chiffres pour Visa/Mastercard, 4 pour Amex), toute date future pour l'expiration (ex. : 12/34) et n'importe quel code postal à 5 chiffres. Les environnements sandbox de PayPal, Square et Braintree ne valident pas non plus ces valeurs de manière stricte.

C'est une formule qui vérifie si les chiffres et la structure d'un numéro de carte sont valides. Un chiffre sur deux en partant de la droite est doublé et tous les chiffres sont additionnés ; si le total est un multiple de 10, le numéro est considéré comme valide. Elle détecte la plupart des erreurs de frappe, mais ne peut pas vérifier si la carte existe réellement.

"4242..." est facile à retenir grâce à sa séquence répétée et a été conçu pour passer la vérification de Luhn. L'utilisation de ce numéro par Stripe dans sa documentation officielle pendant de nombreuses années en a fait le standard de facto parmi les développeurs de paiement.

Anecdote — L'algorithme de Luhn — Le gardien des numéros de carte depuis 1954

Le « chiffre de contrôle » à la fin d'un numéro de carte de crédit est validé par un algorithme créé en 1954 par l'ingénieur d'IBM Hans Peter Luhn. Un chiffre sur deux en partant de la droite est doublé, tous les chiffres sont additionnés, et le résultat doit être divisible par 10. Cet algorithme simple est encore utilisé par les grandes marques telles que Visa, Mastercard et Amex, et détecte la grande majorité des erreurs de frappe.

Cependant, la vérification de Luhn sert uniquement à détecter les erreurs de chiffres — elle ne vérifie pas si la carte existe réellement. L'utiliser dans la validation côté client est uniquement une amélioration de l'expérience utilisateur (retour d'erreur immédiat) et ne prévient pas la fraude. L'autorisation réelle doit toujours être effectuée côté serveur via une passerelle de paiement.

Les numéros de carte de test sont des numéros fixes que chaque service de paiement a délibérément conçus pour passer la vérification de Luhn. Par exemple, le 4242424242424242 de Stripe est facile à retenir et passe la validation de Luhn. Le numéro lui-même n'a aucune signification propre — il est simplement associé à un comportement (comme « succès » ou « échec ») dans le système de Stripe.