Find your error
Look up the message you're seeing to find the page that explains it and how to fix it.
Search works best
Press Ctrl K (⌘ K on Mac) and paste a few words of the error. Every message in these pages is written exactly as the kit prints it.
By where you see it
| Where | Page |
|---|---|
In the terminal while running npm run setup | Setup errors |
getaddrinfo ENOTFOUND, migrations failing, Failed query | Database errors |
| Checkout, the dashboard, plans not unlocking, webhooks | Payment errors |
| The sign-in page, Google or GitHub screens, confirmation links | Sign-in errors |
| Emails not arriving, Resend errors | Email errors |
| Vercel, the live site, slow pages | Deploy errors |
npm run build, npm run typecheck, the Next.js error overlay | Build errors |
| Inviting buyers to a GitHub repository | Repository access errors |
Most common problems
| Symptom | Fix |
|---|---|
| Paid, but the plan doesn't unlock (locally) | Dodo can't reach localhost. Use a tunnel |
| Paid, but the plan doesn't unlock (live site) | Check the webhook |
getaddrinfo ENOTFOUND … neon.tech | Switch to public DNS |
| No confirmation email when developing | It's printed in the terminal |
Error 400: redirect_uri_mismatch from Google | Add the exact callback URL |
| Email sign-in form missing on the live site | Set up Resend |
Plan "pro" has no Dodo product ID | Create the product |
Missing environment variable … | Set the variable |
| Changed a price, checkout still charges the old one | Update the Dodo product |
Still stuck?
Email guptanishu886@gmail.com with:
- The exact error message (copy the text, not a screenshot of part of it).
- What you ran or clicked just before.
- Whether it's on your computer or the live site.
Never send API keys, secrets or the contents of .env.local.