OUTIL GRATUIT · CARTES DE TEST STRIPE

Cartes de test Stripe

La carte à retenir est 4242 4242 4242 4242, avec n'importe quel CVC à trois chiffres (quatre pour American Express), une date d'expiration future comme 12/34 et ce que vous voulez dans les autres champs. Elle ne fonctionne qu'avec vos clés API de test. Le tableau ci-dessous reprend 119 cartes de test vérifiées sur la documentation de Stripe le 26 septembre 2026, dont les 64 cartes que Stripe classe par pays : la carte française passe en tête de ce groupe, les IBAN SEPA français en tête des moyens de paiement locaux, et la carte co-badgée Cartes Bancaires figure parmi les marques. Cherchez, cliquez sur un numéro pour le copier, téléchargez l'ensemble en JSON ou en CSV pour votre suite de tests. Chaque carte d'échec indique aussi le code d'erreur, le decline code et l'événement webhook qu'elle produit — ce que la documentation officielle répartit sur trois pages.

GratuitSans inscription119 cartesTéléchargement JSON + CSV

Aussi enEnglish繁體中文日本語한국어EspañolFrançaisDeutschPortuguês (Brasil)

stripe · cartes de test

Cliquez sur un numéro pour le copier sans espaces. Rien n'est envoyé nulle part : le tableau et les téléchargements sont construits dans cette page. Le téléchargement suit le filtre, vous pouvez donc n'exporter que les cartes de refus.

NuméroSimuleMarquePaymentMethodCodes et événement
Paiement réussi, par marque de carte · 15
Trois chiffres quelconques · Toute date future Paiement réussi Visa pm_card_visa —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec une carte de débit Visa (debit) pm_card_visa_debit —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi Mastercard pm_card_mastercard —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec un BIN de la série 2 Mastercard (2-series) — —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec une carte de débit Mastercard (debit) pm_card_mastercard_debit —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec une carte prépayée Mastercard (prepaid) pm_card_mastercard_prepaid —payment_intent.succeeded
Quatre chiffres quelconques · Toute date future Paiement réussi (15 chiffres, CVC à 4 chiffres) American Express pm_card_amex —payment_intent.succeeded
Quatre chiffres quelconques · Toute date future Paiement réussi, second BIN American Express American Express — —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi Discover pm_card_discover —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec un numéro à 19 chiffres UnionPay (19-digit) — —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi Diners Club pm_card_diners —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec un numéro à 14 chiffres Diners Club (14-digit) — —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi JCB pm_card_jcb —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi UnionPay pm_card_unionpay —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi avec une carte française co-badgée Cartes Bancaires/Visa Cartes Bancaires / Visa pm_card_visa_cartesBancaires —payment_intent.succeeded
Refus · 10
Trois chiffres quelconques · Toute date future Refus générique Visa pm_card_visa_chargeDeclined card_declineddecline_code generic_declinepayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Refus pour fonds insuffisants Visa pm_card_visa_chargeDeclinedInsufficientFunds card_declineddecline_code insufficient_fundspayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Refus pour carte perdue Visa pm_card_visa_chargeDeclinedLostCard card_declineddecline_code lost_cardpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Refus pour carte volée Visa pm_card_visa_chargeDeclinedStolenCard card_declineddecline_code stolen_cardpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Refus pour carte expirée Visa pm_card_chargeDeclinedExpiredCard expired_cardpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Refus pour CVC incorrect (envoyez un CVC, sinon la vérification est ignorée) Visa pm_card_chargeDeclinedIncorrectCvc incorrect_cvcpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Refus pour erreur de traitement Visa pm_card_chargeDeclinedProcessingError processing_errorpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Numéro incorrect — échoue exprès au contrôle de Luhn Visa — incorrect_numberpas d'événement — rejetée avant l'API
Trois chiffres quelconques · Toute date future Refus pour dépassement de la limite de fréquence Visa pm_card_visa_chargeDeclinedVelocityLimitExceeded card_declineddecline_code card_velocity_exceededpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Se rattache à un Customer, puis échoue au moment du débit Visa pm_card_chargeCustomerFail card_declinedpayment_intent.payment_failed
Radar, fraude et vérifications d'adresse · 9
Trois chiffres quelconques · Toute date future Risque maximal — Radar la bloque toujours Visa pm_card_radarBlock card_declineddecline_code generic_declinepayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Niveau de risque « highest » — Radar peut la bloquer selon vos règles Visa pm_card_riskLevelHighest card_declineddecline_code generic_declinepayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Niveau de risque « elevated » — Radar peut la placer en examen manuel Visa pm_card_riskLevelElevated —review.opened
Trois chiffres quelconques · Toute date future Score élevé de litige pour fraude Visa pm_card_highFraudDisputeScore —review.opened
Trois chiffres quelconques · Toute date future Score élevé d'avertissement précoce de fraude Visa pm_card_highEfwScore —review.opened
Trois chiffres quelconques · Toute date future Abus d'essai gratuit — bloquée si ce contrôle est activé Visa pm_card_freeTrialAbuseBlock card_declineddecline_code generic_declinepayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Échec de la vérification du CVC (seulement si vous envoyez un CVC) Visa pm_card_cvcCheckFail card_declineddecline_code generic_declinepayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Échec de la vérification du code postal (seulement si vous en envoyez un) Visa pm_card_avsZipFail card_declineddecline_code generic_declinepayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Échec des vérifications du code postal et de la ligne 1 de l'adresse Visa pm_card_avsFail card_declineddecline_code generic_declinepayment_intent.payment_failed
Litiges et avertissements de fraude · 8
Trois chiffres quelconques · Toute date future Paiement réussi, puis contesté pour fraude Visa pm_card_createDispute —charge.dispute.created
Trois chiffres quelconques · Toute date future Paiement réussi, puis contesté pour fraude sur Discover Discover — —charge.dispute.created
Trois chiffres quelconques · Toute date future Paiement réussi, puis contesté pour produit non reçu Visa pm_card_createDisputeProductNotReceived —charge.dispute.created
Trois chiffres quelconques · Toute date future Paiement réussi, puis demande d'information plutôt qu'une rétrofacturation Visa pm_card_createDisputeInquiry —charge.dispute.created
Trois chiffres quelconques · Toute date future Paiement réussi, puis avertissement précoce de fraude Visa pm_card_createIssuerFraudRecord —radar.early_fraud_warning.created
Trois chiffres quelconques · Toute date future Paiement réussi, puis contesté plusieurs fois Visa pm_card_createMultipleDisputes —charge.dispute.created
Trois chiffres quelconques · Toute date future Litige éligible à Visa Compelling Evidence 3.0 Visa pm_card_createCe3EligibleDispute —charge.dispute.created
Trois chiffres quelconques · Toute date future Litige éligible à Smart Disputes Visa pm_card_createAutoRepresentmentEligibleDispute —charge.dispute.created
Remboursements et solde · 4
Trois chiffres quelconques · Toute date future Remboursement d'abord en attente, qui aboutit plus tard Visa pm_card_pendingRefund —refund.updated
Trois chiffres quelconques · Toute date future Remboursement apparemment réussi, qui échoue plus tard Visa pm_card_refundFail —refund.failed
Trois chiffres quelconques · Toute date future Paiement national crédité directement sur le solde disponible Visa pm_card_bypassPending —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement international crédité directement sur le solde disponible Visa pm_card_bypassPendingInternational —payment_intent.succeeded
3D Secure · 9
Trois chiffres quelconques · Toute date future 3DS requis, et l'authentification réussit Visa (IE) pm_card_threeDSecure2Required —payment_intent.requires_action
Trois chiffres quelconques · Toute date future 3DS requis sur une carte émise aux États-Unis, l'authentification réussit Visa (US) — —payment_intent.requires_action
Trois chiffres quelconques · Toute date future 3DS réussi, puis le paiement est quand même refusé Visa pm_card_threeDSecureRequiredChargeDeclined card_declinedpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future La vérification 3DS elle-même échoue, et le paiement est refusé Visa pm_card_threeDSecureRequiredProcessingError card_declinedpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future 3DS pris en charge, mais non requis par les règles par défaut Visa pm_card_threeDSecureOptional —payment_intent.succeeded
Trois chiffres quelconques · Toute date future 3DS pris en charge, mais la tentative produit une erreur de traitement Visa pm_card_threeDSecureOptionalProcessingError card_declinedpayment_intent.payment_failed
Trois chiffres quelconques · Toute date future Paiements hors session soumis à 3DS tant que la carte n'est pas configurée pour de futurs paiements Visa pm_card_authenticationRequiredOnSetup —payment_intent.requires_action
Trois chiffres quelconques · Toute date future Authentification requise à chaque transaction, quelle que soit la configuration de la carte Visa pm_card_authenticationRequired —payment_intent.requires_action
Trois chiffres quelconques · Toute date future Déjà configurée pour le hors session ; les paiements en session s'authentifient toujours Visa pm_card_authenticationRequiredSetupForOffSession —payment_intent.requires_action
Paiement réussi, par pays · 64
Trois chiffres quelconques · Toute date future Votre marchéPaiement réussi — pays d'émission : France Visa pm_card_fr —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : États-Unis Visa pm_card_us —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Argentine Visa pm_card_ar —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Brésil Visa pm_card_br —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Canada Visa pm_card_ca —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Chili Visa pm_card_cl —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Colombie Visa pm_card_co —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Costa Rica Visa pm_card_cr —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Équateur Visa pm_card_ec —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Mexique Visa pm_card_mx —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Mexique Carnet — —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Panama Visa pm_card_pa —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Paraguay Visa pm_card_py —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Pérou Visa pm_card_pe —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Uruguay Visa pm_card_uy —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Émirats arabes unis Visa pm_card_ae —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Émirats arabes unis Mastercard pm_card_ae_mastercard —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Autriche Visa pm_card_at —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Belgique Visa pm_card_be —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Bulgarie Visa pm_card_bg —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Biélorussie Visa pm_card_by —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Croatie Visa pm_card_hr —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Chypre Visa pm_card_cy —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Tchéquie Visa pm_card_cz —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Danemark Visa pm_card_dk —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Estonie Visa pm_card_ee —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Finlande Visa pm_card_fi —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Allemagne Visa pm_card_de —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Gibraltar Visa pm_card_gi —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Grèce Visa pm_card_gr —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Hongrie Visa pm_card_hu —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Irlande Visa pm_card_ie —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Italie Visa pm_card_it —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Lettonie Visa pm_card_lv —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Liechtenstein Visa pm_card_li —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Lituanie Visa pm_card_lt —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Luxembourg Visa pm_card_lu —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Malte Visa pm_card_mt —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Pays-Bas Visa pm_card_nl —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Norvège Visa pm_card_no —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Pologne Visa pm_card_pl —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Portugal Visa pm_card_pt —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Roumanie Visa pm_card_ro —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Arabie saoudite Visa — —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Slovénie Visa pm_card_si —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Slovaquie Visa pm_card_sk —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Espagne Visa pm_card_es —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Suède Visa pm_card_se —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Suisse Visa pm_card_ch —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Royaume-Uni Visa pm_card_gb —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Royaume-Uni Visa (debit) pm_card_gb_debit —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Royaume-Uni Mastercard pm_card_gb_mastercard —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Australie Visa pm_card_au —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Chine Visa pm_card_cn —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Hong Kong Visa pm_card_hk —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Inde Visa pm_card_in —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Japon Visa pm_card_jp —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Japon JCB pm_card_jcb —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Malaisie Visa pm_card_my —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Nouvelle-Zélande Visa pm_card_nz —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Singapour Visa pm_card_sg —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Taïwan Visa pm_card_tw —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Thaïlande Visa (credit) pm_card_th_credit —payment_intent.succeeded
Trois chiffres quelconques · Toute date future Paiement réussi — pays d'émission : Thaïlande Visa (debit) pm_card_th_debit —payment_intent.succeeded

Moyens de paiement locaux : valeurs de test

Ce que Stripe publie pour le prélèvement SEPA en France, en Allemagne et en Espagne, Konbini au Japon et Boleto au Brésil. Cliquez sur une valeur pour la copier. Ces paiements attendent en processing ou en requires_action avant d'aboutir : la dernière colonne donne donc toute la séquence d'événements webhook.

Valeur de testSimuleParamètrePaymentMethodCodes et événement
SEPA Direct Debit · France (FR) · 6
Votre marchéL'état du PaymentIntent passe de processing à succeeded sepa_debit[iban] pm_sepaDebit_success_fr payment_intent.processing→ payment_intent.succeeded
Votre marchéL'état du PaymentIntent passe de processing à succeeded au bout d'au moins trois minutes sepa_debit[iban] pm_sepaDebit_successDelayed_fr payment_intent.processing→ payment_intent.succeeded
Votre marchéL'état du PaymentIntent passe de processing à requires_payment_method sepa_debit[iban] pm_sepaDebit_failed_fr payment_intent.processing→ payment_intent.payment_failed
Votre marchéL'état du PaymentIntent passe de processing à requires_payment_method au bout d'au moins trois minutes sepa_debit[iban] pm_sepaDebit_failedDelayed_fr payment_intent.processing→ payment_intent.payment_failed
Votre marchéL'état du PaymentIntent passe de processing à succeeded, mais un litige est immédiatement créé sepa_debit[iban] pm_sepaDebit_disputed_fr payment_intent.processing→ payment_intent.succeeded→ charge.dispute.created
Votre marchéÉchec du paiement avec un code d'échec insufficient_funds sepa_debit[iban] pm_sepaDebit_insufficientFunds_fr insufficient_fundspayment_intent.processing→ payment_intent.payment_failed
SEPA Direct Debit · Allemagne (DE) · 6
L'état du PaymentIntent passe de processing à succeeded sepa_debit[iban] pm_sepaDebit_success_de payment_intent.processing→ payment_intent.succeeded
L'état du PaymentIntent passe de processing à succeeded au bout d'au moins trois minutes sepa_debit[iban] pm_sepaDebit_successDelayed_de payment_intent.processing→ payment_intent.succeeded
L'état du PaymentIntent passe de processing à requires_payment_method sepa_debit[iban] pm_sepaDebit_failed_de payment_intent.processing→ payment_intent.payment_failed
L'état du PaymentIntent passe de processing à requires_payment_method au bout d'au moins trois minutes sepa_debit[iban] pm_sepaDebit_failedDelayed_de payment_intent.processing→ payment_intent.payment_failed
L'état du PaymentIntent passe de processing à succeeded, mais un litige est immédiatement créé sepa_debit[iban] pm_sepaDebit_disputed_de payment_intent.processing→ payment_intent.succeeded→ charge.dispute.created
Échec du paiement avec un code d'échec insufficient_funds sepa_debit[iban] pm_sepaDebit_insufficientFunds_de insufficient_fundspayment_intent.processing→ payment_intent.payment_failed
SEPA Direct Debit · Espagne (ES) · 6
L'état du PaymentIntent passe de processing à succeeded sepa_debit[iban] pm_sepaDebit_success_es payment_intent.processing→ payment_intent.succeeded
L'état du PaymentIntent passe de processing à succeeded au bout d'au moins trois minutes sepa_debit[iban] pm_sepaDebit_successDelayed_es payment_intent.processing→ payment_intent.succeeded
L'état du PaymentIntent passe de processing à requires_payment_method sepa_debit[iban] pm_sepaDebit_failed_es payment_intent.processing→ payment_intent.payment_failed
L'état du PaymentIntent passe de processing à requires_payment_method au bout d'au moins trois minutes sepa_debit[iban] pm_sepaDebit_failedDelayed_es payment_intent.processing→ payment_intent.payment_failed
L'état du PaymentIntent passe de processing à succeeded, mais un litige est immédiatement créé sepa_debit[iban] pm_sepaDebit_disputed_es payment_intent.processing→ payment_intent.succeeded→ charge.dispute.created
Échec du paiement avec un code d'échec insufficient_funds sepa_debit[iban] pm_sepaDebit_insufficientFunds_es insufficient_fundspayment_intent.processing→ payment_intent.payment_failed
Konbini · Japon (JP) · 6
{any_prefix}@{any_domain}confirmation_number 11111111110 Paiement réussi au bout de 3 minutes billing_details.email — payment_intent.requires_action→ payment_intent.succeeded
{any_prefix}succeed_immediately@{any_domain}confirmation_number 22222222220 Paiement réussi immédiatement billing_details.email — payment_intent.requires_action→ payment_intent.succeeded
{any_prefix}expire_immediately@{any_domain}confirmation_number 33333333330 Le paiement expire immédiatement billing_details.email — payment_intent.requires_action→ payment_intent.payment_failed
{any_prefix}expire_with_delay@{any_domain}confirmation_number 44444444440 Jamais payé ; expire au bout de 3 minutes billing_details.email — payment_intent.requires_action→ payment_intent.payment_failed
{any_prefix}fill_never@{any_domain}confirmation_number 55555555550 Jamais payé ; expire à la date expires_at que vous avez fixée billing_details.email — payment_intent.requires_action→ payment_intent.payment_failed
Numéro de confirmation refusé à la confirmation du PaymentIntent payment_method_options[konbini][confirmation_number] — payment_intent_konbini_rejected_confirmation_number
Boleto · Brésil (BR) · 6
{any_prefix}@{any_domain} Boleto payé au bout de 3 minutes billing_details.email — payment_intent.requires_action→ payment_intent.succeeded
{any_prefix}succeed_immediately@{any_domain} Boleto payé immédiatement billing_details.email — payment_intent.requires_action→ payment_intent.succeeded
{any_prefix}expire_immediately@{any_domain} Boleto expiré sans paiement ; payment_failed en quelques secondes billing_details.email — payment_intent.requires_action→ payment_intent.payment_failed
{any_prefix}expire_with_delay@{any_domain} Boleto expiré sans paiement au bout d'environ 3 minutes billing_details.email — payment_intent.requires_action→ payment_intent.payment_failed
{any_prefix}fill_never@{any_domain} Boleto jamais payé ; expire à sa date expires_at billing_details.email — payment_intent.requires_action→ payment_intent.payment_failed
CNPJ 00.000.000/0000-00 CPF de bac à sable qui contourne la validation du numéro fiscal boleto[tax_id] — —

Sources : documentation Stripe en français — cartes et valeurs de test, Cartes Bancaires (CB), conformité des cartes comarquées, paiements par prélèvement SEPA, accepter un paiement par prélèvement SEPA et codes de refus, consultées le 26 septembre 2026.

Comment utiliser une carte de test Stripe

Trois étapes. Les cartes de test ne s'utilisent qu'avec des clés API de test : rien ici ne peut toucher une vraie carte ni un vrai client.

  1. Passez en clés de test. Utilisez vos clés API publiable et secrète de test, ou un environnement de test. N'utilisez jamais de vraies informations de carte : le Contrat d'utilisation du service Stripe interdit de tester en mode production avec de véritables moyens de paiement.
  2. Choisissez la carte du résultat voulu. 4242 4242 4242 4242 pour un paiement réussi. Pour exercer votre gestion des erreurs, prenez la carte dont la ligne affiche le decline code voulu, avec n'importe quel CVC à trois chiffres et une date future comme 12/34.
  3. Dans le code serveur, passez le PaymentMethod. Stripe recommande d'utiliser un PaymentMethod comme pm_card_visa plutôt qu'un numéro de carte dans les appels API, même en test, pour que votre code reste conforme à la norme PCI en production. La colonne PaymentMethod donne le token de chaque carte qui en a un.

Tester un paiement français : carte FR, Cartes Bancaires et IBAN SEPA

Pour un site qui encaisse en France, trois lignes du tableau comptent plus que 4242 4242 4242 4242, et Stripe les documente à trois endroits différents.

  • La carte française, 4000 0025 0000 0003 (pm_card_fr), en tête du groupe « par pays ». Elle simule un paiement réussi avec une carte émise en France : c'est le pays d'émission qui change, et Stripe calcule les frais transfrontaliers selon ce pays — les cartes émises hors des États-Unis peuvent en supporter, même dans les environnements de test. Ce qu'elle ne teste pas, c'est l'authentification : Stripe précise que les cartes de sa section Europe et Moyen-Orient simulent un paiement qui réussit sans authentification, alors que l'authentification forte du client est exigée pour les paiements en ligne dans l'EEE. Pour 3D Secure, prenez le groupe dédié.
  • La carte co-badgée Cartes Bancaires/Visa, 4000 0025 0000 1001 (pm_card_visa_cartesBancaires), dans le groupe des marques. Cartes Bancaires est le réseau de cartes local en France, et selon Stripe plus de 95 % de ces cartes portent aussi la marque Visa ou Mastercard. Le règlement (UE) 2015/751 impose aux entreprises de l'EEE de laisser le titulaire choisir la marque de sa carte co-badgée au moment du paiement : c'est ce sélecteur que cette carte sert à tester. Dans un environnement de test, Stripe affiche le sélecteur de réseau sur ses interfaces hébergées même si Cartes Bancaires n'est pas activé, et Checkout prend ce choix en charge par défaut. Stripe publie une seconde carte co-badgée, Cartes Bancaires/Mastercard (5555 5525 0000 1001), que ce tableau ne reprend pas.
  • Les IBAN SEPA français, en tête du tableau des moyens de paiement locaux : FR1420041010050500013M02606 pour un prélèvement qui aboutit, FR8420041010050500013M02607 pour un échec, FR5720041010050500013M02608 pour un litige immédiat, FR9720041010050000002222227 pour des fonds insuffisants, et les variantes qui ne se résolvent qu'au bout de trois minutes. Le Payment Element valide ces IBAN et affiche le mandat quand vous les saisissez. Stripe en publie neuf par pays ; le tableau garde les six scénarios principaux.

Deux choses que ces lignes ne montrent pas, et qu'il vaut mieux savoir avant la mise en production. Côté Cartes Bancaires, Stripe relance automatiquement sur Visa ou Mastercard un paiement refusé sur le réseau CB pour une raison technique, et le commerçant ne peut pas contester un litige Cartes Bancaires — dont les frais sont de 0 EUR. Côté SEPA, un débit de test se résout en quelques minutes ; en production, Stripe recommande d'attendre au moins six jours ouvrables avant de le considérer comme réussi, et le client peut le contester sans justification pendant huit semaines, jusqu'à treize mois si le débit n'était pas autorisé.

Quelle carte déclenche quel échec — et ce que votre webhook va recevoir

Bien gérer un paiement échoué, c'est tenir trois choses en tête à la fois : le error.code que lève votre appel API, le decline_code que l'émetteur y a joint, et l'événement qui arrivera plus tard sur votre point de terminaison webhook. Stripe les documente sur trois pages différentes, si bien que la plupart des intégrations sont écrites d'après l'une d'elles et surprises par les deux autres. Voici la même information, une ligne par résultat.

Carte de testCe qu'elle simuleerror.codedecline_codeÉvénement webhook
4000 0000 0000 0002Refus génériquecard_declinedgeneric_declinepayment_intent.payment_failed
4000 0000 0000 9995Fonds insuffisantscard_declinedinsufficient_fundspayment_intent.payment_failed
4000 0000 0000 9987Carte perduecard_declinedlost_cardpayment_intent.payment_failed
4000 0000 0000 9979Carte voléecard_declinedstolen_cardpayment_intent.payment_failed
4000 0000 0000 6975Trop de tentatives sur une même cartecard_declinedcard_velocity_exceededpayment_intent.payment_failed
4000 0000 0000 0069Carte expiréeexpired_cardaucunpayment_intent.payment_failed
4000 0000 0000 0127CVC incorrectincorrect_cvcaucunpayment_intent.payment_failed
4000 0000 0000 0119Erreur de traitement sur le réseauprocessing_erroraucunpayment_intent.payment_failed
4242 4242 4242 4241Numéro qui échoue au contrôle de Luhnincorrect_numberaucunaucun — rejeté avant qu'un paiement existe
4100 0000 0000 0019Radar la bloque, toujourscard_declinedgeneric_declinepayment_intent.payment_failed
4000 0000 0000 9235Risque élevé, mise en examen manuelaucun — le paiement est crééaucunreview.opened
4000 0000 0000 0101Échec de la vérification du CVC par Radarcard_declinedgeneric_declinepayment_intent.payment_failed
4000 0000 0000 0036Échec de la vérification du code postal par Radarcard_declinedgeneric_declinepayment_intent.payment_failed
4000 0000 0000 0259Paiement réussi, puis litige pour fraudeaucunaucuncharge.dispute.created
4000 0000 0000 2685Paiement réussi, puis « produit non reçu »aucunaucuncharge.dispute.created
4000 0000 0000 5423Paiement réussi, puis avertissement précoce de fraudeaucunaucunradar.early_fraud_warning.created
4000 0000 0000 7726Remboursement d'abord en attente, puis réussiaucunaucunrefund.updated
4000 0000 0000 5126Remboursement apparemment réussi, puis échouéaucunaucunrefund.failed
4000 0000 0000 3220Authentification 3D Secure requiseaucunaucunpayment_intent.requires_action
4000 0084 0000 1629Authentifiée, puis refusée quand mêmecard_declinedaucunpayment_intent.payment_failed
4000 0084 0000 1280La vérification 3D Secure elle-même échouecard_declinedaucunpayment_intent.payment_failed

Deux habitudes découlent de cette lecture en un seul tableau. D'abord, card_declined n'est pas un motif, c'est une catégorie : le motif est dans decline_code. Des huit refus du haut du tableau, cinq en portent un ; les trois autres renvoient un error.code différent. Un gestionnaire d'erreurs qui ne regarde que error.code confond fonds insuffisants et carte volée. Or Stripe demande de ne pas dévoiler au client un refus pour carte perdue ou volée et de le présenter comme un generic_decline, alors que le client à court de fonds peut, lui, agir : ce sont deux messages différents.

Ensuite, certains résultats n'apparaissent jamais dans la réponse. Un paiement mis en examen, un litige ouvert trois semaines plus tard, un remboursement asynchrone qui passe de réussi à échoué : rien de cela n'est visible au moment de l'appel API. Ces résultats arrivent sous forme d'événements, ou n'arrivent pas du tout parce que le point de terminaison n'a jamais été écrit. C'est ce mode d'échec qu'il faut tester exprès : bloquez la carte, puis regardez ce que votre système a fait de l'événement.

Deux notes que le tableau ne peut pas contenir. Stripe ignore les vérifications du CVC et du code postal si vous n'envoyez pas ces champs : les cartes qui simulent un échec de vérification réussissent discrètement tant que votre formulaire ne les collecte pas. Et pour un paiement bloqué par Radar, Stripe documente generic_decline, dont la définition couvre le cas où « Stripe Radar ou Adaptive Acceptance a bloqué le paiement » — le client n'a pas à apprendre qu'il a été jugé suspect.

Tester 3D Secure

La réglementation sur l'authentification forte du client exige 3D Secure pour les paiements en ligne au sein de l'Espace économique européen, et c'est là qu'une intégration qui marche tombe le plus souvent — parce que le chemin heureux ne le voit jamais. Un paiement qui demande une authentification n'échoue pas et ne réussit pas : le PaymentIntent revient en requires_action, et votre front-end doit passer la main à Stripe.js pour que le client réussisse le challenge.

Neuf cartes du tableau parcourent les branches, et la distinction qui fait gagner le plus de temps est requis contre pris en charge :

  • 4000 0000 0000 3220 — l'authentification est requise et réussit. C'est la carte sur laquelle construire : vous saurez si votre client appelle vraiment l'étape de confirmation ou traite discrètement requires_action comme un échec.
  • 4000 0000 0000 3055 — 3D Secure est pris en charge mais pas demandé par défaut. Utile pour vérifier que vous n'avez pas rendu l'authentification obligatoire par accident.
  • 4000 0084 0000 1629 et 4000 0084 0000 1280 — les deux fins ratées : le client s'authentifie et l'émetteur refuse quand même, ou la vérification elle-même échoue. Les deux reviennent en card_declined ; un gestionnaire qui prend un challenge terminé pour un paiement terminé affichera une page de succès pour un paiement qui n'a jamais eu lieu.
  • 4000 0025 0000 3155 et 4000 0027 6000 3184 — les cartes enregistrées. La première exige l'authentification pour les paiements hors session tant qu'elle n'est pas configurée pour de futurs paiements ; la seconde l'exige toujours. Si vous comptez débiter vos clients plus tard sans eux, ces deux cartes font la différence entre un renouvellement qui marche et un abonnement mort.

Un piège : seules les cartes de ce groupe testent vraiment 3D Secure. Les autres cartes de test peuvent le déclencher, mais Stripe renvoie attempt_acknowledged et saute les étapes supplémentaires : votre écran de challenge ne s'affiche jamais, et vous en concluez à tort qu'il fonctionne. La carte française et les autres cartes « par pays » européennes, elles, réussissent sans authentification. Enfin, les redirections 3D Secure n'ont pas lieu pour un paiement créé directement dans le Dashboard Stripe : passez par votre propre front-end ou par un appel API.

Cartes de test Stripe par pays

Stripe tient une liste à part de cartes de test par pays : 64 cartes de 58 pays, chacune simulant un paiement réussi avec une carte émise dans ce pays. C'est le dernier groupe du tableau, et sur cette page la ligne France y passe en premier. Les PaymentMethods suivent le code pays — pm_card_fr, pm_card_de, pm_card_jp — à trois exceptions près : la carte mexicaine Carnet et la carte saoudienne n'ont pas de PaymentMethod, et la carte japonaise JCB utilise pm_card_jcb, le même que la carte JCB du groupe des marques. La ligne États-Unis, c'est 4242 4242 4242 4242 elle-même, avec son propre pm_card_us.

Pour simuler l'endroit où se trouve le client plutôt que la provenance de la carte, Stripe documente des adresses e-mail de localisation pour Checkout Sessions, Payment Links et grilles tarifaires : ajoutez +location_XX à la partie locale, par exemple test+location_FR@example.com, et passez-la en customer_email d'une Checkout Session ou en prefilled_email d'un Payment Link. Utile pour vérifier ce qu'un client en France voit s'afficher.

Sous le tableau des cartes figurent les valeurs de test publiées par Stripe pour trois moyens de paiement locaux : les IBAN du prélèvement SEPA pour la France, l'Allemagne et l'Espagne, Konbini pour le Japon et Boleto pour le Brésil. Ils ne se résolvent pas comme une carte. Un prélèvement SEPA attend en processing avant de réussir ou d'échouer, et un bon Konbini ou Boleto attend en requires_action jusqu'à son paiement ou son expiration : chaque ligne donne donc toute la séquence d'événements que recevra votre webhook, et non un seul.

Remboursements, litiges et tout ce qui arrive en retard

En mode production, les remboursements sont asynchrones : un remboursement peut sembler aboutir et échouer ensuite, ou rester pending avant d'aboutir. Presque aucune suite de tests ne le couvre, parce qu'avec une carte de test ordinaire les remboursements aboutissent aussitôt et ne changent plus d'état. Deux cartes rétablissent le vrai comportement : 4000 0000 0000 7726 laisse le remboursement en attente puis le fait réussir, 4000 0000 0000 5126 le déclare réussi puis le fait échouer. Les deux émettent ensuite un événement — exactement le code qu'il vaut mieux avoir écrit avant qu'un client appelle au sujet d'un remboursement jamais reçu.

Les litiges fonctionnent pareil, au ralenti. Le paiement aboutit normalement, puis une rétrofacturation apparaît des jours plus tard, avec charge.dispute.created pour seule notification. 4000 0000 0000 0259 ouvre un litige pour fraude, 4000 0000 0000 2685 un litige pour produit non reçu, et 4000 0000 0000 1976 une demande d'information plutôt qu'une rétrofacturation complète. 4000 0000 0000 5423 produit un avertissement précoce de fraude : le réseau vous prévient qu'un litige arrive probablement, quand il est encore temps de rembourser de vous-même.

Pour simuler l'issue et pas seulement l'événement, répondez au litige avec les chaînes de preuve que Stripe réserve aux tests : winning_evidence clôt le litige comme gagné, losing_evidence le clôt comme perdu, et escalate_inquiry_evidence transforme une demande d'information en rétrofacturation. Rappel pour le marché français : ces scénarios ne représentent pas un litige Cartes Bancaires, que le commerçant ne peut pas contester.

Dernière carte du groupe : 4000 0000 0000 0077 crédite les fonds directement sur votre solde disponible plutôt que sur le solde en attente. Ce n'est pas un test de paiement mais de comptabilité — utile si quelque chose en aval rapproche les virements et que vous ne voulez pas attendre un délai de règlement pour savoir si cela fonctionne.

Télécharger les fixtures en JSON ou en CSV

Un tableau qu'il faut recopier à la main est un tableau qu'on recopiera mal. Les deux boutons de téléchargement en haut de la page donnent les mêmes 119 cartes en fichiers lisibles par machine, générés dans le navigateur à partir des données qui servent à afficher cette page : ce que vous téléchargez ne peut pas s'écarter de ce que vous venez de lire.

Le JSON est un objet avec source, checked, count et un tableau cards. Chaque carte porte un id stable à citer dans le nom d'un test, les chiffres, la marque, le groupe, une description d'une ligne, les règles de CVC et d'expiration, les quatre champs de correspondance — payment_method, error_code, decline_code et webhook_event — et country, le code ISO du pays d'émission pour les cartes du groupe par pays. Les champs sans objet valent null au lieu d'être absents : un parseur n'a jamais à tester une clé manquante.

Le CSV contient les mêmes douze colonnes, avec les guillemets de la RFC 4180 : il s'ouvre dans un tableur et se charge dans pandas sans option de conversion. Les deux fichiers restent en anglais, identiques quelle que soit la langue de la page. Les valeurs des moyens de paiement locaux sont là pour être copiées, pas téléchargées : aucun des deux fichiers ne les contient.

Les deux téléchargements suivent le filtre appliqué. Réduisez le tableau aux refus, cliquez sur Télécharger le JSON, et vous obtenez dix lignes au lieu de 119 — souvent ce qu'attend un test paramétré :

test.each(fixtures.cards.filter(c => c.group === 'decline'))(
  '$id surfaces $decline_code',
  async ({ payment_method, error_code, decline_code }) => { /* … */ },
);

Les fichiers indiquent l'URL source et la date de vérification, parce qu'une liste de cartes sans date est une liste à laquelle on ne peut plus se fier dans six mois. Si Stripe change un numéro, la bonne correction consiste à revérifier la source, pas à garder une copie périmée dans votre dépôt.

Ce que vous construisez vraiment

Personne ne cherche des cartes de test pour le plaisir. Si vous êtes ici, vous branchez un paiement, et le paiement n'est qu'une pièce d'un ensemble : un catalogue, un prix que le client ne peut pas modifier, une session créée quelque part avec un secret, un webhook qui décide si la commande compte comme payée, puis tout ce qui se passe une fois l'argent arrivé.

La pièce qui casse le plus souvent n'est pas la carte, c'est le prix. Un site statique qui garde ses prix dans le HTML et envoie un montant à un point de paiement fait confiance au navigateur pour le chiffre, et le navigateur n'est pas digne de confiance : c'est toute une famille de bugs que les cartes de test ne verront jamais, car un paiement falsifié réussit parfaitement.

Clize s'appuie sur Stripe Checkout pour cette raison et met le prix côté serveur : une boutique hébergée calcule chaque panier d'après le _catalog.json déployé avec le site et ignore le montant annoncé par le client. Si c'est votre problème, le fichier catalogue a un générateur et un validateur (en anglais) ; et s'il vous suffit qu'un client paie un montant, clize pay link --amount 49 renvoie une URL Stripe Checkout en production sans compte Stripe à vous — ce paiement est de l'argent réel, gardez-le bien loin des numéros de cette page.

FAQ

Quel est le numéro de carte de test Stripe ?

Le numéro standard est 4242 4242 4242 4242, une Visa qui aboutit toujours. Associez-le à n'importe quel CVC à trois chiffres, à une date d'expiration future comme 12/34 et à n'importe quelles valeurs dans les autres champs. Il ne fonctionne qu'avec vos clés API de test.

Quelle carte de test Stripe utiliser pour une carte française ?

4000 0025 0000 0003, la ligne France de la liste de Stripe par pays, avec le PaymentMethod pm_card_fr : elle simule un paiement réussi avec une carte émise en France, sans authentification. Pour une carte co-badgée Cartes Bancaires, Stripe liste 4000 0025 0000 1001 (Cartes Bancaires/Visa, dans ce tableau) et 5555 5525 0000 1001 (Cartes Bancaires/Mastercard).

Comment tester un prélèvement SEPA avec Stripe ?

Avec les IBAN de test de Stripe, par exemple FR1420041010050500013M02606 pour un prélèvement qui aboutit et FR8420041010050500013M02607 pour un échec. Le PaymentIntent passe d'abord en processing, puis en succeeded ou en requires_payment_method ; les IBAN à délai mettent au moins trois minutes. Le tableau des moyens de paiement locaux donne les six scénarios français avec leur séquence d'événements.

Pourquoi ma carte de test Stripe est-elle refusée ?

Trois causes habituelles. Vous l'utilisez avec des clés API de production, alors que les cartes de test ne s'emploient qu'avec des clés de test. Vous avez copié une carte conçue pour être refusée : 4000 0000 0000 0002 et tout le groupe Refus existent pour cela. Ou le numéro échoue au contrôle de Luhn, comme 4242 4242 4242 4241, qui renvoie incorrect_number avant toute création de paiement.

Comment tester 3D Secure avec Stripe ?

Utilisez 4000 0000 0000 3220, qui exige l'authentification et la réussit. Le PaymentIntent revient en requires_action, et votre front-end doit passer la main à Stripe.js pour que le client réussisse le challenge. Seules les cartes du groupe 3D Secure testent vraiment ce flux ; les autres peuvent le déclencher, mais Stripe renvoie attempt_acknowledged et saute l'étape.

Quelle carte de test Stripe crée un litige ?

4000 0000 0000 0259 pour un litige pour fraude, 4000 0000 0000 2685 pour produit non reçu et 4000 0000 0000 1976 pour une demande d'information plutôt qu'une rétrofacturation complète. Le paiement aboutit d'abord, puis le litige arrive par l'événement charge.dispute.created. Répondez avec la chaîne winning_evidence ou losing_evidence pour le clore comme gagné ou perdu.

Ce que je saisis sur cette page est-il envoyé quelque part ?

Non. Le tableau est du HTML rendu avec la page, et la recherche, la copie au clic et les deux téléchargements sont un petit script qui tourne dans votre navigateur. Pas de compte, pas d'inscription, pas de requête réseau : la page fonctionne hors ligne une fois chargée.

clize pay link — une URL de paiement réelle en une commande

Une fois les tests finis, encaissez un vrai paiement.

Une commande renvoie un lien Stripe Checkout en production, sans compte Stripe, sans clé et sans formulaire d'inscription. C'est de l'argent réel : gardez bien séparés les deux jeux de numéros.

$ npm i -g @clize/clize && clize login
$ clize pay link --amount 49 --for "facture 1042"
[ Agent Storefront → ]