Insights

Magento 1 to Magento 2 Migration – The Benefits, Reasons, and Process

Migrating from Magento 1 to Magento 2. Everything that Falls in Between

Out of 209,904 Magento’s live online stores, there are just 56,134 sites that have migrated to Magento 2 (as on 15/11/2019). And the rest of the 153,770 merchants using the Magento Commerce Platform are at risk of running onto an unsupported software starting June 2020.

Deadline of migrating to Magento 2

Magento 1.x is rounding off its support on 30th June 2020, and those who fail to implement Magento 1 to Magento 2 migration won’t receive security updates anymore.

A CMS without support is prone to vulnerabilities. With an increase in the number of web skimming (Magecart) attacks, such web stores will face the risk of getting hacked and infected with code that steals customers’ payment details.

This is the reason that some of the leading eCommerce businesses such as Tile Giant, Pino’s, Land Rover, and many others have already upgraded to Magento 2 because they understood that a simple upgrade could change their fate.

The common thing among them was:

They did not leave things for tomorrow and embraced the change that promised long-term success.

Magento 2 Upgrade eBook

The Upsides of Magento 2 Migration

The major reason behind the reluctance to upgrade from Magento 1 to Magento 2 is that the key business decision-makers feel that this shift would make no difference. It is like changing adjacently placed seats with no difference in the experience at all.

Which is not TRUE!

Because as compared to Magento 1, the new version offers a host of benefits that could make a significant difference in the long run.

Let us have a look at some of the most important benefits of migrating to Magento 2.

Upsides of Magento 1 to Magento 2 migration

1. Improved Performance and Scalability

There’s no doubt that Magento 2 performs superior to Magento 1 in all cases. It accompanies an improved indexer that helps in increasing its query performance speed. Moreover, Magento 2 uses Varnish Cache, the prominent HTTP accelerator technology which makes it simple to cache requests.

This makes it simple for more than one admin user to create as well as edit eCommerce products’ information without data conflicts in Magento 2. Magento 2 has enhanced performance and scalability because it:

  • Improves web pages for faster delivery
  • Boosts server response times for all website activities
  • Enhances proficiency of backend operations
  • Enhances database flexibility and scalability to deal with peak loads

How Migrating to Magento 2 Reduced the Page Load Time of ‘Graham & Green’ eCommerce store by 43.5%

Graham & Green, the British furniture company, ran their eCommerce operations on Magento Commerce 1 for years. Their website was not responsive and did not work well on mobile devices.

But in the year 2018, they planned to embark upon a Digital Transformation journey, thus decided to migrate to Magento Commerce 2 with an aim to create a bespoke customer journey for ordering Made-to-Order (MTO) products like custom sofas.

They first launched their mobile site on October 15, 2018, during the peak time of the Black Friday sales season. Their visitors witnessed a great site speed, which alone revolutionized the entire customer experience. The average page load times were down to a staggering 43.5 percent year-over-year, making the buying experience lightning fast.

Graham & Green successful journey after migrating to Magento 2

2. Enhanced Security

Magento 2 has put a considerable focus on security, and subsequently, has more secure information handling. With its main focus on securing user details and offering a secured checkout process, this new version will fulfill every crucial requirement of an advanced eCommerce website development.

Following are the ways you will witness enhanced security by migrating to Magento 2:

Ways to Secure your eCommerce Store with Magento 2

  • Password: Magento 2 helps to enhance password security by using SHA-256 hashing algorithms within its password management system.
  • 2-Factor Authentication: Magento 2 platform offers an incredible 2-Factor Authentication extension, which gives an additional layer of protection.
  • Dynamic Backup Plan: To further enhance the security, eCommerce store owners may have a proper backup of Magento files by downloading them with an FTP client. This incorporates having an hourly offsite backup plan and downloadable backups. A backup plan guarantees that the eCommerce store doesn’t get any interference in the service if it gets hacked or crashes.
  • Unique Admin URL: The unique admin URL of Magento store offers a strong protection layer by making it harder to approach for the hackers.
  • Optimal Development Environment: Magento 2 makes the development procedure quicker and simpler with Magento DevBox Beta, which is another development environment option.

3. Improved Checkout Process

Magento 2 platform gives a simple and safe checkout to your eCommerce site. It offers an approach to recognize visitors as their guests. This eradicates the login or registration form that is required for users to continue the checkout process.

Also, it offers an active shipping rate as per country, region, or postal code. In Magento 2, you can easily integrate the convenient payment method into the checkout procedure.

There are several payment options available that include Paypal and Braintree. You can make your own particular favored payment modules with easy integration with any merchant checkout platform.

Magento 2 checkout process comprises the order summary where you can see a summary of your shipping information. These features help reduce the checkout hassle and enhance the customer experience.

It even reduces the checkout time, thereby boosting your website’s conversion rate while reducing cart abandonment.

How Cabinets.com Reduced the Average Time on Checkout by 8 Sec Using Magento 2

Cabinet.com, a successful US company dealing with kitchen cabinets, launched Kitchen Resource Direct, one of the first companies to sell cabinets online. They launched their brand initially on Magento Open Source and gradually shifted to Magento Commerce 1 in the year 2014.

However, in today’s dynamic digitized world, Cabinets.com aimed to offer homeowners and professional contractors a large selection of competitively-priced, customizable products. Thus, in 2017, they decided to implement Magento 1 to Magento 2 migration.

One of the vital results that they achieved with this migration was a seamless Magento Commerce 2 checkout process, which reduced the average checkout time by 8 seconds.

cabinets.com successful journey with Magento 2

4. Advanced Reporting

When it comes to succeeding in your eCommerce business, reporting is very crucial. The new advanced reporting features, located in Magento Admin, offer 20 reports through its web interface. This feature gives you insight into three critical areas, such as:

  • Orders: the number of orders, AOV, and taxes and shipping fees collected
  • Customers: the number of registered accounts
  • Products: the number of products orders and which product sells best

The reporting is dynamic and real-time, offering you the metrics that you need for better management of your eCommerce business.

Comparing Two Products with Advanced Reporting in Magento 1 to Magento 2 migration

5. Mobile-friendly and Responsive Design

Magento 2 offers mobile-friendly and responsive designs for delivering the perfect checkout experience to its customers.

The Magento 2 admin panel is touchscreen-friendly and makes it easy to deal with your store via mobile phones or tablets. It makes your site engaging, easy to use, and easy to navigate irrespective of the device in use and its resolutions.

Magento 2 Upgrade eBook

3 Key Components of Magento 1 to Magento 2 Migration

Magento 2 upgrade comprises three major components, which include:

1. Data

By leveraging the Magento 2 Data Migration Tool, an eCommerce platform can securely create a path for moving data to Magento 2 without dropping packets on the way. But remember that data-migration is a time-intensive process. Thus, it’s important to ponder upon all the factors before hiring a Magento Developer. It’s not a simple CSV export from Magento 1 and then import into Magento 2. There are different steps need to be followed that we have discussed below in the blog.

Key Data elements: Product Information, Customer and Order Data, Promotional Data, and Store Configurations

2. Extensions

The Magento community has already validated and updated the major extensions for Magento 2. The good news is that the extensions are readily available on the Magento marketplace.

The following is the list of extensions available in Magento 2:

  • Customer Segmentation
  • Abandoned Cart Email
  • SEO Suite Ultimate

3. Themes & Customizations

Newer and innovative technologies are designed to give eCommerce merchants the ability to personalize the shopping experience and deliver performance in turn. To achieve that level of optimization, changes to themes and customizations are required. The following is the list of themes available in Magento 2:

  • Rope Responsive Theme
  • Couture Fashion Responsive Theme
  • Minimalism Theme
  • Instagram Theme
  • Modern Print Store Theme

The Magento 1 to Magento 2 Migration Process

To migrate successfully and avoid issues, it is vital that you thoroughly plan and test your migration. The following diagram explains the workflow followed for the much-talked-about Magento upgrade. An expert Magento Developer can create a custom path to pave the way to a successful migration.

Magento 1 to Magento 2 migration process

Doing it yourself isn’t that easy, but still, here’s how to do it.

Step1: Setup Magento 2 Instance

Download Magento 2 from https://www.magentocommerce.com/download without the sample data.

Extract the downloaded data and follow the setup wizard to install the platform.

Now, you have Magento 2 setup with an empty database. The data will be migrated in the database of this Magento 2 instance.

Step 2: Download the Data Migration Tool

Open the command line in the root folder of Magento 2. Download the data migration from Magento 1 to Magento 2 tool in the newly set up Magento 2, by following the command:

composer require Magento/data-migration-tool

The version of the data migration tool must match the version of the Magento 2 codebase, which can be found in the composer.json file present in the root of the Magento 2 directory.

For example, for Magento version 2.3.3 the command would be:

composer require Magento/data-migration-tool:2.3.3

You will be prompted for the public key and your private key for authentication.

To get these key values, login to your magentocommerce account. Once you log in, browse through “My Accounts”. Now, click on the developer’s link on the left menu and then click on security keys. Here, you can easily locate your keys.

After filling in these details, a new folder called “data migration tool” will be created within the extension /vendor/magento/.

Alternatively, you can also download the data migration tool from Github. The link to which is: https://github.com/magento/data-migration-tool

Step 3: Configuring the Data Migration Tool

Once you have the required data migration tool, you will need to move on with its configuration.

Here’s how to do it:

Under the data-migration-tool/etc folder you can find additional sub-listed folders, i.e.,

  • ce-to-ce: includes configuration files and scripts for migrating data from Magento 1 CE to Magento 2 CE
  • ce-to-ee: includes configuration files and scripts for migrating data from Magento 1 CE to Magento 2 EE
  • ee-to-ee: includes configuration files and scripts for migrating data from Magento 1 EE to Magento 2 EE

Now, enter the directory for which you are performing the migration (for example: ce-to-ce in the case of migrating data from community edition to community edition).

Next, enter the directory with the Magento 1 version name. For instance, if you are doing the migration for Magento 1.9.0.1 version then you should enter the folder 1.9.1.0.

Also, make a copy of the file map.xml.dist and rename it to map.xml, in this folder. (Use of this file is explained in the migration step).

Now you may make a copy of the file config.xml.dist and rename it to config.xml, in this folder. Open this file and make the following changes to it:

a. Required Values:

Under source, enter the Magento 1 database details, and in the destination enter the Magento 2 database details.

Crypt_key value can be found in local.xml file which is located in the Magento 1 instance directory at: app/etc/local.xml in tag.

b. Optional Values:

If you don’t have a prefix set for the Magento 1 and Magento 2 tables, then you can leave the “1” source prefix, and “2” source prefix fields empty.

Database mapping between your Magento 1 and Magento 2 databases is performed through mapping files which are located in:

/vendor/Magento/data-migration-tool/etc/

These files are used for changing the table names, field names, ignoring tables and fields and transferring data of the field to the Magento 2 format.

We need to remove the .dist extension of these files to make use of these mappings.

After removing the .dist from file names, we need to change these file names (removing the .dist) in the config.xml file under the “options” tab.

Here you can see the location of the files that need to be renamed.

It should look like this now:

Step 4: Provide the Prerequisites

Before you start your migration, you must do all of the following:

  • You need to stop all the current activities in Magento 1 before moving ahead with Magento migration.
  • Stop all the cron jobs running on Magento 1 version and put the site on maintenance mode. The purpose of this is to stop all the activities that make any changes in the database. We need to make sure that there is no activity in the database once the data migration process starts.
  • Open ports in your firewall so that the migration tool can communicate with databases, and the databases of Magento 1 and Magento 2 can communicate with each other.
  • Migrate your theme to Magento 2 theme structure.
  • Migrate all your Magento extensions and customizations from version 1 to 2.

In the event of unexpected issues that might cause redundancy, we advise you to create a backup of your Magento 1.x database.

Step 5: Migrate the Websites

Now we will migrate the eCommerce store and system configuration like tax settings, payment gateways, shipping, etc.

For this, we need to run the following command in the Magento 2 instance:

bin/magento migrate:settings [-r|–reset] {}

  • [-r|–reset] is an optional argument that starts the migration from the beginning.
  • {} is the absolute path to config.xml file and is a required field

The command should be:

sudo bin/magento migrate:settings /var/www/magento2/vendor/magento/data-migration-tool/etc/ce-to-ce/1.9.0.1/config.xml

Once it is done you will see the “migration complete” status.

Next, you will need to run the data migration command:

bin/magento migrate:data [-r|–reset] {}

The command should be:

udo bin/magento migrate:data /var/www/magento2/vendor/magento/data-migration-tool/etc/ce-to-ce/1.9.0.1/config.xml

This command checks the consistency of tables and fields between Magento 1 and Magento 2. If any issue exists, then an error message will appear with a list of all tables and fields that are not mapped.

For example, you face an extension tables error and a particular custom field goes missing in one of the tables. So, to fix this problem you need to install the Magento 2 version of the extensions in the Magento 2 instance so that the missing tables are in the Magento 2 instance database as well.

You can also ignore the tables and fields by adding their entries in map.xml file
After making the entries, the corresponding tables and fields will be ignored and will not be migrated to the Magento 2 database.

Run the migration command again to verify that the issues are fixed.

The data migration is completed once you get the migration complete message.

After the migration is completed, if there are any new changes in the database, such as new orders are placed, or new reviews are added, then you can migrate that data by executing the following command:

bin/magento migrate:delta [-r|–reset] {}

The command should be:

sudo bin/magento migrate:delta /var/www/magento2/vendor/magento/data-migration-tool/etc/ce-to-ce/1.9.0.1/config.xml

This command can be stopped by pressing ctrl + C, or else it will keep on running.

Now your database is successfully migrated to Magento 2.

Flush your Magento 2 cache, and re-index all Magento 2 re-indexers, then thoroughly test your new Magento 2 site.

Bingo! You are almost done and ready to be an active part of the Magento 2 powered businesses.

After migrating from Magento 1 to Magento 2, all you are left with is the need to copy the media files from Magento 1 to Magento 2.

Magento 2 Upgrade eBook

Challenges of Migrating from Magento 1 to Magento 2

The journey of Magento 1 to Magento 2 migration is no cakewalk. There are many challenges that might make it a roller coaster ride. Some of which include:

challenges of magento 1 to magento 2 migration

Homepage Not Appearing Correctly

If your Magento 1 version has a custom layout set for the home page, there are chances that the home page will not appear correctly after migration.

Solution: You either need to create a custom layout in Magento 2, or you can go to the Magento 2 admin panel and change the layout for your home page.

Products Not Appearing in the Category

The category-wise distribution of the products on your eCommerce store is likely to go haywire.

Solution: Re-index all the indexers. In Magento 2, you need to go through the command line because it can’t be done from the admin panel like it was done in Magento 1.

CSS JS Files Not Loading

This is yet another issue that many eCommerce stores have reportedly faced after Magento 1 to Magento 2 migration.

Solution: Flush your cache and then deploy the static content. (If you are still facing a problem after removing the cache, then manually remove all the subfolders from the cache folder.

All in All Magento 2 is a Preferred Choice to Make

So, the countdown has begun. With 56,134 sites already running on Magento 2, it is your time to take this much-awaited decision. It is a step that will make the entire eCommerce experience a seamless one both for the users and the business alike.

This change is inevitable, so why whine about it and wait for June 2020. Instead, reach out to the Magento development experts who can assist you with Magento 1 to Magento 2 migration owing to their technical background.

After all, today is always better than tomorrow!

Magento 1 to Magento 2 Migration. Contact Net Solutions

Surabhi Shukla

About the Author

Surabhi is a proficient PHP developer and has worked on frameworks and CMS like Joomla, CakePHP, Drupal, and Magento. She is also a Magento certified developer and Developer Plus. When not at work, she relaxes by listening to music and is an avid reader.

Leave a Comment

Kasyapa Malladi

5:25 PM, Jun 24, 2019

Thanks for such a great content you put together. I additionally have experienced an awesome method for learning. You have made the whole procedure incredibly straightforward and educational.

Vishnu Bhadoriya

6:49 PM, Jun 22, 2019

Hii Surabhi,

i have followed magento official document for migration but failed somehow
But this blog helps me lot
Thanks

Sachin Bhaderia

2:10 AM, Jun 01, 2019

Hello Surabhi,
I like this blog very much and it was really very helpful for me. You have really explained it very well. Once again thank you a lot. God Bless You :-)