Supported Migrations
Products & Pricing
Migrate all your products and pricing details.
Customer Data
Transfer your complete customer database, including contact details.
Discount Codes & Promotions
Move all discount codes and promotional offers seamlessly.
License Keys
Import license keys with customer and product mappings. Supported for Polar.sh and Lemon Squeezy.
Get Started
First, install the migration tool:You’ll need Node.js ≥ 18 installed on your computer.
Migrate Your Data
If you’re coming from Lemon Squeezy:
If you’re coming from Stripe:
If you’re coming from Polar.sh:
If you’re coming from Paddle:
- Your provider’s API key (Lemon Squeezy, Stripe, Polar.sh, Paddle, etc.)
- Your Dodo Payments API key
- Whether you want to test first (recommended) or go live
- Which Dodo Payments brand to migrate to
- What data to migrate (products, customers, discounts, license keys)
Why Use Our Migration Tool?
- No data loss - Everything transfers safely
- Test first - Try it in test mode before going live
- Guided process - We walk you through each step
- Resume if needed - If something goes wrong, you can pick up where you left off
Advanced Usage
If you prefer to run the migration without prompts, you can provide all the details upfront:Lemon Squeezy migration:
Stripe migration:
Polar.sh migration:
Paddle migration:
License Key Migration
License key migration is supported for Polar.sh and Lemon Squeezy. When you select license keys in the interactive prompt (or passlicense_keys in --migrate-types), the tool will import your existing license keys into Dodo Payments with the correct customer and product associations.
What gets migrated
- License key strings
- Activation limits
- Expiration dates
- Customer and product associations
What doesn’t migrate
- License key activations — customers will need to re-activate on their devices after migration
- Revoked or disabled keys — only active keys are migrated
- Keys without a matching product or customer are skipped with a warning
Need Help?
- Tool help:
dodo-migrate --help - Lemon Squeezy help:
dodo-migrate lemonsqueezy --help - Stripe help:
dodo-migrate stripe --help - Polar.sh help:
dodo-migrate polar --help - Paddle help:
dodo-migrate paddle --help - Community support: Discord
- Report issues: GitHub