Skip to content
Status

Stripe test cards

Use these details to try payments in a Stripe sandbox (test) account. They work only in the sandbox: never use them in live, and never put real card or bank details into a sandbox.

  • The card number sets the result, including whether 3D Secure is asked for and how it ends. Any future expiry date and any CVC work (How to use test cards, Test 3D Secure authentication).
  • To make a CVC or address check fail, enter a CVC and a billing address: Stripe skips a check whose field is empty (Fraud prevention). The checkout asks for the billing address only when Require address (AVS) is switched on in the Stripe connection settings.
  • ACH, SEPA Direct Debit, Multibanco and bank transfers each need switching on in the Stripe connection settings (Enable ACH, Enable SEPA, Enable Multibanco, Enable Bank Transfer) and in your Stripe account (Connecting Stripe).
  • For ACH and SEPA Direct Debit, the account number or IBAN sets the result (Test account numbers). An ACH test account must be verified with micro-deposits first: we show and email a link to Stripe’s verification page, where you enter the test amounts or descriptor code (Test microdeposit amounts and descriptor codes).
  • For Multibanco, the customer’s email address sets the result (Accept a Multibanco payment). We send Stripe the email address on the payment, so enter the test address as the customer’s email.
  • For bank transfers, there are no test account numbers: simulate the customer’s transfer from the Stripe Dashboard (Accept a bank transfer).

Use any future expiry date (such as 12/34) and any three-digit CVC, or four digits for American Express, unless a row says otherwise.

Card Number Notes
Visa 4242 4242 4242 4242
Visa (debit) 4000 0566 5566 5556
Mastercard 5555 5555 5555 4444
Mastercard (2-series) 2223 0031 2200 3222
Mastercard (debit) 5200 8282 8282 8210
American Express 3782 822463 10005 Four-digit CVC
Discover 6011 1111 1111 1117
Diners Club 3056 9300 0902 0004
Diners Club (14-digit) 3622 7206 2716 67
JCB 3566 0020 2036 0505
Number or trigger Result
4000 0000 0000 0002 Declined: generic decline
4000 0000 0000 9995 Declined: insufficient funds
4000 0000 0000 9987 Declined: lost card
4000 0000 0000 9979 Declined: stolen card
4000 0000 0000 0069 Declined: expired card
4000 0000 0000 0127 Declined: incorrect CVC (enter any three-digit CVC)
4000 0000 0000 0119 Declined: processing error
4242 4242 4242 4241 Declined: incorrect number (fails the Luhn check)
4000 0000 0000 6975 Declined: card velocity limit exceeded
4000 0000 0000 0341 The card saves, but every payment on the saved card is declined
4100 0000 0000 0019 Blocked by Stripe Radar: risk level “highest”
Number Result
4000 0000 0000 3220 3D Secure required: complete it, then approved
4000 0084 0000 0027 3D Secure required: complete it, then approved (US-issued card)
4000 0000 3220 0000 3D Secure frictionless flow, then approved
4000 0084 0000 1629 3D Secure required, then declined after authentication
4000 0084 0000 1280 3D Secure required, but the 3D Secure lookup fails with a processing error: declined
4000 0000 0000 3055 3D Secure supported but not required: approved
4000 0000 0000 3097 3D Secure supported but not required; attempting it gives a processing error
4242 4242 4242 4242 Not enrolled in 3D Secure: no prompt, approved
3782 822463 10005 3D Secure not supported: goes ahead without authentication
4000 0027 6000 3184 Requires authentication on every payment, including saved-card payments
4000 0025 0000 3155 Always requires authentication when the customer is paying. Payments on the saved card without the customer need it only if the card wasn’t set up for future payments
4000 0082 6000 3178 Requires authentication, then declined: insufficient funds

Enter a CVC and a postcode. Stripe skips a check when its field is empty, so the check can’t fail.

Value Result
4000 0000 0000 0101 CVC check fails. Radar might block the payment, depending on your settings
4000 0000 0000 0036 Postcode check fails. Radar might block the payment, depending on your settings
4000 0000 0000 0028 Address line 1 check fails. Approved unless a custom Radar rule blocks it
4000 0000 0000 0010 Postcode and address line 1 checks both fail. Radar might block the payment, depending on your settings
4000 0000 0000 0044 Postcode and address line 1 checks unavailable. Approved unless a custom Radar rule blocks it

We take Apple Pay and Google Pay as network tokens, through our own wallet integration rather than Stripe’s. To test them, see Testing Apple Pay and Google Pay.

Every test account uses routing number 110000000. Before a payment on a test account completes, the account must be verified: enter the micro-deposit amounts 32 and 45 (or the descriptor code SM11AA). To test instant verification instead, Stripe points to its Financial Connections test accounts.

Test ACH payments settle straight away in the sandbox, whereas live ACH payments take several days.

Routing number Account number Result
110000000 000123456789 Approved
110000000 000111111113 Declined: account closed
110000000 000111111116 Declined: no account found
110000000 000222222227 Declined: insufficient funds
110000000 000333333335 Declined: debits not authorised
110000000 000444444440 Declined: invalid currency
110000000 000777777771 Declined: account’s weekly payment limit exceeded
110000000 000000004954 Blocked by Stripe Radar: high risk of fraud
110000000 000666666661 Micro-deposits fail to send
110000000 000555555559 Approved, then disputed
110000000 000000000009 Stays processing indefinitely

Micro-deposit amounts 10 and 11 (descriptor code SM33CC) simulate too many verification attempts, and 40 and 41 (SM44DD) simulate a micro-deposit timeout.

These are Stripe’s German (DE) test IBANs. Stripe lists the same set for other countries, including Austria, Belgium, France, Ireland, the Netherlands and Spain, on its Testing page.

IBAN Result
DE89 3704 0044 0532 0130 00 Approved
DE08 3704 0044 0532 0130 03 Approved after at least three minutes
DE62 3704 0044 0532 0130 01 Declined
DE78 3704 0044 0532 0130 04 Declined after at least three minutes
DE65 3704 0044 0002 2222 27 Declined: insufficient funds
DE84 3704 0044 0000 4545 45 Declined: debit not authorised. The mandate becomes inactive
DE65 3704 0044 0000 3434 34 Declined: account’s weekly payment limit exceeded
DE18 3704 0044 0000 0666 66 Rejected when entered: bank account unusable
DE35 3704 0044 0532 0130 02 Approved, then disputed straight away

Bank transfers (SPEI and domestic transfers)

Section titled “Bank transfers (SPEI and domestic transfers)”

Bank transfers have no test account numbers. Once the customer chooses Pay By Bank Transfer and the payment is pending, simulate the customer’s transfer in the Stripe Dashboard of the sandbox account: open the customer’s page and, under Payment methods, select Add, then Fund cash balance (test only).

Enter one of these as the customer’s email address. {any_prefix} and {any_domain} can be anything.

Email address Result
{any_prefix}@{any_domain}, for example jenny@example.com Voucher paid: approved after about three minutes
{any_prefix}succeed_immediately@{any_domain} Voucher paid: approved within a few seconds
{any_prefix}expire_immediately@{any_domain} Voucher expires: failed within a few seconds
{any_prefix}expire_with_delay@{any_domain} Voucher expires before it is paid: failed after about three minutes
{any_prefix}fill_never@{any_domain} Voucher never paid: failed after 11 days, as in live

Was this page helpful?