Migrate Virtuemart 1.1 to Version 2


VirtueMart is absolutely huge. By some counts, it stands second in popularity amongst all eCommerce platforms. Last year we explained how to use it in a very detailed tutorial.

Nearly all Virtuemart shops run version 1.1 but recently Virtuemart launched version 2.0. This tutorial will show you how to move your Virtuemart installation from 1.1 to 2.0.

What you need to know

Migrating Virtuemart from 1.1 to the newest 2.0 version seems fairly simple with the migration utility that is built into Virtuemart. However there are a few potential pitfalls. The migration utility does move this data:

  • products
  • orders
  • product categories
  • manufacturers
  • manufacturer categories
  • shopper groups

However, the migration utility does not move the following items. You will need to manually add this data:

  • product types
  • product attributes 

In this tutorial, we'll walk you through the process of moving from 1.1 to 2.0.

Also, please make sure that you try this first on a development copy of your site. As we always advise: DO NOT ATTEMPT AN UPGRADE ON A LIVE, WORKING SITE. Here's a tutorial on creating a development copy of your Joomla site.

Step 1: Download the Virtuemart files


Go to https://virtuemart.net and download two things:

  1. Download a copy of Virtuemart 2.
  2. If you are not currently running Virtuemart 1.1.9, download an update file to get you to Virtuemart 1.1.9. In the image above you can see that there are specific patches, for previous versions. You can find the patches at https://dev.virtuemart.net/projects/virtuemart/files. You will need to update to Virtuemart 1.1.9 before going any further.

Step 2. Move your media into /images/stories/virtuemart/

  • Use an FTP program or your file manager to create a directory for your media files that is located at /images/stories/virtuemart/.
  • Copy all of the files located in /components/com_virtuemart/shop_image/ to this new folder at /images/stories/virtuemart/.

Step 3. Rename your old com_virtuemart folders

Using your file manager or FTP program to go to /components/com_virtuemart/ and rename the entire /com_virtuemart/ folder. I used the word ORIGINAL in the image below so it would be easy to spot the change to /ORIGINALcom_virtuemart/.


Step 4. Disable the Joomla debug option plus Virtuemart modules and plugins

We need to go to the Joomla configuration and disable the Joomla debug option.

  • Go to Site > Global Configuration.
  • Go to the System Tab.
  • Choose No for Debug System.
  • Click Save.
We also need to disable all of the Virtuemart modules.
  1. Go to Extensions > Module Manager.
  2. Use the Filter to search for Virtuemart Modules.
  3. Click the checkbox at the top of the column to select them all.
  4. Click Disable.

If there are any green checks, for Virtuemart modules change them to red x's.

We also need to disable all the Virtuemart plugins:
  • Go to Extensions > Plugin Manager.
  • Use Filter to search for plugins.
  • Disable all Virtuemart plugins.

Finally, if you have it installed, also disable the Akeeba System - System Restore Points plugin.

Step 5. Set the default language

  • Go to Extensions > Language Manager
  • Check to see that the default language is set to the same language used for your product descriptions. In this illustration there is only one language, but if you have a multi-lingual site, this will make sure you have the correct language tables in the database.

Step 6. Install Virtuemart 2

When you download Virtuemart it comes in a compressed package that needs to be unzipped first. In fact, the download package will tell you to do this by having a name such as com_virtuemart.2.0.2_extract_first.zip. After unzipping you will see two files:

  • com_virtuemart.2.0.2.zip
  • com_virtuemart.2.0.2_ext_aio.zip

You only need to install the com_virtuemart.2.0.2.zip file Complete the installation of this file before you add the AIO (All-in-one) package. The AIO contains all the plugins and modules you'll need.

Go to Extensions > Install/Uninstall (or Extensions > Extensions Manager) in Joomla 2.5 and upload the files for Virtuemart 2.0. The file you want to upload will have a name such as com_virtuemart.2.0.3.zip.
The image below shows the successful installation response screen. You won't need to install sample data.

You can now go to Components > Virtuemart and confirm that all your data is intact and the upgrade has been made. If it was installed successfully, you'll see a screen like the image below. If anything went wrong, you'll see an error message, which seems to be a frequent result according to forum reports. However it's a simple fix. If you get an error message, uninstall Virtuemart 2 and reinstall it once more.



Step 7. Install AIO component

Return to the Extensions > Install/Uninstall and upload the AIO (All In One) component. This will have a name such as com_virtuemart.2.0.2_ext_aio.zip.



Step 8. Deactivate an incompatible plugin

If you have a Joomla 1.5 site, you will get an error message if you try to view the site now. The reason is that a Joomla 2.5 plugin was installed with the AIO component. If this is a 1.5 installation, the site will not load correctly. Here's how to fix it:

  • Go to your administrator pages and go to Extensions > Plugin Manager.
  • Use the Filter to search for Virtuemart Plugins.
  • Disable the new plugin called VM - Search, Virtuemart Product.
  • Preview the site.

If you are locked out of your admin, you can turn off the module using phpMyAdmin as explained in this tutorial.


Check your site now. If it works, we let's get the migration going.

  • Check the "Enable database Update tools" setting in Virtuemart Configuration.
  • Go to Tools/Tools & Migration "Migration" tab.
  • Choose Everything and click Start Migration.
  • Click Start Migration as many times as it takes for all products to migrate

Step 9. Enable the database update tools

  • Go to Components > Virtuemart.
  • Click Configuration.
  • Click the Shop tab and scroll down.
  • Check to enable database tools.
  • Click Save.

Step 11. Set up the migration

  • Go to Tools and click the Migration tab.
  • Increase the max_execution time. I set mine at 100.
  • Increase the Memory Limit. I set mine to 256MB.
  • Check the "everything" radio button. Do this before you start.
  • Click Start Migration.

You already made these changes in the step above, but If you want to increase these manually, open your php.ini file in a script editor and change the parameters as needed. If you need help, here are two tutorials we have available for free, that will give you some guidance in finding the file and making changes.

Once the migration is complete, you'll see an screen like the image below. Mostly blue is a good sign. At this point you don't need to be too concerned about the error messages. You still need to configure all the details of your store, so that's the next step. That will correct these error messages.
Now go ahead and previewing the site. It shows you that all the products were imported and everything is working.
Congratulations! At this point your migration to Virtuemart 2 has gone as far as the in-built migration utility will take you.
Now you can configure your store by going to Components > Virtuemart > Configuration. We have a great tutorial on how to configure Virtuemart if you need it.
All the best with your new Virtuemart 2 store!