Beyond moving data, migrating an online store is, more importantly, also about protecting customer relationships and ensuring loyal buyers can continue shopping without friction.
When David DeFebo, owner of Schweitzer Formula in the United States, decided to move his store from Ecwid to WooCommerce, he had a specific goal in mind.
He did not need to rebuild a full store. He wanted to migrate only 1,223 customers and 2,319 orders into his newly built WooCommerce store, excluding coupons and other miscellaneous data. But most importantly, customers after migration could still log in using the same passwords they had used on Ecwid. In other words, he wanted to move their login passwords as well.
On the surface, this migration product sounded straightforward. In reality, it involved platform limitations and database logic.
This case study shows how the Next-Cart team, led by Jason Dinh, navigated the technical complexity and kept the client confident at every step.
Why David decided to move from Ecwid to WooCommerce
The decision to leave Ecwid for WooCommerce was strategic: the latter platform offered greater flexibility and long-term scalability. And David had already built his new WooCommerce store on the WordPress website.
However, he was under time pressure and encountered some problems. He manually input customer data into FluentCRM and synced contacts into WordPress users via WPFusion Lite. At first glance, this seemed efficient. But soon, a critical issue emerged.
Customers could not log in.
They could not reset their passwords.
They were forced to check out as guests unless David manually reset each password or deleted and re-registered accounts one by one.
David reached out to Next-Cart with a clear request:
“My basic goal is to get all customers and orders migrated, with customer passwords so that they can now be able to login to their accounts and order and also see the order history under WC my-account.”
It sounded like a reasonable goal, but one part of it was technically impossible.
The major constraint: Why passwords cannot be migrated from Ecwid
Understandably, David wanted his customers to be able to log in to WooCommerce using the same credentials on Ecwid. This would create a seamless transition in user experience.
However, the limitation was not on the migration tool.
Actually, Ecwid’s API itself does not provide access to customer passwords - not even in an encrypted form that can be transferred between systems. This is a strict security rule by the platform.
In this case, even store owners cannot extract customer passwords from Ecwid. Therefore, no migration service can access or transfer them.
After reviewing the request, the Next-Cart technical team explained the constraint clearly to David. Then, Jason proposed practical solutions:
- Enable Social Login for returning customers.
- Display a clear notice on the WooCommerce login page that suggests customers reset their passwords for the new system.
- Send automated emails encouraging customers to reset their passwords.
This approach helped maintain security while minimizing friction. The customer experience could be managed more intelligently.
With the transparency, David understood the platform's limitations and appreciated the expert advice.
Migrating customers and orders without overwriting existing data
During the migration, David expressed that he did not want a clean wipe for:
- Existing WooCommerce customers and orders
- WordPress users synced from FluentCRM
- New customers created after leaving Ecwid
He wanted a data merge, not a total replacement.
But to merge data into a live store, it required extra care to:
- Avoid overwriting active users
- Prevent duplicate email conflicts
- Preserve newly created WooCommerce orders
- Maintain data integrity across both systems
Before starting, the Next-Cart technician created a full backup of the WooCommerce store. It would be a safety layer to restore the store if anything unexpected occurred.
Then, customers and orders were migrated from Ecwid into WooCommerce.
At first glance, orders appeared properly in the system, and the total number of orders matched Ecwid’s records: 2,355 entries.
But WooCommerce showed only 150 customers, while David expected over 1,400.
The WooCommerce customer vs WordPress user confusion
This was actually not data missing issue. It was a misunderstanding within WooCommerce structure.
WooCommerce does not rely solely on WordPress user records for its customer analytics. Instead, it maintains a separate Customer Lookup Table for reporting and analytics.
In this situation, the problem was because:
- Customers were correctly migrated into WordPress users.
- Orders were correctly imported and linked.
- But the WooCommerce analytics table had not been rebuilt.
As a result, the WooCommerce dashboard displayed fewer customers than actually existed.
Josan guided David to run the built-in tool: WP Admin → Analytics → Settings → Import Historical Data.
This tool repopulates WooCommerce’s lookup tables using existing order and user data.
After running the import, 1,417 customers appeared correctly on the WooCommerce store.
After all, understanding how each eCommerce platform structures and displays data is essential during migration.
Duplicate customers: the cost of merging instead of clearing
Because David chose not to clear WooCommerce before migration, some duplicate customer records appeared.
The reasons why this happens include:
- WooCommerce does not overwrite existing users with the same email address.
- WordPress requires unique email addresses for users.
- Previously synced users from FluentCRM already existed in the database.
- The migration tool preserved both records rather than deleting or overwriting data.
In some cases, one customer record was properly linked to orders, while another duplicate was not. This behavior is intentional to prevent accidental data loss.
However, because of this, manual cleanup may be required when merging stores.
David had a bit of tidying up to do after the migration. But considering that he had manually imported contacts before reaching out, the cleanup was minor compared to rebuilding everything from scratch.
Importantly, no order data was lost.
The final outcome
By the end of the project:
- All Ecwid orders were successfully migrated.
- All customers were transferred to WooCommerce.
- Analytics tables were rebuilt.
- The store remained functional throughout.
- No WooCommerce data was overwritten.
- The ticket was closed successfully.
David’s store then operated entirely on WooCommerce with full order history intact. Customers could reset their passwords and regain access to their accounts. And future growth could happen on a more flexible platform.
Most importantly, David felt supported.
In his own words:
“The team was responsive and communicative with me. I was nervous about making a mistake or causing problems with the migration, but the team and Jason specifically helped me feel more confident that it would work just fine. All went well. I had a bit of cleanup work to do with some duplicates, but considering the minimal effort I put into it upfront, it is an easy fix. I would definitely recommend Next-Cart to anyone who is migrating a cart or for other WordPress assistance they may require.”
For many merchants, migration comes with fear - fear of breaking something, losing customers, or disrupting revenue. David felt that fear too. But with clear communication and careful execution, the transition became manageable.
Final thoughts
David DeFebo’s migration from Ecwid to WooCommerce was not a massive full-store transfer. It was more nuanced than that.
It involved selective data movement, platform limitations, live-store merging, and duplicate handling.
Yet with professional execution, the process concluded successfully.
Next-Cart’s role was not simply to “move date.” It was to interpret system behaviors, explain platform constraints, and provide practical alternatives. The goal was to ensure the final store worded exactly as intended.
For merchants considering a move between platforms, something important to understand:
Migration is not just technical; it is strategic. When handled correctly, it is not a risk, yet it becomes an upgrade.