If you’re currently on Magento 1, Shopify, BigCommerce and considering moving to another platform like Magento 2 or Shopify you’re probably dreading what the process will be to migrate your site to that new platform–you might even be questioning whether it’s really worth it to switch. While every migration is a pretty unique process depending on the business, there are some basic tenants of it that remain consistent so I want to demystify the process a bit.
To start off, you have to look at all of the out of the box features that you utilize on your current platform and make sure your new platform at least has all those features. Typically if you’re going from an older platform to a newer one, it should have at least comparable features, but you can’t assume that particularly going from a self-hosted platform like Magento to a Software as a Service (SaaS) platform like Shopify.
And as you’ve probably been on your old eCommerce platform for a while you’ve likely accumulated a number of custom extensions or custom functionality that you at some point asked your developer “Can we do X?” and they installed a marketplace extension or developed a custom extension. You have to assess all those customizations and determine whether your new platform has those features out of the box, there’s marketplace extensions/apps already out there that can replace them, or you have to have something custom developed.
You might also determine that your new platform of choice isn’t able to support some of your old customizations at all. Like if you’re moving from Magento 1 to Shopify or BigCommerce. At that point, you’ll have to decide whether those customizations are core to your business or you can do without them and find a suitable workaround. That’s why we recommend starting the migration with the customizations and integrations assessment so that you don’t get too far down the design and data path and realize that the platform you thought you were going to move to has a few dealbreakers.
Most eCommerce sites have various external services like an inventory management solution, shipping/fulfillment solution, or maybe an accounting solution and they all have to be able to communicate/integrate with your eCommerce platform. Fortunately, most eCommerce integrations nowadays support a fairly wide variety of eCommerce platforms so if you’re moving to Magento 2 or Shopify, they likely support either platform, but you’ll definitely want to double check. For some integrations as well, you should give the integration partner a heads up that you’re planning on migrating and they can let you know any differences/limitations and anything to watch out for in the migration process.
The design aspect isn’t so much a migration as it is a fresh start. Even going from Magento 1 to Magento 2, none of the code is reusable on the new platform so it’s a great opportunity to redesign your site. If you’re migrating to Shopify, we generally recommend that we start with a Shopify theme from their theme store and customize it. Even if we’re going to implement a fully custom design, we try to find a starter theme that most closely mirrors the structure and layout of the design. The reason being that Shopify hasn’t been very consistent with their basic theme frameworks over the years. First, there was Timber, which was created in 2014 and deprecated in 2017 before they even had a stable replacement. Slate is supposed to be the replacement for Timber, but it’s still in beta and they recently announced that it “is currently on low maintenance”. On Magento 2 the default “luma” or “blank” theme is a good starting point and so we typically base most new designs off of those templates.
The data migration is one of the trickiest parts of the migration, but in a way, it’s also completely optional. The data migration can be roughly broken down in four parts.
So when I said most of the data migration is completely optional, orders are probably the most optional. Some stores really don’t care about having their historical customer data, or if they do care, they don’t care if customers can access it or not. So with orders, you always have the option to migrate it to your new platform, but this is going to be the most costly option. Alternatively, you can generate an export of all your order data and just be able to reference it in spreadsheet format. Or if you’re on a free platform like Magento 1 Community Edition, you can just find some $5/mo hosting service, move your old site there and password protect it (so that customers don’t accidentally order from it!) to be able to look up old orders.
This is probably the most difficult migration step because of the way products and attributes are set up so differently between platforms. For example, with Magento, you have Configurable products and they can have sub-Simple Products. But with Shopify, they only have one type of product, but you can have “variants” of each product.
You also have to decide how you want to migrate the categories because Magento 1 has hierarchal categories and Shopify only has one level of categories (or in Shopify terminology, collections) and then assign the products to those categories. There are ways to do all these things programmatically, but it’s a fairly significant cost and so some merchants decide to just input the products/categories manually. Or they do some sort of hybrid like taking a spreadsheet export of the current products and revising the spreadsheet to import into Magento and then do some manual cleanup.
Customers are also a data category that companies occasionally opt not to migrate, but in order of difficulty, it’s probably the least difficult data migration of the bunch because customer data fields are fairly standard across platforms (name, address, etc). One limitation is that due to the type of encryption that most platforms use for customer passwords, you won’t be able to migrate passwords from a platform like Magento 1 to Shopify so you’ll have to notify customers that they will have to reset their passwords. Magento 2 does have backward compatible support for Magento 1’s password encryption though so you can migrate passwords between 1 and 2.
Misc (Gift Cards/Coupon Codes/Promotions)
In this category, you have to think about what other kinds of data might be disruptive if you neglect to migrate it to your new platform. Gift cards are especially important because there could be legal ramifications for not honoring gift cards that customers have rightfully purchased. And forgetting to migrate at least your active coupon codes might be a headache for your CSR’s when they get so many questions about why does XX promotion not work?
That’s a typical eCommerce migration process in a nutshell. As I mentioned at the beginning, every migration is a bit unique to the particular merchant and site so if you’d like to discuss your options in more detail drop us a line.
Also published on Medium.