With Stripe test cards you can enter any 3-digit CVV, such as 123, along with any future expiry date and any billing postal code. The standard test number 4242 4242 4242 4242 will approve as long as the card has not expired, because Stripe test mode does not check the CVC value against anything. The only exceptions are special test numbers built to trigger a specific decline, such as an incorrect-CVC error.
Stripe Test Card CVV Explained: What "v10" Lists Get Wrong
What CVV should you use with Stripe test cards?
Any three digits work for Visa, Mastercard, and Discover test cards. American Express test cards use a four-digit CVC, and any four digits will do. Stripe's documentation states plainly that test cards accept any CVC unless the card is designed to simulate a CVC failure.
Do you need a real CVV to test Stripe checkout?
No. Test mode never contacts a card network, so no real security code is validated or stored. Entering a live card number in test mode gains nothing and creates a compliance problem, since real card data must stay inside a PCI-compliant environment.
Common Stripe test card numbers
- 4242 4242 4242 4242 - Visa, succeeds
- 4000 0566 5566 5556 - Visa debit, succeeds
- 5555 5555 5555 4444 - Mastercard, succeeds
- 5200 8282 8282 8210 - Mastercard debit (US), succeeds
- 3782 822463 10005 - American Express, 4-digit CVC
- 6011 1111 1111 1117 - Discover, succeeds
- 3056 9300 0902 0004 - Diners Club, succeeds
Test numbers that simulate a decline
Stripe publishes cards that always fail so you can build error handling. Pair them with any CVV to reproduce the failure path in your integration.
- 4000 0000 0000 0002 - generic decline
- 4000 0000 0000 9995 - insufficient funds
- 4000 0000 0000 0069 - expired card
- 4000 0000 0000 0127 - incorrect CVC
- 4000 0000 0000 0119 - processing error
Why does Stripe ignore the test CVV?
Test mode is a sandbox that mimics the shape of a payment without moving money. Card verification, address checks, and network authorization are all simulated, so the CVV field is collected but never compared to an issuer record. That is why a made-up code like 123, 456, or 999 behaves identically.
What about 3-D Secure test cards?
Some test numbers always trigger an authentication challenge, such as 4000 0000 0000 3220 for a successful 3DS flow. These still accept any CVC and any future expiry. Use them to test the redirect and fallback logic in your checkout.
Best practices for Stripe test data
- Keep test keys and live keys in separate environments.
- Use only Stripe's published test numbers, never a real card.
- Verify that your form rejects expired dates before submission.
- Confirm your CVC field accepts 4 digits for Amex.
- Log decline codes so support can diagnose failed payments.