Documentation Index
Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Test mode lets you simulate payments without processing real transactions. All test credentials only work in test mode — never use them in production.No Real Charges
Test transactions don’t process actual payments or affect real accounts.
Full API Access
All API endpoints work identically in test and live modes.
Webhook Testing
Webhooks fire for test transactions just like production.
Test Cards
Use these card numbers to simulate successful and declined payments across different regions.- Successful Payments
- Declined Payments
- Subscription Failure Testing (Renewal/Upgrade/Downgrade)
| Region | Brand | Card Number | Expiry | CVV |
|---|---|---|---|---|
| US | Visa | 4242424242424242 | 06/32 | 123 |
| US | Mastercard | 5555555555554444 | 06/32 | 123 |
| India | Visa | 4576238912771450 | 06/32 | 123 |
| India | Mastercard | 5409162669381034 | 06/32 | 123 |
For all test cards, use expiry date 06/32 (or 12/34) and CVV 123.
How to Test Renewal Failure
Create a test subscription
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.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.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 See the Update Subscription API reference for details.
next_billing_date to the current UTC time. The value must be an ISO 8601 / RFC 3339 UTC timestamp (the Z suffix is required).Test UPI
UPI testing uses special VPA (Virtual Payment Address) identifiers that simulate different payment outcomes.| Status | UPI ID |
|---|---|
| Success | success@upi |
| Failure | failure@upi |
Requirements for UPI Testing
- Billing country must be set to
IN - Currency must be
INR - For non-Indian merchants: Adaptive Currency must be enabled
Test BNPL
Buy Now Pay Later providers have specific test data requirements.Klarna Test Data
Use these details to simulate Klarna payments in test mode:| Field | Approved | Denied |
|---|---|---|
| Date of Birth | 07-10-1970 | 07-10-1970 |
| First Name | Test | Test |
| Last Name | Person-us | Person-us |
| customer@email.us | customer+denied@email.us | |
| Street | Amsterdam Ave | Amsterdam Ave |
| House Number | 509 | 509 |
| City | New York | New York |
| State | New York | New York |
| Postal Code | 10024-3941 | 10024-3941 |
| Phone | +13106683312 | +13106354386 |
Klarna requires a minimum transaction amount of $50.01 to appear as a payment option.
Afterpay Testing
Afterpay requires a minimum transaction amount of $50.01 to appear as a payment option.
Test Digital Wallets
Apple Pay
Add a card to Apple Wallet
Add a real card to your Apple Wallet. In test mode, the card won’t be charged.
Google Pay
Join the test card group
Join the Google Pay test card group to get test cards automatically added to your wallet.
Amazon Pay, Cash App Pay & RevolutPay
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.Test European Methods
European payment methods (iDEAL, Bancontact, EPS, Multibanco) can be tested in sandbox mode.Set billing address
Set the billing address country to match the payment method:
NLfor iDEALBEfor BancontactATfor EPSPTfor Multibanco
Testing Best Practices
Test all payment scenarios
Test all payment scenarios
Don’t just test successful payments. Test declines, cancellations, and edge cases like insufficient funds.
Verify webhook handling
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 listenforwards live test webhooks to your local serverdodo wh triggersends mock payloads for all 22 event types
Test on real devices
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
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
Verify minimum amounts
BNPL methods require $50.01 minimum. Test that they correctly appear/hide based on cart total.
Related Pages
Cards
Card testing, 3D Secure, and saved payment methods.
Digital Wallets
Apple Pay, Google Pay, Amazon Pay testing.
BNPL
Klarna, Afterpay, and Billie testing.
India
UPI and RBI mandate testing.
Europe
iDEAL, Bancontact, EPS, Multibanco testing.
Webhooks
Set up webhooks for test events.
CLI Webhook Testing
Test webhooks locally with the Dodo Payments CLI.