DEV Community

Cover image for Every Stripe test card you'll ever need (plus fake checkout data for Shopify, WooCommerce & Magento)
Andrew Rozumny
Andrew Rozumny

Posted on

Every Stripe test card you'll ever need (plus fake checkout data for Shopify, WooCommerce & Magento)

If you're building or testing an e-commerce checkout, you've been there: opening the Stripe docs, scrolling for the right test card, copying it, then hunting for a fake address that matches the right country format.

I got tired of this. So I built a tool that generates everything at once.

But first — here's the complete reference you came for.

Stripe test cards

Success scenarios:

Card number Type Scenario
4242 4242 4242 4242 Visa Success
5555 5555 5555 4444 Mastercard Success
3782 822463 10005 Amex Success
6011 1111 1111 1117 Discover Success

Failure scenarios:

Card number Scenario
4000 0000 0000 0002 Always declined
4000 0000 0000 9995 Insufficient funds
4000 0000 0000 0069 Expired card
4000 0000 0000 0127 Incorrect CVC
4000 0000 0000 0119 Processing error

3DS scenarios:

Card number Scenario
4000 0025 0000 3155 3DS required
4000 0027 6000 3184 3DS recommended
4000 0000 0000 3220 3DS2 required

Use any future expiry date and any 3-digit CVV (4 digits for Amex).


Shopify Bogus Gateway

Shopify has a built-in test payment provider that doesn't need a real Stripe account.

Setup: Settings → Payments → Add payment method → Search "Bogus Gateway"

Card number Result
1 Successful payment
2 Failed payment
3 Gateway exception

Use any name, any future expiry, any CVV.


WooCommerce test cards

WooCommerce with Stripe plugin uses standard Stripe test cards above.

Enable test mode: WooCommerce → Settings → Payments → WooCommerce Payments → Enable test mode.


Magento test cards

Magento 2 with Braintree sandbox:

Card number Type
4111 1111 1111 1111 Visa
5500 0055 5555 5559 Mastercard
3714 496353 98431 Amex

CVV: 123, Expiry: any future date.


The part nobody talks about: fake addresses

Cards are easy. But you also need a realistic fake address that matches the country format — especially if your checkout validates postal codes.

US:

123 Main Street, Chicago, IL 60601
Enter fullscreen mode Exit fullscreen mode

UK:

42 High Street, London, E1 2AB
Enter fullscreen mode Exit fullscreen mode

Germany:

Hauptstraße 15, 10115 Berlin
Enter fullscreen mode Exit fullscreen mode

Generating these manually every time is annoying.


Quick tips for checkout testing

Test the full flow, not just payment.
Most devs only test success. Your declined card handling is just as important — test that the error message is clear and the user can retry.

Always test 3DS separately.
3DS authentication adds a second step. Use card 4000 0025 0000 3155 to trigger it and make sure your UI handles the redirect correctly.

Test with guest checkout AND logged-in user.
These often have different code paths and different bugs.


The tool I built

I put all of this into one place — a free browser-based generator that gives you fake customer name, email, phone, country-specific address, and the right test card for your platform in one click.

Supports: Generic/Stripe, Shopify, WooCommerce, Magento, BigCommerce.
Countries: US, GB, AU, CA, DE, UA, JP.
Export as JSON or copy individual fields.

👉 tooldock.org/tools/ecommerce-test-data

Everything runs in your browser — nothing is sent to any server.


What's the most annoying part of checkout testing for you?

Top comments (0)