Skip to main content

Getting Started & Account Setup

A: Visit our dashboard and enter the Login email and password shared with you in your welcome email. In case you face any issues please reach out to our support team.
A: The documents required for verification include a valid government-issued ID (for identity verification) and business registration documents (for business verification). For details check the verification process page.
A: If your verification is rejected, you will receive an email with the reason for rejection. You can contact our support team to resolve any issues, correct documentation, and reapply. The resubmit option will be enabled by our verification team if necessary.
A: The verification process typically takes 24-72 working hours. However, if additional documents are required, the process may take longer.
A: We need your website to understand the kind of products you are selling and verify your business for live access. If you do not have a website or are in the process of building one please reach out to us at support@dodopayments.com
A: Yes, we support unregistered businesses as well. You do not need a registered business to use Dodo Payments. You can onboard as an individual and start receiving international payments without any hassle. You will still need to submit Identity Verification forms and Business Verification forms as an unregistered business for us to onboard you.
A: No, you can manage multiple businesses through a single account. To add a new business, click the + icon in the bottom left corner of the dashboard and select the Add Business option. You can refer to /miscellaneous/accounts#managing-multiple-businesses for more details
A: No, there is no need for you to wait. You can start integrating using the Test mode and once your verification is successful you can start making Live payments in production. Learn more about Test and Live modes here, /miscellaneous/test-mode-vs-live-mode
A: Make sure you have submitted the identity and business verification documents in the settings tab. If you have already submitted them and it has been more than 72 hours, check for the reason it is on hold on the same page and contact the support team.
A: Currently you cannot delete products or customers as these are need to maintain records for future compliance. We are currently working on an archive product feature which will allow you to remove the product from your active products section.
A: You can add your business logo and your business name to the payment page. To upload them, visit the business profile page on your dashboard.
A: Yes. You can:
  • Go to Dashboard → Settings → Business Setting
  • Update your logo, brand name, and support email.
  • Changes will reflect on both static and dynamic links
A: No. The hosted checkout flow does not support embedding in an iframe.Instead:

Verification, Tax & Compliance

A: Dodo Payments typically takes 24–72 working hours to process verifications. However, delays can occur due to:
  • High volume of applications
  • Weekends and public holidays
  • Incomplete or incorrect submissions
  • Manual reviews for risk or compliance
If it’s been more than 72 hours, please check your email or Dodo Payments dashboard for any required action. You can also DM your registered email to the team on Discord for a follow-up.
A: Use a proper PDF editor like:
  • Adobe Acrobat
  • Mac Preview (works for most)
  • Smallpdf or PDFescape (online editors)
If there’s a cross mark on the signature, make sure:
  • You’re saving the file after applying the signature.
  • The tool is flattening the signature layer (some editors don’t).
Avoid signing in browser previewers—they don’t always embed digital signatures properly.
A: If you selected the wrong entity type (e.g., chose “Organization” but you’re an individual or a Sole Prop with GST), your verification might be On-hold, requiring you to change or update the documentation.Steps to fix: Step 1: Inform support via Intercom or Discord who will help you enable resubmission for the Payout Compliance form. Step 2: Choose the right registration type, and resubmit the required documents.
A: If you selected the wrong entity type (e.g., chose “Organization” but you’re an individual or a Sole Prop with GST), your verification might be On-hold, requiring you to change or update the documentation.Steps to fix: Step 1: Inform support via Intercom or Discord who will help you enable resubmission for the Payout Compliance form. Step 2: Choose the right registration type, and resubmit the required documents.
A: Yes. Once your earnings cross the payout threshold ($100), Dodo Payments prioritizes your verification.
This does not guarantee instant approval — ensure your business model and documents are compliant.
If you’ve crossed $100 and still see delays, reach out to our support.
A: No. The person signing up must match the legal owner of the business and all submitted documents.If your parent is the actual business owner:
  • They should sign up using their email and mobile number.
  • All documents should be in their name.
Using someone else’s name for verification while you manage the business may lead to compliance rejection.
A: You can find the reason in:
  • The Dodo Payments dashboard, under the verification section.
  • Email notifications (if enabled)
If it’s not visible, contact compliance@dodopayments.com or DM your registered email ID to a team member.
A: Yes — but only if:
  • You’ve fixed the issues that led to rejection.
  • You’re not attempting to bypass risk decisions (e.g., deboarding for fraud concerns).
Creating multiple accounts without resolving the underlying issue will likely result in the new account being rejected as well.
A: If you see a message stating your account was previously deboarded by the risk team:
  • It means Dodo Payments found significant compliance or risk issues with your activity or business.
  • Attempting to create new accounts using the same identity or business details will likely be rejected again.
If you believe this is a mistake, email compliance@dodopayments.com and request a review — include clear evidence to support your case.
A: To avoid delays:
  • Submit clear, properly formatted documents
  • Avoid repeated messages/tags in Discord — this slows the queue
  • Mention if you’ve crossed the payout threshold or have urgent timelines
  • DM your registered email ID if asked
Most payout reviews are completed within 72 working hours, unless there’s an issue with your submission.
A: These forms are tied to your entity type:
  • W-8BEN is for Individuals
  • W-8BEN-E is for Organizations
If you submitted the wrong one:
  • Contact support to reset your form.
  • Fill and upload the correct form type.
  • Ensure the PAN is in the correct field (Line 6a for individuals).
Refer to IRS official form guides if confused.
A: No. If you’re registered with a GST as an individual (sole proprietor), you’re still considered an Individual.✅ Use W-8BEN ✅ Select “Individual” in the registration ❌ Do not fill W-8BEN-E or select “Organization” unless you’re a registered legal entity
A: Creating a new account to bypass a previous deboarding is not allowed. If you attempt this:
  • The new account may also be flagged or rejected
  • Risk decisions carry over across signups if the underlying business or person is the same
If you believe you were wrongly deboarded, email compliance@dodopayments.com with your case.
A: Dodo Payments automatically calculates and applies GST for Indian merchants based on your customer’s location.
A: Yes, Dodo Payments supports international sales and manages all associated compliances.
A: Yes they are mandatory as we are the Merchant of Record and generate invoices, file taxes and ensure all purchases are compliant we require the Merchant’s billing address. You can implement our API based checkout flow where you can pre-fill the customer’s details if you have already collected them to ensure a smoother experience for your customers but we will need these details for every purchase.
A: Not directly. Dodo Payments acts as the Merchant of Record, handles customer-side tax, and remits where applicable. You still need to:
  • File income tax in your home country (e.g., India)
  • Submit W-8BEN(-E) to avoid default 30% US withholding
A: Use the following logic:
You are…Form to SubmitMerchant Type
Sole Proprietor, FreelancerW-8BENIndividual
Pvt Ltd, LLP, Registered OrgW-8BEN-EOrganization
Still unsure?
  • If your bank account is under your name, you’re likely an individual.
  • If it’s under a company, you’re an organization.
A: All US Citizens, and entity holders in the US must fill the W-9 Tax Form in the name of the registered entity or the Individual.
A: For Individuals, PAN is a mandatory requirement (for KYC and tax purposes). For registered businesses, either Business PAN or GSTIN can be submitted. GST is optional unless you exceed the registration threshold or want input credit
A: Use the form based on your merchant type:
  • Individual/Sole Proprietor: W-8BEN
  • Private Limited or LLP: W-8BEN-E
If you have a Udyam/MSME certificate but operate with a personal bank account, you’re still considered an Individual.
A: Dodo handles sales tax for your customers. W-8BEN(-E) is needed for withholding tax on payouts to you.
Filing W-8BEN correctly can help you avoid double taxation under India–US tax treaties.

Payments & Transactions

A: Dodo Payments supports a variety of payment methods, including credit cards, debit cards, and digital wallets. We also support one-time payments and recurring subscription payments for digital products.
A: You can track the status of payments from the Payments section of your dashboard. Each transaction is listed with a status indicator: In Progress, Failed, or Successful.
A: If a payment fails, check the Payment Details Page for more information. Common reasons include incorrect payment details, insufficient funds, or network issues. You can resend the payment link to your customer to retry the payment.
Yes. Even if you state No refunds in your terms or website, chargebacks are largely governed by the cardholder’s bank and card network rules (e.g., Visa, Mastercard). A No refund policy does not override the card network’s dispute resolution process. If a customer files a dispute, your business is still subject to a chargeback investigation. This means you must respond with evidence (proof of delivery, usage logs, terms acceptance, etc.) to fight or manage the dispute. If the customer’s bank decides in favor of the cardholder, the chargeback fee and transaction reversal will apply regardless of your stated policy. We recommend having clear communications, tracking customer usage, and providing compelling evidence when chargebacks arise.
A: payment.status can be null for a short time:
  • Right after creation but before processing completes
  • During subscription billing failures or retries
Eventually, it becomes one of: succeeded, failed, or cancelled.
Use webhook events like payment.succeeded or payment.failed for more reliable status tracking.
A:
  • For subscription payments, product_cart is empty because there’s no one-time item being bought
  • product_cart is only populated for one-time payments
A: You likely tested in Live Mode instead of Test Mode.Live payments:
  • Use real money
  • Go through real banks
  • May be flagged as suspicious if volume is low or inconsistent
✅ Always test using:
  • Test Mode in the dashboard
  • Test card numbers provided in the documentation
A: Checklist:
  • Confirm webhook is configured in Dashboard > Developers -> Webhooks
  • Check if webhook is failing silently due to non-2xx response
  • Check logs: was a 429 or timeout returned?
A: It’s likely you’re relying solely on redirect_url query params and not handling:
  • Webhooks
  • API confirmation call
✅ Fix:
  • Always listen for payment.succeeded webhook
  • Or query the API to confirm transaction after redirect
A: This can happen for several reasons:
  • The billing country wasn’t set to IN
  • UPI was not enabled for your business
If you’re a Non Indian Merchant, UPI won’t appear for your customers.
A: Not currently. UPI is supported for one-time payments, but subscriptions rely on card mandates — UPI mandates are still in progress.
A: If you want users to enter billing info themselves:
  • Use static links, which automatically collect billing
  • For dynamic flows, you must collect info manually and pass it in the API
There’s no built-in UI yet for collecting billing during dynamic link creation.
A: On the first successful subscription payment, you will typically receive these three webhook if no trial period is involved:
  • subscription.created webhook
  • payment.succeeded webhook
  • subscription.renewal webhook
A: Dodo supports both immediate and scheduled cancellations.When a cancellation request is made:
  • Immediate cancellation: The subscription.cancelled_at timestamp is set immediately and the subscription ends at that moment
  • Scheduled cancellation: Use the cancel_at_next_billing_date parameter in the subscription patch API to cancel at the end of the current billing period
A: Dodo Payments charges the customer immediately upon subscription creation if the product does not have a trial period.
For Indian cards and if there is a free trial is configured for the product, the payment will take 24 hours to process after the trial ends. This is due to RBI regulation.

Payouts & Bank Integration

A: Payouts are the transfer of your collected sales revenue to your linked bank account. Payouts are processed by the 15th of every month for previous month’s billing cycle barring any special circumstances like bank holidays or emergencies
A: Minimum Payout Threshold is $100 after platform fees & taxes deduction. You can see the exact wallet amount in your dashboard in the payouts section.
A: Yes, you can track your payout status from the Payouts section of the dashboard.
A: Payout fees refer to the transaction costs for transferring the money we’ve collected from your customers to your bank account. We constantly make improvements to reduce the payout fee by partnering with local partners in your country. Please refer to the pricing and fee structure for detailed information.
A: Payouts usually take 1–2 business days to reflect in your bank account.
Transfers don’t settle on weekends or bank holidays. If your payout was processed on Friday, expect it by Monday or Tuesday.
A: Just enter your Payoneer bank details in the Bank Info Form under your dashboard. There’s no separate Payoneer integration yet.
A: Yes. You can receive payouts via Payoneer by:
  • Entering your Payoneer account details in the Bank Info Form on the Dodo dashboard
  • Ensure your account is approved and supports USD or the currency you’re withdrawing
There is no dedicated Payoneer integration — it is treated as a regular bank account.
A: Just wait. Our compliance team typically reviews forms within 1–2 working days. If it’s urgent:
A: If your payout day is on a Friday, it is usually processed on the same day. However:
  • If there’s a bank holiday or weekend, it may be delayed to the next working day (usually Monday).
  • The exact timing may depend on your bank’s processing rules.
If in doubt, check your dashboard or ask support with your registered email.
A: If you’ve submitted everything and are awaiting payout compliance:
  • Mention your urgency clearly in support chats (e.g., live launch, paid campaigns).
  • Include your business ID and email.
  • Avoid spamming or tagging multiple team members — this may slow down the queue.
A: If you’ve entered incorrect bank details:
  • Contact support via Intercom or Discord or Mail.
  • DM your email ID and request a manual reset of the bank verification section if you reach through Discord.
  • Wait for the compliance team to reopen the section for you to re-submit.
Editing bank details directly in the dashboard may not be allowed post-submission.
A: No. If you’re registered as a company or legal entity, you must use the entity’s bank account.
A: If your country does not issue SWIFT codes, Dodo Payments may accept alternative documentation or generic SWIFT formats.What to do:
  • Contact support and explain the situation.
  • Submit any official bank document confirming your account details and the absence of a SWIFT code.
A: No, but you must:
  • Explain your situation to support
  • Provide bank documents that confirm your account number, holder name, and that no SWIFT is issued
  • Sometimes a generic placeholder SWIFT may be used (based on country)
This case will go through manual compliance review. DM your email ID or write to compliance@dodopayments.com for escalation.

Invoicing & Reports

A: Yes, Dodo Payments automatically generates invoices for every successful transaction. These invoices include all necessary details such as tax breakdowns, customer information, and product details.
A: Yes, you can customize the look of your invoices by adding your company logo and brand name. You can manage these settings in the Business Profile section of your dashboard.
A: You can view or download invoices from the Invoices section of the dashboard. Each payment will have an associated invoice that can be downloaded as a PDF.
A: You can generate detailed reports from the Reports section of your dashboard. These reports include data on transactions, refunds, and payouts, which you can filter by date and export in CSV format.
A: Yes, Dodo Payments offers API integration for seamless integration with your website or platform. You can find API documentation and guides in the Developer Section of your dashboard.

Refunds & Disputes

A: To issue a refund, go to the Payment Details Page of the transaction you want to refund and click the Initiate Refund button. You can issue a full or partial refund, provided the payment meets the refund eligibility rules.
A: Once a refund is initiated, the customer will typically receive the refunded amount within 3-5 business days, depending on the payment method and their bank.
A: If a chargeback is filed against you:
  • You may lose both the transaction amount and a dispute fee
  • You can submit evidence of product delivery, usage logs, or customer communication
  • However, the final decision lies with the customer’s issuing bank
Email support@dodopayments.com with:
  • Dispute ID
  • Payment ID
  • Relevant proof
A: Yes — you can:
  • Share documentation (chat logs, usage records, delivery confirmation)
  • Explain that the service was fulfilled
  • Request a waiver of the dispute fee if it’s a first-time issue or if fraud is provable
There’s no guarantee the fee will be waived, but ou team reviews each case on merit.

Webhooks & Integration

A: You’re likely confusing the redirect URL with the webhook URL. A redirect URL is where the user is sent after a payment, and it may contain ?subscription_id=...&status=active in a GET request. This is not your webhook.To receive structured POST payloads from Dodo Payments:
  • Set up a webhook under Dashboard → Developers → Webhooks
  • Ensure the URL accepts POST requests and verifies the signature
You can have both a webhook and a redirect URL — they serve different purposes.
A: You likely forgot to pass the correct environment when initializing the DodoPayments client.
Fix:
client = DodoPayments(
    bearer_token="your_api_key",
    environment="live_mode"  # or "test_mode"
)
A: You can do it through the webhook dashboard. Go to Dashboard -> Developers -> Webhooks
A:
  • Webhook URL: Configured in dashboard. Receives POST payloads about events.
  • Redirect URL: Sent in the payment API request. Sends user back to your app with query params (?status=success).
Use webhooks to automate things like DB updates, and redirects to show thank-you screens.
A: The payment.succeeded webhook event for subscription products does not include a product_id. Instead, it provides the subscription_id associated with the subscription, along with other relevant details.
A: To verify that the webhooks you receive are genuinely from Dodo Payments and not from malicious actors, follow these steps:
  1. Check the Signature: Each webhook sent by Dodo Payments includes a unique signature in the webhook-signature header. This signature is generated using your webhook’s secret key and the payload of the event.
  2. Retrieve the Secret Key: Ensure you have the secret key for your webhook, which can be found in your Dodo Payments dashboard under the Webhooks settings.
  3. Recompute the Signature: Use the same signing algorithm (HMAC-SHA256) as Dodo Payments to compute the signature on your server. Use the payload of the webhook and your webhook secret key.
  4. Compare Signatures: Compare the recomputed signature with the one provided in the webhook-signature header. If they match, the webhook is authentic; if not, it should be rejected.
  5. Use HTTPS: Ensure your webhook endpoint uses HTTPS to secure communication and prevent tampering during data transmission. By implementing these steps, you can confidently verify the authenticity of webhooks sent by Dodo Payments.
We recommend using packages provided by StandardWebhooks to verify signature and not construct it by yourself.
A: For subscriptions, subscription.renew will be triggered whenever the subscription amount is deducted. So yes, this is expected behavior.
A: To test webhooks locally, you can follow these steps:
  1. Use a Tunneling Tool: Tools like ngrok, LocalTunnel, or Cloudflare Tunnel can expose your local server to the internet. This provides a public URL that Dodo Payments can use to send webhook events to your local environment.
  2. Set Up the Webhook Endpoint: Create a webhook endpoint in your local application to handle incoming webhook events. Ensure it listens for HTTP POST requests.
  3. Configure the Webhook in Dodo Payments: Go to your Dodo Payments dashboard, navigate to the Webhooks settings, and update the webhook URL to the public URL generated by the tunneling tool.
A: Check the following:
  • You did not confuse the webhook URL with redirect URL
  • The webhook is configured under Developers > Webhooks
  • Your URL accepts POST requests and responds with 2xx
  • Signature validation (if enabled) is implemented correctly
If you only see GETs with ?status=success, you are debugging the redirect URL, not the webhook.
A: No. While it’s a quick win, URL query params can be tampered with.If you’re using redirect_url?status=success:
  • Double-validate the transaction with an API call
  • Or wait for payment.succeeded webhook
Treat redirects as user-facing confirmations, not proof of payment.

Testing & Local Development

A: Yes — subscriptions can be tested fully in Test Mode.Just don’t use real card numbers.
A:
  • On your Dodo dashboard, look for a Test Mode toggle.
  • Switch it ON to use test API keys and simulate payments.
You’ll see “Test Mode” labels on all screens. Make sure to use the corresponding API key or environment when switching.
A: Yes, but keep in mind:
  • No real money will be transferred
  • You can simulate webhooks and flows
  • Card details should still be test cards
This helps debug flows end-to-end without any financial impact.
A: It means:
  • An Indian Card is used to make the payment but the billing country is not set as IN.
  • You likely passed an incorrect billing country.

Support & Communication

A: You can contact our support team by sending an email to support@dodopayments.com. We are here to assist you with any issues or questions you may have.
A: If you’ve messaged in:
  • Intercom with no response
  • Discord without acknowledgement
Then:

Security & Fraud Prevention

A: Dodo Payments uses real-time fraud detection to monitor suspicious transactions. We also comply with PCI-DSS standards to ensure that all payment information is encrypted and secure.
A: Yes, Dodo Payments uses data encryption and tokenization to protect sensitive information. We ensure that customer payment data is never stored directly and remains secure during transactions.
I