Test card numbers

Genuine card information cannot be used in test mode. Instead, use any of the following test card numbers, a valid expiration date in the future, and any random CVC number, to create a successful payment.

Number Brand
4242424242424242 Visa
4000056655665556 Visa (debit)
5555555555554444 Mastercard
2223003122003222 Mastercard (2-series)
5200828282828210 Mastercard (debit)
5105105105105100 Mastercard (prepaid)
378282246310005 American Express
371449635398431 American Express
6011111111111117 Discover
6011000990139424 Discover
30569309025904 Diners Club
38520000023237 Diners Club
3566002020360505 JCB
6200000000000005 UnionPay
Token Brand
tok_visa Visa
tok_visa_debit Visa (debit)
tok_mastercard Mastercard
tok_mastercard_debit Mastercard (debit)
tok_mastercard_prepaid Mastercard (prepaid)
tok_amex American Express
tok_discover Discover
tok_diners Diners Club
tok_jcb JCB
tok_unionpay UnionPay
Payment Method Brand
pm_card_visa Visa
pm_card_visa_debit Visa (debit)
pm_card_mastercard Mastercard
pm_card_mastercard_debit Mastercard (debit)
pm_card_mastercard_prepaid Mastercard (prepaid)
pm_card_amex American Express
pm_card_discover Discover
pm_card_diners Diners Club
pm_card_jcb JCB
pm_card_unionpay UnionPay

Each test card’s billing country is set to U.S. If you need to create test card payments using cards for other billing countries, use our international test cards.

We recommend using our test IDs when testing your integration and creating charges, instead of passing card information directly to the API. Using these test IDs in place of card numbers helps ensure your production integration is developed in a PCI compliant manner and is not going to handle card information directly. Each test ID is human-readable and represents card information that has been tokenized with our client-side libraries (e.g., Stripe Elements, Stripe.js).