I am looking in to migrating our D7 Commerce site to Drupal 8 (just the product entities). I expect using the migrate module will be our best bet, but I'm not really sure where to start. Has anyone successfully set up a migration for this yet? Do I need a yml file for each field?

  • 3
    Porting of Commerce is still in progress (drupal.org/node/2598266). I expect the add-on modules for shipping, payment and so on are going to take a while longer. I'd say check back in a few months.
    – cleaver
    Nov 11, 2015 at 16:43
  • I understand that, but the entity types for product and product variation are already part of dev, and are usable. I'm just checking if anyone has tried migrating the entities yet, I should have stated that initially.
    – Trey
    Nov 11, 2015 at 16:46

1 Answer 1


A migration has the following required components:

  1. A source plugin, which provides the data to the migration system from D6/7, a CSV file or whatever it is it connects to.
  2. A destination plugin that stores data in Drupal 8.
  3. The migration config entity that connects the two by defining the mapping and any processing/transformation of those properties/values.

The destination plugins are provided for all entity types in a generic way. So you can import data into D8 commerce products. However, what's fairly certainly still missing is source plugin that reads data from a D7 site. You can implement that yourself, it's fairly easy and there are plenty of examples for node, user, .. in core.

The migration entity is then also something that you need to define since that won't exist either. Depending on how different the data is, this is often the complicated part and needs possibly various transformations/process plugins to re-structure the data for D8.

For an example, see the migrations the we are in the process of writing for simplenews.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.