Use Transporter to convert and import data from your previous platform to Shopify Plus in just a few steps.
Be confident in your data
Have confidence in migrated data so you can use your store’s product, order, and customer data to execute campaigns.
Launch quicker, start making money faster, and give your customers a better experience without missing a beat.
Transporter is a suite of data migration tools that simplifies the process of switching to Shopify Plus. Transporter puts the control in your hands to offer a fast and seamless migration experience, from migration to launch. Launch quicker and start making money faster without missing a beat.
Your first step is Transporter’s command line tool to convert legacy platform data to Shopify-friendly CSVs. The tool and transformation scripts are open sourced, so you can customize scripts for complex data and contribute to and improve them.
Next, use the Transporter app to load the information into Shopify. The app has many benefits over native CSV importing, including:
- Support for customers, products, orders, and metafields
- A recommended file upload size of 250MB
- Runs 10x faster than the standard APIs
- The ability to delete data in bulk
- Error reporting for easy troubleshooting
For more information, read Transporter’s Help Center documentation.
Note: This app can only be installed on Shopify Plus shops.
Mind Lab Pro®
I've had a real difficult time with this app and it's corresponding cli tool.
The app itself is easy to install and simple, +1 for the fact it also has a 'Delete' option to undo everything you've done file by file if it all goes wrong.
The only issue with it is the poor import rate on customers and in particular the dreaded 'Phone is invalid' error. Literally 70%+ of our customer imports failing on their phone number not being in E.164 format. The developers of the cli tool didn't think to use the country code in Magento to convert phone numbers from Magento into an E.164 format, so the import rejects all these otherwise perfectly valid phone numbers.
If you are a Magento dev who needs to do this then this answer -> https://stackoverflow.com/questions/41774883/formating-phone-number-according-to-the-e164-format in combination with this library -> https://github.com/giggsey/libphonenumber-for-php is what you'll have to go through to get these phone numbers in the correct format to allow customers to import. Also note that it's a bit of a nightmare dealing with linebreaks in the address when you are trying to fix this, I also used this library (https://github.com/parsecsv/parsecsv-for-php), my working code to fix this is in the gist -> https://gist.github.com/mcnabsystems/83728516bf6e7c3bebc107acdd9e54df
For large Magento installs with hundreds of thousands of customers and orders the cli tool to export data to csv is dog slow as they have used Magento's SOAP API, and there's no way to speed it up;
You are looking at weeks here for data exports on stores with 100K+ orders and customers, not hours. Maybe they should have taken a leaf out of the Excelify App author's technique and used the database tables directly rather than Magento models.
Additional problems I've encountered;
1. I struggled to get the ruby gem for the Transporter cli tool installed and working on our original Magento dev server running PHP 5.6. Eventually got it working by creating a new Ubuntu 18.04 instance on a Digital Ocean droplet and upgrading the dev Magento site to 1.9.4.
2. Docs on cli tool very light, few example of how to use commands and no examples of using any options. For example even though the cli tool exported data for customers with the website_id in the data, I was not able to run the conversion command to include website id via the config. According to the docs there should be a way of doing this but I couldn't get it to work. It is an important omission because you'll need to do it if you are migrating a Magento multistore to a number of separate Shopify Plus instances each with a different currency.
3. As mentioned above, it fails to validate or modify crucial data so that Shopify will be able to import it.
Sorry Shopify - I love your platform but I can't rate this tool at all. Magento to Shopify Plus migrations are going to be big business for you and this app is a selling point for those migrating. It needs to be improved.
Overall score here, 2 out of 5 for the CLI tool and 3 out of five for the App, overall a bit generous on 3 out of 5.
Worked well enough for most orders and customers we had to import.
Found that sometimes an error would come back for a row, and all we had to do was re-run the import for that row and it would work. There was nothing actually wrong with the data.
Also, may be more of an issue with Shopify in general and not specifically with Transporter, but receiving errors about 'invalid email address domain' for orders we are trying to import (ie. historical data from our old store) is not helpful. Some addresses were indeed malformed, some likely existed at the time the order was placed but the email server for that domain has since gone down. This kind of check is useful during checkout, but not when we're trying to import old data.
Had some troubles with a couple batches of orders we were trying to import. The import kept failing and did not provide enough information for us to determine why it was failing. The error did not match any described in the troubleshooting documentation provided by Shopify.
Contacted support, who told us that the app is developed by a third party and that our support request would be forwarded to them.
Checked back after a day of not receiving any response from the developer. Shopify support apologized and said they'd reach out to the developer again.
That was 5 days ago, with no communication from the developer whatsoever. In the time since, we broke down our import into smaller batches and ran them one at a time and addressed errors as they came up. That worked, but took an additional couple hours of time for us compared to the rest of the imports we had run.
This app is branded as being built by Shopify, and is only available to Shopify Plus stores. The total lack of response from the developers is not impressive.