Stripe test cards

Every Stripe test card number in one searchable list. Filter by scenario, then copy the card number, expiry, and CVC in one click.

Any future expiry, any CVC (4 digits for Amex), and any ZIP work with every card. Click a card number or a value to copy it.

Verified against Stripe docs on 2026-08-16. docs.stripe.com/testing

Most used

  • VisaSucceeds
    The classic Stripe test card. Payment succeeds immediately.
  • Generic declineDeclines
    Visageneric_decline
  • Insufficient fundsDeclines
    Visainsufficient_funds
  • 3DS required3DS challenge
    Visa
    Requires authentication on every transaction, regardless of how the card was set up.
  • 3DS2 challenge flow3DS challenge
    Visa
    Triggers the full 3D Secure 2 challenge window.
  • MastercardSucceeds

All cards

  • Visa (debit)Succeeds
    Funding shows as debit.
  • Mastercard (2-series)Succeeds
    Uses the newer 2-series BIN range (starts with 2223).
  • Mastercard (debit)Succeeds
    Funding shows as debit.
  • Mastercard (prepaid)Succeeds
    Funding shows as prepaid.
  • American ExpressSucceeds
    15-digit number with a 4-digit CVC.
  • American Express (2)Succeeds
  • DiscoverSucceeds
  • Discover (2)Succeeds
  • Diners ClubSucceeds
  • Diners Club (14-digit)Succeeds
    Tests 14-digit card numbers.
  • JCBSucceeds
  • UnionPaySucceeds
  • UnionPay (debit)Succeeds
    Funding shows as debit.
  • UnionPay (19-digit)Succeeds
    Tests 19-digit card numbers.
  • Lost cardDeclines
    Visalost_card
  • Stolen cardDeclines
    Visastolen_card
  • Expired cardDeclines
    Visaexpired_card
  • Incorrect CVCDeclines
    Visaincorrect_cvc
  • Processing errorDeclines
    Visaprocessing_error
  • Incorrect numberDeclines
    Visaincorrect_number
    Fails the Luhn check. Use it to test number validation in your form.
  • Velocity limit exceededDeclines
    Visacard_velocity_exceeded
  • Always blocked (fraud)Declines
    Visafraudulent
    Radar blocks the charge as fraudulent.
  • CVC check failsSucceeds
    Visaincorrect_cvc
    Charge succeeds unless you block on failed CVC checks; the CVC check is reported as failed.
  • ZIP check failsSucceeds
    Visaincorrect_zip
    Charge succeeds; the postal code check is reported as failed.
  • Address & ZIP checks failSucceeds
    Visaincorrect_address
    Charge succeeds; address and postal code checks both fail.
  • 3DS required for setup3DS challenge
    Visa
    Requires authentication when saving the card for future payments.
  • Declined after authentication3DS challenge
    Visa
    Authentication succeeds, then the charge is declined.
  • 3DS supported, not requiredSucceeds
    Visa
    Supports 3D Secure but completes without a challenge (frictionless).
  • Off-session after setup3DS challenge
    Visa
    Authenticate during setup, then off-session charges succeed without a challenge.
  • United KingdomSucceeds
    Visa
  • United Kingdom (debit)Succeeds
    Visa
  • CanadaSucceeds
    Visa
  • AustraliaSucceeds
    Visa
  • BrazilSucceeds
    Visa
  • MexicoSucceeds
    Visa
  • GermanySucceeds
    Visa
  • FranceSucceeds
    Visa
  • JapanSucceeds
    Visa
  • IndiaSucceeds
    Visa
  • SingaporeSucceeds
    Visa
  • ItalySucceeds
    Visa
  • SpainSucceeds
    Visa
  • NetherlandsSucceeds
    Visa
  • IrelandSucceeds
    Visa
  • SwitzerlandSucceeds
    Visa
  • New ZealandSucceeds
    Visa
  • Dispute (fraudulent)Disputed
    Visa
    Charge succeeds, then is disputed as fraudulent.
  • Dispute (product not received)Disputed
    Visa
    Charge succeeds, then is disputed as product not received.
  • Dispute inquiryDisputed
    Visa
    Charge succeeds, then an inquiry is opened.
  • Refund failsSucceeds
    Visa
    Charge succeeds, but refunding it asynchronously fails.

Learn about test mode

How to use Stripe test cards

How do Stripe test cards work?

Test cards only work with your test-mode API keys (keys starting with pk_test_ and sk_test_). Use any future expiry date, any CVC, and any ZIP code with the numbers above. No real money moves, and the cards do nothing in live mode.

How do I test a declined payment?

Pick a card from the declines tab. Each one triggers a specific decline code, so you can check that your checkout shows the right error message for insufficient funds, an expired card, or a generic decline.

How do I test 3D Secure?

Use a card from the 3D Secure tab. Stripe shows a test authentication window with buttons to complete or fail the challenge, so you can test both outcomes without a real bank.

Beyond a single charge

Test more than one payment

Testing subscriptions and trials

The same cards work for recurring payments. To simulate renewals, trial endings, and failed renewal payments without waiting, use Stripe test clocks, which fast-forward time for a test customer.

Testing webhooks locally

Card payments trigger the same webhook events in test mode. Run stripe listen --forward-to localhost:3000/webhook with the Stripe CLI to receive them locally, then create a test payment from your terminal with a PaymentMethod token such as pm_card_visa.

Selling with Stripe?

Checkout Page gives you a hosted checkout built on your own Stripe account. Create a checkout, run a test payment with the cards above, and go live when it looks right, all without writing code.

No credit card required. Cancel anytime.

Common questions

Frequently asked questions about Stripe test cards