Migrate your WordPress eCommerce store to FluentCart with a single WP-CLI command — preserving products, orders, subscriptions, licenses, coupons, customers, and tax rates.
Currently Supported Migrations:
-
Easy Digital Downloads (EDD 3.x):
- Products (simple, variable pricing, bundles, subscriptions, download files, featured images)
- Orders (all statuses, line items, transactions, refunds, billing addresses, activity notes)
- Subscriptions (including live recurring payments via Stripe & PayPal)
- License Keys (keys, activations, limits, expiration — existing endpoints keep working)
- Coupons (discount rules, usage limits, product restrictions, recurring settings)
- Customers (profiles, WP user links, addresses)
- Tax Rates (country/state rates, inclusive/exclusive behavior)
- Store Settings (store name, address, currency — only fills unconfigured fields)
- Order IDs and receipt numbers are preserved
-
WooCommerce (Upcoming)
-
SureCart (Upcoming)
- WordPress 5.9+
- Easy Digital Downloads 3.x installed and active
- FluentCart installed and activated
- FluentCart Pro (required only if migrating EDD Software Licensing data)
- WP-CLI installed on your server
Option 1 — Download ZIP:
- Download this repository as a ZIP from GitHub
- Go to Plugins > Add New > Upload Plugin in WordPress admin
- Upload the ZIP and activate
Option 2 — Git clone:
cd wp-content/plugins/
git clone https://github.com/fluent-cart/fluent-cart-migrator.git
wp plugin activate fluent-cart-migratorMigrate everything in one command:
wp fluent_cart_migrator migrate_from_edd --allThis runs all steps in order: store settings, products, tax rates, coupons, orders/payments (with subscriptions, licenses, and refunds), and statistics recount.
wp fluent_cart_migrator migrate_from_edd --all# Migrate products (with variations, bundles, downloads)
wp fluent_cart_migrator migrate_from_edd --products
# Migrate tax rates
wp fluent_cart_migrator migrate_from_edd --tax_rates
# Migrate coupon codes
wp fluent_cart_migrator migrate_from_edd --coupons
# Migrate orders, subscriptions, licenses, customers
wp fluent_cart_migrator migrate_from_edd --payments
# Recount customer stats, subscription bills, coupon usage
wp fluent_cart_migrator migrate_from_edd --recount# View EDD data statistics before migration
wp fluent_cart_migrator migrate_from_edd --stats
# View failed payment logs
wp fluent_cart_migrator migrate_from_edd --log
# Verify migrated licenses against EDD records
wp fluent_cart_migrator migrate_from_edd --verify_license
# Reset migration and start over
wp fluent_cart_migrator migrate_from_edd --resetRemove legacy EDD post types and orphaned data after verifying your migration:
wp fluent_cart_migrator edd_cleanupThe migration tracks progress. If interrupted (server restart, SSH disconnect), re-run the same command — it skips completed steps and resumes orders from the last processed batch.
After migration, keep this plugin active. It provides seamless backward compatibility for your existing integrations:
- EDD Licensing API — Intercepts
?edd_action=activate_license|deactivate_license|check_license|get_versionand routes them through FluentCart. Your customers' software continues working without any changes on their end. - PayPal Standard IPN — Handles
?edd-listener=IPNfor active PayPal subscription renewals. - Stripe Webhooks — Auto-corrects EDD's Charge ID references to Payment Intent IDs on first webhook.
- Legacy Renewal URLs — Redirects
?edd_license_key=...&download_id=...to FluentCart's renewal page. - Package Downloads — Routes
edd-sl/package_downloadrequests through FluentCart's download system.
- Backup your database — always back up before migration
- Install FluentCart and configure payment gateways (use the same Stripe/PayPal accounts as EDD)
- Install this plugin and activate it
- Run the migration:
wp fluent_cart_migrator migrate_from_edd --all - Verify products, orders, subscriptions, licenses, and customers in FluentCart
- Update your site — replace EDD shortcodes with FluentCart checkout buttons/blocks
- Deactivate EDD — keep this migrator plugin active for backward compatibility
- Test thoroughly — verify checkout, subscription renewals, and license activations
See MIGRATION-GUIDE.md for the complete step-by-step tutorial with a detailed verification checklist, FAQ, and troubleshooting guide.
- After migration, you may need to manually configure License settings in FluentCart Products (version numbers, changelog, etc.). Only these configuration values are not migrated automatically.
- Your existing software license keys and endpoints will continue to work as before without any changes.
- We recommend migrating to the FluentCart Licensing SDK in your software for a better experience.
- Keep this plugin activated if you use the Licensing module.
- FluentCart does not migrate draft, trashed, or abandoned orders.
- Please do a test run on a staging site before running on production.
- Keep this plugin activated if you have active PayPal Standard subscriptions.
If you are using multi-currency in EDD and need to convert currencies during migration, use this filter:
Example: Convert GBP to USD with a conversion rate:
add_filter('fluentcart_migrator_edd3_to_cents', function ($cents, $number, $currency) {
if ($currency === 'GBP') {
$cents = $cents * 1.32;
}
return $cents;
}, 10, 3);- If you run a large store and need assistance with the migration, feel free to reach out to our support team. Our founder Shahjahan Jewel will help you personally with the migration.
- For any issues or feature requests, please open an issue on this repository on GitHub.
Contributions to enhance the migration process are welcome. Feel free to fork the repository and submit pull requests with improvements or additional migration features.
GPLv2 or later