Shopify, Bigcommerce, OpenCart Migration Tools

Supported Source Store: 

Source Carts use connector

  • Magento
  • osCommerce
  • WooCommerce
  • VirtueMart
  • Zen-Cart
  • CS-Cart
  • CubeCart
  • Interspire
  • CRE Loaded / LoadedCommerce
  • OpenCart
  • OXID eShop
  • Prestashop
  • WP-eCommerce
  • X-Cart
  • xt:Commerce/Veyton
  • MijoShop
  • MarketPress
  • Drupal Commerce
  • UbercartUbercart
  • Pinnacle Cart
  • Tomato Cart

Source Carts use API

  • Shopify
  • BigCommerce
  • 3dCart
  • Americommerce

Source Carts use export files

  • Amazon Store
  • Miva Merchant
  • Nopcommerce
  • Squarespace
  • Volusion
  • Weebly
  • Yahoostore

Supported Target Stores

  • Shopify
  • Bigcommerce
  • Opencart

For Source Store & Target Store

1. If Source Store or Target Store is self-hosted:

  • Please ensure you have the right permission to upload files.
  • It must not block access from any third party IP.

Source Store and Target Store can operate normally during migration as it requires a very limited resource for the process.

PHP Compatibility: PHP 4.x or later.

It is strongly recommended to backup Target Store first.

2. If Source Store or Target Store is SaaS (example: Shopify, Bigcommerce, Volusion … )

Please ensure you have the permission to login backend of these stores.

For Cart Migration Plugin

My_Downloadable_Products

There are 2 ways to have cart migration plugin installed:

 

Recommended way: Immediately use the pre-installed tool in our server, with license key filled and configuration done properly, you just need to proceed.

Example: http://mycm.litextension.com/cm/100005923/825c9a87883427dbf39b4fe210264b2a\

 

Not recommended: Install the Cart Migration Plugin on your own server, this is for advanced users and developers, please follow this:

Cart Migration is a web application which can be installed on Source Store or Target Store or a third party server.

  • Cart Migration should be placed in a stable hosting or in localhost.
  • It also must not block connection to Source Store and Target Store

PHP Compatibility: PHP 5.3 or later.

Required PHP extensions:

  • pdo_mysql
  • curl

Required PHP configurations:

  • memory_limit no less than 128Mb
  • allow_url_fopen must be On
  • base64_decode should be allowed

After downloading the product zip file from our Store, please extract it into a folder. The package consists of two main parts: Cart Migration Application (“cartmigration” folder) and Connector (“cartmigration_connector”  folder).

cartmigration_folder

1. Cart Migration Setup

My_Downloadable_Products

There are 2 ways to have Cart Migration Plugin installed:

 

Recommended way: Immediately use the pre-installed tool in our server, with license key filled and configuration done properly, you just need to proceed.

Example: http://mycm.litextension.com/cm/100005923/825c9a87883427dbf39b4fe210264b2a

 

Not recommended: Install the Cart Migration Plugin on your own server, this is for advanced users and developers, please follow this:

Cart Migration is a web application which can be installed on Source Store or Target Store or a third party server.

1. Upload “cartmigration” folder to your server, make sure it can be accessed via an url. Example: http://yourserver.com/cartmigration/

2. Chmod folder app to 0777

3. Create an empty database in your server, this database will be used by Cart Migration to store migration tracking data.

4.  Go to http://yourserver.com/cartmigration/, you will see the Setup page. Enter the database login information here, Click “Setup”.

Cart_Migration_Setup

5. If the entered information is not correct, you will see a warning. If everything is correct, you will see the Migration form:

Cart_Migration_Step1

2. Source Store and Target Store Connector Setup

Copy and upload “cartmigration_connector” into Source Cart and Target Cart root folder. After finished please make sure Connector can be reached at:

http(s)://yourstore.com/cartmigration_connector/connector.php

Note: It is only required to upload the connector in case your Source Cart or Target Cart is self-hosted.

cart-migration-setup-2

If you have any problem reaching the link please ensure you have htaccess configured correctly and the file has execution permission.

For security, please open connector.php, find this very first line:

define(‘LECM_TOKEN’, ‘123456’);

And change “123456” to another string, this will be used to enter to the Migration Form (Cart Token) and acts like “password” to prevent unauthorized data access to your source store.

Note: please do not use special characters in token or else the migration tool might fail to work, it should contain number and alphabet characters only. Example:

  • Good token: 12ab34cd56
  • Bad token: #Fr35h#Mi!5

Plugins are purchased and setup separately into Cart Migration. They will provide additional functionalities to the tool. Normally plugins need to be customized and tweaked by LitExtension Team to fit customers requirements and will be sent to customers later on. There are a few types of plugin:

Products and Categories SEO Urls Plugin: helps migrate Products and Categories urls. Old urls will be saved in Target Store and will be maintained to keep all current SEO ranking you have built up for years.

Custom Fields Plugin: help migrate custom fields from Source Store to Target Store. This is useful in case customers have customized their store, for example: adding fields to database tables, and also want to migrate these fields into Target Store.

Customer Password Plugin: special plugin which adds the ability to read passwords encrypted by Source Stores to Target Store. All passwords are migrated over and remains encrypted, customers can login to the new shop right away without the need of resetting passwords.

 Note: Plugins might not be available for some specific Source Carts or Target Carts. Details setup instructions will be provided when you purchase the plugins.

License Key is an encoded string which comes with your download package. This key is needed to activate your Migration Tool

  1. After purchasing the product, please login to our store and enter “My downloadable products” section. Here you will find download link and license key for the download package.cart-service-listen-key-1
  2. Goto http://yourserver.com/cartmigration/, click on Settings, and copy and paste your license key here, click Submit.Cart_Migration_License

Return to http://yourserver.com/cartmigration/, you are now at Step 1 of migration process.

The migration will go through 3 simple steps. Just hit “Next” when you finish one step to advance.

Step 1: Source Cart Setup

There are a few types of Source Cart:

1. Self-hosted cart

Example: oscommerce, zen-cart, opencart, magento, prestashop, woocommerce ….

For this category, you must upload a connector as guided in 2. Setup. After you have done that, please enter the form:

Cart_Migration_Step1_SourceCart

  • Cart Type: select corresponding source cart type (normally it has been preselected)
  • Cart Url: source cart full url (note: it should not include “cartmigration_connector/connector.php
  • Cart Token: the token string which has been configured in connector.php

2. SaaS with API 

Example: Shopify, Bigcommerce, 3dcart, Americommerce …

For this category, you need to login backend of your cart and get the API information as guided in the form. Example:

Cart_Migration_Step1_SourceCart_SaaS_API

3. SaaS with file exported

Example: Volusion, Yahoo Store, Amazon Store, Miva Merchant …

For this category, you need to go to backend of your cart, export necessary data files as guide in the upload form. Example:

Cart_Migration_Step1_SourceCart_SaaS_file

Step 1: Target Cart Setup

Target Cart Setup should be similar to Source Cart setup. Please read the above section for details.

Step 2: Migration Configuration

Cart_Migration_Step2_1 Cart_Migration_Step2_2

  • Languages Mapping: If your Source Cart is multilingual, corresponding languages ( or storeviews) should be available in Target Store. You may need to create additional languages in Target Store to avoid data loss.
  • Currencies Mapping: Assign Source Cart currencies to proper Target Store currencies. Creating currencies in Target Store may be needed.
  • Orders Status Mapping: Assign Source Cart order statuses to proper Target Store order statuses. Creating additional order statues in Target Store may be needed.
  • Entities to Migrate: select all entities to migrate or just a part of them.

Additional Options:

  • Migrate recent data: if you choose this option, it will migrate new data only. Supposed you have just finished a full migration from your current Source store to Target store, after that Source store is still live and continue getting new data, and you want to get your Target store updated with the new data, select this feature to avoid starting over again.
  • Clear current data on Target Store before Migration: if you choose this option, all current products, categories, manufacturers, customers, orders, product reviews, taxes will be cleared.
  • Migrate categories and products SEO URLs: if you choose this option, old SEF urls of source will be preserved in Target Store, allowing you to maintain your Pagerank.
  • Transfer images in product descriptions to Target Store: download all images in product description into your store so that it won’t have to refer back to your source store or anywhere else for images.
  • Preserve Customer IDs on Target Store: this will help you preserve your old Customer IDs for easier reference.
  • Preserve Order IDs on Target Store: this will help you preserve your old Order IDs for easier reference

Note: Some additional options might not be available for some specific Source Carts or Target Carts.

Step 3: Migration

Cart_Migration_Step3

The migration will take place automatically in this final step. In order for it to progress, you should not close your browser of remove Source Cart Connector.

After the migration is completed, click on “Clear Cache and ReIndex Data” to finish.

When a problem occurring on the migration process, Cart Migration Tool provides the ability to resume the process:

1. Automatically resume on the spot: the tool will automatically resume after a failure until all data is imported.

Cart_Migration_Step3_retry

2. Manually resume: you can refresh the page to go back to Step 1 and click on “Resume”, this is helpful when you want to temporarily stop migration and resume when you want to.

Cart_Migration_Step1_Resume

Access Advanced Configuration by going to Cart Migration > Settings. All default values are configured to work with most cases, thus it is recommended to change these values only when it is necessary to.

Cart_Migration_Settings

  • XXX Per Batch: Cart Migration splits each entity data into small batches (or chunks) and import them in turn. This option defines batch size to process in each turn. Depending on your Target Store hosting resource you can change the values accordingly. The lower the value is, the less time and resource Target Store spends to process a batch, also the longer overall time to import full data.
  • Delay Time: the sleeping time between each batch. This option defines the “break time” for both Source Store and Target Store. It is also helpful to prevent Timeout issue if Source Store has been setup to limit the number of requests in a period of time.
  • Auto Retry After: if by some reason, the batch process fails, the tool will automatically retry after a period of time defined by this option.
  1. Clear current data and fresh migrate all data

Proceed normaly to Step 2, here please choose “All entities” and “Clear current data of target store”. Hit next to proceed to Step 3.

  1. Clear current data and fresh migrate some specific entities

Proceed normaly to Step 2, here please choose only entities you want to migrate and “Clear current data of target store”. Hit next to proceed to Step 3. Note: “Clear current data of target store” will only clear data of selected entities.

  1. Incremental migration

Lets say you have successfully performed first migration from Source store to Target store for a few/all entities. Data has been imported properly. A few days later, your Source store has some more data and you want to import this new data only ( incremental migration ). Here is how to do it:

  • Incremental migration can only be done for most recent migrated entities. Example: if you have migrated all entities for the first time, in the second time you can incrementally migrate new data of all entities. If you only migrated for example Customers + Orders only, the next time you can only perform incremental migration for Customers + Orders.
  • Incremental migration also can only be done for previous source cart url and target url, it is not feasible if you change source cart url or target cart url.
  • Proceed normally to Step 2. Here please choose entities you want to migrate ( must be the same entites you migrated last time ) and “Migrate recent data”.
  • Proceed to Step 3.
  1. Default data

Migrated data should be checked in Target Store backend because information displayed on frontend might go through filters, modifications by the store template which does not fully justify how the data was migrated.

  1. SEO Urls

How SEO Urls Plugin works: “Products and Categories SEO Urls Plugin” helps migrate Products and Categories urls. Old urls will be saved in Target Store and will be maintained to keep all current SEO ranking you have built up for years.

In most cases, you would likely have an old source store at : http://my-source-store.com and want to migrate your data to another location http://my-target-store.com , after that you want to put this store back to your old domain ( http://my-source-store.com ).

If you have used SEO Plugin to migrate old product and category urls over to target store, you can check the result by following these steps:

  1. Customer Password

If you have Customer Password Plugin, after migration, customers can immediately use their old passwords to login in the new store, without the need of resetting or any further action.

After migration is completed, the migration tool might not be needed anymore. It is recommended to uninstall/disable the tool.

  1. Remove the connector: the connector can be safely deleted on your source store.
  2. Remove migration module: you can be safe to remove Cart Migration module. But it is strongly recommended to backup the migration tool database first, later on debugging purpose.

1. Product import stops permanently at some specific point, how to resolve?
Cart_Migration_Step3_retry

Cause: php execution time too low

Solution:

  • Go to Cart Migration Settings, change value “Products per Batch” to a lower number
  • Increase you server php max_execution_time value

 

2. Can the tool migrate customer passwords?
Yes!

The tool can migrate passwords with “Customer Password Plugin”. This is a special plugin which adds the ability to read passwords encrypted by Source Stores to Target Store. All passwords are migrated over and remains encrypted, customers can login to the new shop right away without the need of resetting passwords.

 

3. Can the tool migrate products and categories old Urls to preserve SEO ranking?
Yes!

“Products and Categories SEO Urls Plugin” helps migrate Products and Categories urls. Old urls will be saved in Target Store and will be maintained to keep all current SEO ranking you have built up for years.

For us to create the plugin, please provide your source cart url, we will diagnose and create the plugin to send to you within 24 hours. There are cases which we also require FTP of your source cart.

 

4. My Source Store has some custom data which I have manually added, can we migrate such data to my target store?

Yes!

“Custom Fields Plugin” helps migrate custom fields from Source Store to Target Store. This is useful in case customers have customized their store, for example: adding fields to database tables, and also want to migrate these fields into Target Store.

For us to create the plugin, please provide FTP of your source cart, we will diagnose and create the plugin to send to you within 24 hours.

 

5. More questions?

Please drop us a message at: http://litextension.com/contacts/

Or email us at: contact@litextension.com

We are striving to get your questions answered within 24 hours.