Dodo Payments Test Card Numbers
Every test card, UPI id, bank account and IBAN Dodo Payments documents for test mode, with what each one does. Click anything to copy it.
Any 3 digits
docs use 123
Any future date
docs use 06/32
Test API keys
test credentials only work in test mode
Successful Cards
Complete the checkout and fire the same webhooks as a live payment.
4242 4242 4242 4242
Succeeds.
5555 5555 5555 4444
Succeeds.
4576 2389 1277 1450
Succeeds. Use with an Indian billing address to test the India flow.
5409 1626 6938 1034
Succeeds. Use with an Indian billing address to test the India flow.
Declined Cards
Fail with a specific decline code, for testing what the customer sees and what your system records.
4000 0000 0000 0002
Declined with GENERIC_DECLINE.
4000 0000 0000 9995
Declined with INSUFFICIENT_FUNDS.
4706 1312 1121 2123
Declined with GENERIC_DECLINE.
5105 1051 0510 5100
Declined with GENERIC_DECLINE.
4000 0000 0000 0341
Attaches successfully, then fails when charged. Use it to test a subscription whose renewal fails. Docs use expiry 12/34.
UPI
Test UPI ids. Requires billing country IN and currency INR.
success@upi
Payment succeeds.
failure@upi
Payment fails.
SEPA Direct Debit
Test IBANs for SEPA Direct Debit, including the delayed outcomes that only show up days later in production.
DE89370400440532013000
Succeeds.
DE62370400440532013001
Fails.
DE35370400440532013002
Succeeds, then is disputed.
DE65370400440002222227
Fails with insufficient funds.
ACH Direct Debit
Test US bank accounts. Routing number 110000000 for all of them.
0001 2345 6789
Succeeds.
0002 2222 2227
Fails with insufficient funds.
0001 1111 1113
Fails, account closed.
0005 5555 5559
Succeeds, then is disputed.
0000 0000 0009
Stays in processing indefinitely.
1100 0000 0
Use with every test account above.
Buy Now Pay Later
Klarna and Afterpay test flows. Both need an order of at least $50.01.
customer@email.us
Name "Test Person-us", date of birth 07-10-1970. Approved.
customer+denied@email.us
Name "Test Person-us", date of birth 07-10-1970. Denied.
Any valid email and address
Succeeds. Closing the modal simulates a failure.
Source: Dodo Payments docs, Testing process. Test values change occasionally; the provider’s page is authoritative.
How to use Dodo Payments test cards
Dodo Payments switches between test and live by API key. With a test key, every endpoint behaves exactly as it does live, webhooks fire for test transactions, and nothing is charged. Test credentials are refused with live keys and real cards are refused with test keys, which is deliberate: a card that is rejected is usually telling you which key you are holding.
Cards take any future expiry and any three-digit CVC; the documentation uses 06/32 and 123. The India cards, UPI ids and the INR requirement exist because Dodo handles Indian payment rails natively, and those flows differ enough from a US card that they deserve their own test.
The SEPA and ACH entries that “succeed, then dispute” or “stay processing indefinitely” are the ones worth running before launch. In production those outcomes arrive days after the checkout, and a system that only handled the happy path will credit a sale it later has to unwind.
Testing an affiliate programme on Dodo Payments
Once a test payment goes through, the referral test is one more step: click a referral link, pay with a successful card, and confirm the payment arrives credited to the affiliate. Refgrow connects to Dodo Payments, reads payment and subscription webhooks, attributes them through the referral cookie or a discount code, and reverses the commission automatically when a payment is refunded. How the Dodo Payments integration works.
Test cards for other providers
Selling with Dodo Payments? Add an affiliate programme this afternoon.
Refgrow connects to your Dodo Payments account, reads the same webhooks you are testing now, and pays commissions when payments succeed.