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.
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.
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 22 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.