Drupal - What is the recommend process for migrating a Drupal 6 Ubercart site to Drupal 7 / Drupal Commerce?

There are new tools and resources for this:

  • http://drupal.org/project/commerce_migrate
  • http://drupal.org/sandbox/rfay/1233708
  • http://vimeo.com/26775252
  • http://www.commerceguys.com/resources/articles/215
  • http://www.commerceguys.com/resources/articles/ubercart-drupal-commerce-1
  • http://www.commerceguys.com/resources/articles/ubercart-drupal-commerce-2
  • http://dl.dropbox.com/u/7350603/Importing%20into%20Drupal%20Commerce.mp4

The commerceguys who are behind Drupal Commerce, will surely make this in time. They have a lot of Drupal 6 UC sites, that they on some point would like to get into beta.

Having an upgrade path from Ubercart to Drupal Commerce, is a bit premature for now. Beta was only just recently launched, and some key features are still missing in core, like physical products and shipping.

Upgrading will not be an easy task either, since Commerce is quite different using the new entity API that's available inn Drupal 7. This means that products, orders, costumers, line items are all entities defined by Commerce.

If you want to upgrade a Drupal 6 UC to Commerce today, my recommendations would be to.

  1. Update the site to Drupal 7, (but don't install UC for Drupal 7)
  2. Define the product types needed by your site.
  3. Convert all product nodes by UC into Commerce product entities, and either delete them or change them to have a reference to the product (Custom code) - It depends on how you want to display your products. Usually, you either want to pull in the data to a node, or display the product entity with views.
  4. Convert order, line-item data from UC to commerce.
  5. Build the site and have fun.

Having just made a Drupal 7 commerce site from scrats and then converted a Drupal 5 -> Drupal 6 UC site. My take on commerce vs ubercart is that right now, commerce has a much stronger and well built core system, but UC has many more contrib modules with a lot of features. Depending on the UC you are converting, you might have you spend considerable time custom coding what you have in ubercart contrib.

My advise is, to go for commerce drupal 7, but wait a bit until it is more mature and has a better suported upgrade path from Ubercart.


I don't think there is an easy no munging method to get to Drupal Commerce. Over time, someone will hopefully publish some MigrationDestination and MigrationSources that correspond with Commerce products and Ubercart products (orders, customers, etc) respectively for use with the Migrate module.