Migrating to Elastic Path

Joanna Suau

June 19th, 2019

 

Learn how easy it is to jump platforms and join Elastic Path

What you need to consider before migrating to Elastic Path

Before you proceed with migrating your data over to Elastic Path from platforms such as Magento, you should take the opportunity to review your current architecture.

Consider the following aspects:

  • Hosting provider. With Elastic Path, you’ll need a hosting provider for your frontend, and in a situation where you’re using webhooks and integrations. All your backend data is taken care of for you by Elastic Path. If you’re moving from a monolith platform, your current hosting solution may be excessive, so you may want to revisit exactly what you require.
  • Storefront. Elastic Path unchains the frontend from the backend, so there is no real need to change your storefront. However, this may be a great opportunity to review it in terms of accessibility and performance.  
  • Antiquated technology. If your store runs on a heavy, customized code base to cater for common commerce functionality requirements (like tax calculation, customer notifications, shipping, etc.) which can be easily substituted with a third-party integration, consider plugging in a third-party service instead.

SEO consideration

SEO is important when designing a new page, but it is equally important when migrating to a new solution. You need to make sure your page is not affected negatively by your re-platforming efforts. With Elastic Path, you can make sure your URLs are human-readable and optimized, if not already, and your metadata is migrated.

Migrating to Elastic Path: Process overview

Elastic Paths takes an active part in the process of migration, by helping find you the best solution for your store. However, you’ll still need a developer to do all the heavy lifting. Below, you’ll find a list of all necessary steps needed for migration together with a list of personas that should be involved in the process. We’ll explain each step in greater detail in the next section.

StepPersona(s) involved
Create a Elastic Path accountCustomer or migration specialist
Model a catalog inside Elastic PathElastic Path solution specialist with a customer or migration specialist
Orchestrate store integrationsMigration specialist
Rewire the frontend to use Elastic Path APIMigration specialist
Migrate customer accountsMigration specialist
Test and launchMigration specialist

Sample migration objectives

Typically, our customers come to us with a list of features and business requirements they need to meet. Below, you’ll find a sample checklist provided by one of our customers. The checklist might set your expectations on what Elastic Path can do for you and how your current solution gets adapted to the Elastic Path API.

PROJECT OBJECTIVES
Problem areas to resolveIs Elastic Path a solution?If yes, how?
Improve scalability to $50 million salesYESEnabled open commerce architecture
Improve backend flexibilityYESDecoupled backend logic
Improve frontend development flexibilityYESDecoupled frontend logic
Improve inventory integrity with high-frequency updatesYESProduct Information Management API
Develop custom workflows and processes for order management and data analyticsYESThird party integrations
Extend core data model with custom dataYESFlows API
Improve incident response and managementYESImprove data store integrityYESElastic Path hosts your store data; for webhooks and integrations we recommend separate hosting

 

PROJECT REQUIREMENTS
Data/Feature RequiredElastic Path solution
Administration / configuration dashboardStores managed through Elastic Path dashboard
Catalog
ProductsCreated through Products API / Elastic Path dashboard
Product attributesProducts API (image, description, price, SKU, slug, commodity type, status, manage stock). Additional data accommodated through Flows API (custom data)
Product editorEditable through Elastic Path dashboard
Grouped productsProduct Relationships (managed through  Elastic Path dashboard or the API)
CategoriesCreated through Categories API or Elastic Path dashboard
Inventory managementManaged through Inventory API or Elastic Path dashboard
Store functionality
Cart and checkoutCarts API, Checkout API
WishlistsNew resource added through Flows API
Customer rewards / pointsExtended customers resource through Flows API
Coupons and promotionsPromotions API
Product rating and reviewsExtended products resource through Flows API
Transactional emailEvents API
Payment gateway management (Paypal, Braintree)Native Braintree integration, PayPal integration through manual payment gateway
CMS for blog, pages and block management (category pages, landing pages)New resource added through Flows API
Data import/exportImport scripts
Carrier shipping integrationThird-party integration (e.g. Shippo)
Customer dashboard for order history, re-orders, tracking, address management, etc.Elastic Path dashboard
Site searchThird-party integration (e.g. Algolia)

Step-by-step migration process

Elastic Path APIs accept any data format. And so, migrating into Elastic Path is quite straightforward, as we don’t ask you to reformat or change the data you’ve exported from your previous platform.

Get a Elastic Path account

Head over to our Elastic Path website and sign up. Once your account is active, you’ll have access to the Elastic Path dashboard with tutorials and additional reference to help you with your ongoing project. You’ll also get your hands on your store-specific credentials (Client ID and Client Secret) that you and your migration specialist will need for the migration.

Model a Catalog inside Elastic Path

Modeling a Catalog inside Elastic Path will make sure your data is organized the way you want. This process involves the following aspects:

  • Products
  • Brands
  • Collections
  • Categories
  • Images
  • Currency

If your catalog includes fields that are not natively supported by Elastic Path, we will recreate this data through Flows (our signature data customization feature).

The actual migration process is really straightforward. We use your data in whichever format you provided it to us (typically, this would be a CSV file, but Elastic Path doesn’t impose any format on you). We will then use our importer tool to migrate your data into the Elastic Path API.

Next, you’ll need to make sure your catalog and the entire checkout flow is plugged into your storefront and working as expected.

At minimum, your storefront should include the following:

  • Product listing page
  • Product detail page
  • Login and signup
  • Cart
  • Checkout
  • Order confirmation

 

Orchestrate store integrations

Once you identify which store integrations you need to plug into your Elastic Path project to have the complete checkout experience, you or your migration specialist can proceed with integrating them with the Elastic Path API, following integration patterns and/or examples.

At minimum, consider the following:

  • Customer communication
  • Paying provider
  • Shipping and warehousing
  • Tax calculator
  • CMS
  • CRM
  • Search engine
  • Hosting provider - need for webhooks, integrations, and the frontend

Below, you’ll find an example of a system architecture that uses Elastic Path as the core API that orchestrates various third party integrations. Mind that this is just an example, and you can use any integration that you find suitable for you.

Fig 1. An example of a headless commerce architecture with third party integrations

 

At this point, you have a functioning store. You will now have to make sure that the data is consistent for the existing customers. This is the next step of the migration.

 

Migrate customer accounts

To migrate customer accounts into Elastic Path, we first check the data type (whether it’s JSON or CSV) to be able to determine the best way to migrate the data over.

If the data provided contains more than name, email, password, we’ll need to create custom fields through Flows to store it.

Elastic Path API without customer passwords. At this point, you’ll need to inform your existing customers about the migration process and ask them to log in again or reset their password, so that it can be stored inside Elastic Path.

 

Next steps

Once you test your integrations and make sure your storefront works as expected, you’re good to go live! Typically, a complete migration takes less than 35 days.

 
 
 

Share on

Joanna Suau