How to Migrate from Spree Commerce to Magento 2 or Sync Data Between Them

- E-Commerce, Magento 2, Our extensions

Magento 2 Spree Commerce Migration

Spree Commerce is a quite robust e-commerce solution used by dozens of merchants worldwide. But it doesn’t offer enough features when you start to grow since no robust commercial options are provided. And the ecosystem around the platform is small, so you get a limited variety of third-party solutions and specialists related to this e-commerce platform. These and multiple other reasons force merchants to run the Magento 2 Spree Commerce migration. Are you a Spree Commerce merchant? Do you also want to upgrade your online storefront with a more feature-rich solution? You’ve come to the right place! Below, we describe how to migrate from your old Spree Commerce store to a brand new Magento 2 website receiving all the missing features including advanced scalability, reliability, and performance. We also shed light on data synchronization between the two systems, but let’s describe the Spree Commerce platform first and then compare it with Magento 2.

Introduction to Spree Commerce

Built on Ruby on Rails, Spree Commerce shows quite decent growth caused by its simplicity and relatively rich functionality. Despite the small ecosystem, the platform offers many extensions designed to improve the out-of-the-box functionality. The ability to add custom features represents scalability and flexibility opportunities.

Another important aspect is the modular structure of Spree Commerce that makes the platform easy to explore, configure, and upgrade. A single page checkout is provided by default! Besides, you will find built-in Google Analytics tools. Also, note that Spree Commerce enables custom tax logic.

As for the negative moments, it is the lack of many third-party solutions represented in the Magento ecosystem. Thus, Spree Commerce forces merchants to hire developers to create missing tools. The small community is also a problem when you try to find a solution for a recently appeared problem.

With almost 4k websites, Spree commerce is mostly used in the US, Russia, and Germany. The main category for its sites is shopping, but it is less than 15% of all Spree Commerce stores. Now, when you know some key facts about Spree Commerce, let’s compare the platform with Magento.

Magento vs. Spree Commerce

The following materials are taken from the report by SimilarTech. Both Magento and Spree Commerce ascend. While the ecosystem around our favorite e-commerce platform includes 146,455 stores, Spree Commerce is a base for 3,913 websites.

Spree Commerce is free to use but lacks commercial options, while Magen offers both opportunities. Therefore, it is well ahead of Spree Commerce in Top 10K Sites, Top 100K Sites, Top 1M Sites, and Entire Web. The following diagrams show that Spree Commerce is lagging behind:

Magento 2 Spree Commerce Migration

With better usage coverage in more websites categories, Magento is a leader in Shopping, Business & Industry, Clothing, Arts & Entertainment, and 229 others. Unfortunately, Spree Commerce hasn’t got a lead over Magento in any websites category.

As for the geographical distribution, Spree Commerce is leading in Tokelau and Micronesia only. Magento dominates in other countries, as you can see from the following map created by SimilarTech:

Magento 2 Spree Commerce Migration

What’s the main reason for the unpopularity of Spree Commerce? It seems that it’s caused by various limitations and the small ecosystem. But the small ecosystem doesn’t let the platform grow as fast as its competitors do. Vicious circle prevents Spree Commerce from being more powerful, flexible, and feature-rich.

At the same time, it is relatively simple and easy to use. With all features necessary for a small online store, the platform attracts new and new websites, but when a business grows, multiple platform’s limitations force merchants to migrate from Spree Commerce to Magento 2. Let’s figure out how to do that.

How to Migrate from Spree Commerce to Magento 2

Different reasons motivate merchants to switch from Spree Commerce to Magento 2, but it is evident that everyone looks for better e-commerce opportunities. Unfortunately, the headache of migration prevents store owners from any serious steps towards the desired enhancement, but what if it is possible to complete the procedure without any troubles?

Below, we introduce the only way to run the complete Spree Commerce Magento migration with the minimum time and effort. And it is not related to the default Magento 2 import tools since they are limited and force you to recreate numerous areas of your old store manually.

You need a third-party solution that not only adds the missing functionality but also supports all entities, automates data transfers, and solves the problem of different attribute standards.

Meet the Improved Import & Export extension – a module developed to move any data to and from your online storefront. In addition to the Magento 2 Spree Commerce migration, it will also let you connect your e-commerce store to all possible external systems including ERPs, CRMs, marketplaces, databases, etc. Let’s see how to import any data from Spree Commerce to Magento 2 in a few clicks using data file transfers or API connections.

Migrate from Spree Commerce to Magento 2 via Data Files

  1. First of all, you need export products, orders, customers, catalog, and other entities in XML or CSV formats from your Spree Commerce website. Try to find an export tool here: Spree Commerce Extension.
  2. Turn your old store into a set of data files and start importing its entities to the Magento 2 website. Use the Improved Import & Export extension. Create a new import job in the Magento 2 admin under System -> Improved Import / Export -> Import Jobs.
  3. Configure General Settings, Import Settings, Import Behavior, and Import Source:
    1. In General Settings, set a job title and create a schedule of automated updates (usually, it is not necessary to the one-time procedure of migration);
      Magento 2 Spree Commerce Migration
    2. In Import Settings, choose an entity that should be moved from Spree Commerce to Magento 2. The Improved Import & Export extension allows importing Products, Categories, Customers, Advanced Pricing, Orders, Attributes, Cart Price Rules, CMS Pages and Blocks. Some entities include additional features in this block. Thus, our module provides the ability to get rid of product associations or old categories for products right in the Import Settings section;
      Magento 2 Spree Commerce Migration
    3. In Import Behavior, select one of the available import behavior options. Next, choose a validation strategy suitable for the Magento 2 Spree Commerce migration and specifying separators;
      Magento 2 Spree Commerce Migration
    4. In Import Source, select an import file type and its source. After configuring several more parameters, you can upload and validate the file.
      Magento 2 Spree Commerce Migration
    5. Apply mapping to match Spree Commerce attributes to ones used in Magento 2.
      Magento 2 Spree Commerce Migration
  4. Note that a separate import job should be created for each entity to complete the Spree Commerce Magento 2 migration. Contact our support here to get more information: Firebear Help Center. We will help you run the Magento 2 Spree Commerce migration on the basis of data files.

Migrate from Spree Commerce to Magento 2 via API

The alternative way of running the same procedure is based on the ability to connect to Spree Commerce directly using the Improved Import & Export Magento 2 extension. You can replace file transfers with REST or SOAP API connections as follows:

  1. Go to the Magento 2 admin and create a new import job under System -> Improved Import / Export -> Import Jobs.
  2. Configure General Settings, Import Settings, Import Behavior, and Import Source:
    1. In General Settings, type a job title and configure an update schedule (the process is described below);
      Magento 2 Spree Commerce Migration
    2. In Import Settings, turn on API transfers: set the ‘Use API’ parameter to ‘Yes.’ Next, choose an entity that will be transferred from Spree Commerce to Magento 2;
      Magento 2 Spree Commerce Migration
    3. In Import Behavior, select one of the available import behavior options and specify a validation strategy. Type separators to finish the configuration of this section;
      Magento 2 Spree Commerce Migration
    4. In Import Source, choose a type of the import file – our extension lets you run the Magento 2 Spree Commerce migration on the basis of XML or JSON – and select its source – you can choose either REST or SOAP. Configure other parameters and proceed to the next step. Note that the provided data file should be validated.
      Magento 2 Spree Commerce Migration
    5. Apply mapping to match Spree Commerce attributes to Magento 2 attributes. Otherwise, the further import procedure will be interrupted.

Create a separate import job for each entity and run multiple import processes to migrate from Spree Commerce to Magento 2 via API. For further information, contact our support here: Firebear Help Center. You will get help regarding the Magento 2 Spree Commerce migration via API.

How to Synchronize Magento 2 and Spree Commerce

Chances are, you still don’t know whether to abandon your old Spree Commerce website or not. But it is possible to connect it to a brand new one on the basis of Magento 2. Below, we share a step-by-step guide that describes how to achieve this goal. With the Improved Import & Export Magento 2 extension, you can use either data files or APIs.

Synchronize Magento 2 and Spree Commerce via Data Files

  1. First of all, go to your Spree Commerce website and export products, orders, customers, catalog, and other entities in XML or CSV formats. You may try to find a third-party export solution here: Spree Commerce Extension.
  2. Next, create a new import job in your Magento 2 admin under System -> Improved Import / Export -> Import Jobs.
  3. Configure General Settings, Import Settings, Import Behavior, and Import Source:
    1. In General Settings, type a title of your new job and create a schedule of updates to enable automated import processes;

    2. In Import Settings, choose an entity you want to move from Spree Commerce to Magento 2;

    3. In Import Behavior, specify import behavior and validation strategy options. Next, type separators;

    4. In Import Source, choose a type of your import file and its source. Upload and validate the data file.

    5. The final step is mapping. Apply a preset or match attributes manually to make the Spree Commerce output suitable for Magento 2.

Note that you have to create and configure a separate import job for each entity like in the case of the previous procedure. Thus, you will synchronize the entire data flow from Spree Commerce to your Magento 2 website.

To provide your Spree Commerce website with the Magento 2 data, configure the following parameters:

  1. You have to transfer data to your Spree Commerce website. Install extensions that enable data import from your Magento store. You may try to find them here: Spree Commerce Extension.
  2. In Magento 2 admin, create a new export job under System -> Improved Import / Export -> Export Jobs.
  3. Configure General Settings, Export Settings, Store Filter, Export Behavior, and Export Source:
    1. In General Settings, type the import job title and create a schedule of updates. Thus, you will automate the Magento 2 Spree Commerce synchronization;
      Magento 2 Spree Commerce Migration
    2. In Export Settings, select an entity you want to move from Spree Commerce to Magento 2;

    3. In Store Filter, select a store view to export data from;

    4. In Export Behavior, configure the file format and specify separators;

    5. In Export Source, select a source to export your data file to.

    6. Apply mapping and filters, matching Magento 2 attributes to ones used in Spree Commerce.
      Magento 2 Spree Commerce Migration

Don’t forget to create a separate export job for every entity used in the Magento 2 Spree Commerce synchronization. Save and launch all import and export jobs to synchronize the two systems using data files. To find more information, contact our support here: Firebear Help Center. We will help you explore all the opportunities related to the Magento 2 Spree Commerce migration via data files.

Synchronize Magento 2 and Spree Commerce via API

As you might have already guessed, you can also synchronize Magento 2 and Spree Commerce via API. The Improved Import & Export Magento 2 extension allows moving all the necessary information from your old store to a new one via REST or SOAP.

  1. Go to your Magento 2 admin and create a new import job (like in any of the previous procedures) under System -> Improved Import / Export -> Import Jobs.
  2. Configure General Settings, Import Settings, Import Behavior, and Import Source:
    1. In General Settings, type a job title and configure an update schedule;

    2. In Import Settings, enable API transfers: set ‘Use API’ to ‘Yes.’ Choose an entity you want to import from Spree Commerce to Magento 2;

    3. In Import Behavior, select a suitable import behavior option and one of the provided validation strategies. Specify separators;

    4. In Import Source, select a type of your import file. As mentioned above, it can be either XML or JSON. As for an import source, the Improved Import & Export extension lets you use REST or SOAP. Configure other parameters and validate the data file.

    5. Map attributes to match ones used in Spree Commerce to the corresponding Magento 2 designations.

You have to create and configure a separate import job for each entity to enable multiple import processes synchronizing data transfers from Spree Commerce to Magento 2 via an API connection. Also, create a corresponding export process to provide Spree Commerce with the Magento 2 data if necessary.

For further information, contact our support here: Firebear Help Center. We will help you with the Magento 2 Spree Commerce migration via API.

Get Improved Import & Export Magento 2 Extension

Improved Import & Export Magento 2 Extension Features

Magento 2 Spree Commerce Migration

Below, we shed light on the exact features of the Improved Import & Export extension that lets you transfer data between Magento 2 and Spree Commerce. The module dramatically simplifies the default import/export processes as well as allows automating all data exchanges. Consequently, you can effortlessly migrate from Spree Commerce to Magento 2 with its user-friendly mapping interface and several approaches to automation.

Automated Import & Export

The migration from Spree Commerce to Magento 2 may not require automation since it is a one-time procedure, the synchronization of the two platforms is based on repeating the same actions on a regular basis. The Improved Import & Export extension lets you cope with this problem automating data transfers with the help of schedules and event-based triggers. Let’s describe each feature individually.

Schedules

Schedules represent the most intuitive way of automating data transfers. They are entirely based on cron, so you can fully leverage this technology to create fully independent update algorithms. The Improved Import & Export Magento 2 extension lets you create a custom interval or choose one of the predefined update schemes (they are fully customizable).

Alternatively, the module enables you to leverage profiles with no schedules which are efficient for the migration from Spree Commerce to Magento 2 and other one-time transfers. And with asynchronous data transfers, you can launch every scheduled profile manually whenever you want.

Below, you can see how to configure a schedule:

Events

Event-based triggers represent an alternative way to automate data transfers between Magento 2 and Spree Commerce. Use the following algorithm to create the corresponding background process:

  1. Create a trigger;
  2. Connect it to an event;
  3. Link an action to a trigger to launch it automatically.

As you can see, transferring data to Spree Commerce with a trigger, which launches the order export process after a customer places a new order, is no longer a problem. The same functionality can be leveraged for import. Check this article for further information: How to Run Magento 2 Import or Export After Specific System Event or Process.

Advanced Mapping Features

No schedules and triggers make data transfers entirely automated. They are not enough to solve the problem of different attribute standards that occurs during the Magento 2 Spree Commerce migration always prevents seamless data transfers. But the Improved Import Magento 2 extension has enough features to enable the entire automation providing ability to solve the problem without any headaches. To simplify data transfer from Spree Commerce to Magento 2, our tool offers the following features:

Mapping Presets

The Improved Import & Export extension solves the problem of different attribute standards in the most intuitive manner. It lets you apply mapping presetspredefined mapping schemes that reduce manual attributes matching.

Instead of doing everything in a file editor or the admin, you let the extension apply the changes. It analyzes the input file, discovers third-party attributes, and matches them to the ones used in Magento. You only need to select a matching scheme, which is applied to further updates automatically. Check the process of choosing a preset:

Matching Interface

At the same time, you can map external attributes to the corresponding internal ones right within your Magento admin. Our module provides the ability to take full control over mapping in a separate matching interface. You can rely on manual attributes editing when a preset that satisfies your needs is absent. The procedure looks as follows:

It is also necessary to say a few words about the “Default Value” column. You can use it to specify attribute values provided to all items related to a corresponding attribute. The feature is useful for importing product data from your old Spree Commerce without some old categories.

It works as follows: you specify a hardcoded value for the “_store” attribute, and the Improved Import & Export extension replaces the external values with the specified one. While attributes can be mapped in a very user-friendly manner, how does the Improved Import & Export Magento 2 extension solves the problem related to their unsupported values?

Attribute Values Mapping

It adds a separate interface element where you can apply attribute values mapping. Thus, our extension lets you automate the Magento 2 Spree Commerce synchronization entirely since no third-party value can interrupt data transfers! You have to choose an external designation and specify the internal one in front of it – like in case of attributes mapping. Repeat the procedure until all third-party values from your old Spree Commerce store are replaced. For further information, follow this link: Attribute Values Mapping.

Attribute Values Editing

When attribute values mapping is not enough, the Improved Import & Export Magento 2 plugin offers the ability to modify attribute values in bulk. You can use the following rules:

  • Add a prefix to multiple attribute values;
  • Add a suffix to multiple attribute values;
  • Split multiple attribute values;
  • Merge multiple attribute values.

You can freely combine the rules above as well as create conditions to increase the efficiency of the applied changes. For further information, follow this link: How to Modify Attribute Values During Import and Export in Magento 2.

Category Mapping

Another useful mapping feature introduced in our extension is related to product categories. Category mapping is a procedure that can dramatically simplify product transfers from Spree Commerce to Magento 2. The Improved Import & Export extension not only lets you edit external categories via “Default Values” but also provides the ability to match external product categories to ones used in your catalog:

Generate new categories right during the import process. Choose a parent category and specify a new one that should be created automatically. Our module will do all the work for you adding a missing section to your catalog automatically. If your new Magento 2 store doesn’t include a category from the Spree Commerce website, it’s no longer an issue. You can discover more information in this article: Category Mapping.

Attributes On The Fly

And to fix the problem of missing attributes, the Improved Import & Export extension lets you create attributes on the fly via the following general form:

Attribute|attribute_property_name:attribute_property_value|…

You can discover more information in this article: Product attributes import.

Extended Connectivity Options

Now, let’s explore the extended connectivity options available in the Improved Import & Export extension. Our module not only offers the enhanced number of supported file standards but also supports several alternative ways of transferring data between Magento 2 and external systems. It supports all Magento 2 entities allowing you to import and export them while the default Magento tools work with CSV files and much fewer entities.

Multiple File Standards

The Magento 2 Spree Commerce migration on the basis of the Improved Import & Export extension can be established with XML and JSON file transfers between the two systems. Besides, our plugin supports ODS and Excel file formats. The ability to import compressed file archives is another feature that essentially simplifies the migration. Our module unpacks them automatically.

Multiple File Sources

As for file sources, you can leverage the following ones:

  • FTP/SFTP. Transfer data files using a local or remote server.
  • Dropbox. Use a Dropbox account to establish a connection between the two systems. Alternatively, you can rely on Box, OneDrive, Google Drive, iCloud, and Amazon Drive.
  • URL. A direct URL can be used to import a data file as well.

Alternative Ways of Import & Export

In addition to the new file formats and sources, the Improved Import & Export Magento 2 extension also introduces absolutely new possibilities related to data transfers. The module enables direct API connections and works with intermediary services.

To connect Magento 2 to Spree Commerce, you can leverage REST or SOAP APIs. Additionally, Improved Import & Export supports GraphQL. Note that all API connections are fully compatible with mapping, scheduling, and other extension features.

As for intermediary services, they cannot be used to establish the migration from Spree Commerce to Magento 2, but you can utilize them for various integrations. Google Sheets, Office 365 Excel, and Zoho Sheet are currently supported. The following image illustrates the integration on the basis of the first one:

Magento 2 Spree Commerce Migration

The following video shows the extension in action:

Final Words

To make the Magento 2 Spree Commerce migration fast, intuitive, and user-friendly, use the Improved Import & Export Magento 2 extension. It will prevent you from spending hours on the recreation of your old store on a new platform. With data transfers of all entities, multiple file formats, API connections, various file sources, schedules, mapping, and other features, you will effortlessly import all the necessary information from the external platform to your new e-commerce website or move it to any third-party system. For further information, follow the link below and contact our support:

Get Improved Import & Export Magento 2 Extension