When one of these cards declines, the payment’s error_code and error_message reflect the scenario above. Look up any code in the Transaction Failures reference for its meaning and recommended action, and see Handle Payment Failures for handling declines in your integration.
Card Number
Expiry
CVC
4000 0000 0000 0341
12/34
123
Use this card to test subscription Failure renewal, upgrade, and downgrade scenarios.
For all test cards, use expiry date 06/32 (or 12/34) and CVV 123.
Create a subscription with your test API keys using a success test card (for example, 4242 4242 4242 4242). The initial charge should succeed and the subscription should become active.
2
Swap in the failure card via Customer Portal
Open the Customer Portal, find the subscription you just created, and click Update Payment Method. Enter the failure test card 4000 0000 0000 0341 (Expiry: 12/34, CVC: 123) and save it as the subscription’s payment method.
3
Advance the next billing date (optional)
To trigger renewal immediately instead of waiting for the natural billing cycle, use the Update Subscription API to set next_billing_date to the current UTC time. The value must be an ISO 8601 / RFC 3339 UTC timestamp (the Z suffix is required).
The customer can return to the Customer Portal to update the payment method and retry
This card is specifically for testing renewal failures. The charge will decline on the next billing date, allowing you to test payment retry logic, customer notifications, and failure handling.
Choose Afterpay as the payment method in checkout and click Pay.
2
Test successful payment
Use any valid email address and shipping address for successful payments.
3
Test failed authentication
To simulate failure, close the Afterpay modal window on the redirect page. The payment transitions from requires_customer_action to requires_payment_method.
Afterpay requires a minimum transaction amount of $50.01 to appear as a payment option.
For complete BNPL documentation including Billie B2B testing, see the Buy Now Pay Later page.
Use your test API keys and follow the standard checkout flow. Test transactions are simulated without actual charges.For complete digital wallet documentation including domain verification for Apple Pay, see the Digital Wallets page.
ACH Direct Debit can be tested in Test Mode by entering test bank details at checkout.
1
Enable test mode
Use your Dodo Payments test API keys.
2
Set currency and billing address
Set the billing currency to USD and the billing address country to US. ACH is not offered outside this combination.
3
Use a one-time payment
ACH is not available on subscription checkouts, so test it against a one-time payment.
4
Enter the test bank details
Enter one of the test routing and account number pairs below, then confirm your webhook handler receives the final payment status — ACH payments confirm asynchronously rather than at checkout.
SEPA Direct Debit requires EUR and a Eurozone billing address. Use these test IBANs to force a specific outcome:
Test IBAN
Behavior
DE89370400440532013000
The payment succeeds.
DE62370400440532013001
The payment fails.
DE35370400440532013002
The payment succeeds, then is immediately disputed.
DE65370400440002222227
The payment fails due to insufficient funds.
For the full list of test IBANs, including per-country values, see the Europe page.For complete European payment methods documentation, see the Europe page.
Don’t just test successful payments. Test declines, cancellations, and edge cases like insufficient funds.
Verify webhook handling
Ensure your webhook endpoints correctly process all event types, especially payment.succeeded, payment.failed, and subscription events.Use the Dodo Payments CLI to test webhooks locally:
dodo wh listen forwards live test webhooks to your local server
dodo wh trigger sends mock payloads for all supported webhook event types
Test on real devices
For Apple Pay and Google Pay, test on actual iOS and Android devices. Simulators don’t fully replicate wallet behavior.
Test regional methods with correct addresses
Regional payment methods (UPI, iDEAL, etc.) require matching billing addresses. A US billing address won’t show iDEAL.
Verify minimum amounts
BNPL methods require $50.01 minimum. Test that they correctly appear/hide based on cart total.