The import of product has three goals:

1/ It enables you to import products data to your store using CSV files or by directly writing the information in the text area available

2/ It enables you to automatically generates products based on files/images. That is useful when you are building a website selling images, mp3, and that you have a lot of them which will all have the same product options ( prices, description, etc ). This feature is only available in the Business version of HikaShop.

3/ You can also migrate from VirtueMart 1.x to HikaShop since HikaShop 1.5.3

You can also import categories with the import screen.

You can access this screen by clicking on the menu to Components->HikaShop and then on the HikaShop menu Products->Import in your back end.

In our commercial editions, you can use the "Hikashop Products Cron Update Plugin" in order to automatically import a CSV file periodically. That is useful when you have your stocks and prices updated in real time by your suppliers or your products management tool. You can configure the plugin via the joomla plugin manager.


Import from a CSV or from the text area

You can import product data in two ways :

Import products from CSV : Import your products from a CSV or a text file.

Import products from text area : Instead of uploading a file, you can directly copy/paste your products information in an input box and let HikaShop import them.

General information about the format of the CSV files

You also have the possiblity to update existing products' information with the option "Update products information if the product_code already exists" set to "yes". You can also force the products to be published without having to specify the product_published column using the option "Force products to be published if no information is given in the product_published column" of the interface.

The first line of your CSV file should indicates to HikaShop the name of the fields to import (column names of the #__hikashop_product and #__hikashop_price table from the database). For example, if your file contains a list of products with the format "product_name,price_value", this first line of your file should be : "product_name,price_value" (always in English as it is the name of the columns in the database). In the price_currency_id, instead of the id of the currency you can have the currency code. If the price_currency_id is not specified the main currency of the store will be used.

If you are not sure about your column names, simply try to upload your file with just the first line defining the column names and HikaShop will display clear error messages in case your first line is not correct. Likewise, if you want a list of the column names possible, you can enter in the textarea some random text and click on import. That will give you the list of the possible column names. You never need or should have more than one line of information per product in your CSV.

HikaShop does not impose any CSV format and is able to import files with any kind of separator and also handle fields data on multiple lines (useful for product description).

If you don't specify a product_code, it will be generated from the product_name column. If the product_name is not specified it will be generated from the first image or the first file of the images and files column. If based on that the system is not able to find a product_code, the product will be skipped. If a product_code already exists in the database it will be skipped.

Please specify your file charset, if you know it, so that HikaShop will encode your data in UTF-8 in order to import it properly.

If you don't know your file charset, simply leave it as "Unknown" and HikaShop won't encode your data.

Importing Images and Files along with products

If you have images or files along with your products, first place them in the "upload folder" option of the configuration under the tab files. You can add a column name 'images' or 'files' where you can specify the images name separated by one of the supported separator different from the main separator you're using in your file ( , ; | ) unless you're double quoting the information.

So for example you could have this:


My product,"image_front.jpg,image_back.jpg"


or that:


My product,image_front.jpg;image_back.jpg


Related products import

Similarily to the images and files column, you can have a related column where you can write product_code values of other products already inserted or placed before in the file. These products will be linked as related products to the main product.

For example:


my_product_1,My first product,""

my_product_2,My second product,""

my_product_3,My third product,"my_product_1,my_product_2"


This will add three products and the third one will have the two others as related products.

Importing product categories

Then, you can also have a categories column where you can put a list of categories id or a list of categories namekey.

For example:


my_product_1,My first product,"2,13"


This will add one product with 2 categories attached: the category with the id 2 and the one with the id 13. You can find ids of categories on the category listing in the column called ID on the right of the listing.

You can import a tree of categories which will be created if they don't exist already in HikaShop with the option "Create automatically missing categories" set to "yes". For example, you could have something like:


product category,main category 1;main category 2;main category 3

main category 1,sub category 1;sub category 2


You could also mix both products and categories in the CSV:


,main category 1,sub category 2

my_product_1,main category 1,sub category 2


Importing products with variants

Finally, you can also insert variants of products. You will have to specify in the product_parent_id column the product_code of the main product which must be inserted before the variants in the file. And the main product line need to have the value that you want as default for the characteristic so that the characteristic can be "attached" to the main product.

You first need to create the characteristic and the possible values via the menu Products>Characteristics of your website before importing the CSV and of course the name of the column and the values you put in the CSV for it must correspond to the name of the characteristic (or its alias) and its values. If you were using a characteristic called 'color' you might setup the values red, blue, yellow and green, even though you won't apply all of them to every product. But they must exist if you are going to use them ever in the import.

For example, suppose that you have a product with 1 characteristic being the size and two variants:





The price_value column here is optional, it is added as an example so that you can see that you can add data to any column of the CSV and it will be added to each variant so that the data displayed/used on the product when you select something in a characteristic will update based on what you select. That way, the default price of the "main_product" product will be 15 and if you change the size selection to small, the price will be 10.


Import products with translations

First, you need to setup several languages in Joomla. And you can also get the language files for HikaShop. Then, make sure you can translate your products data with the interface provided by HikaShop.

We'll suppose here that you setup 3 languages on your website: en-GB (English the main one), fr-FR (French) and ja-JP (Japanese). Supposing that all this is working, here is an example of CSV you can use to import translations for your products:


my_product_1,My first product,Mon premier produit,私の初めての商品


This will add one product with "My first product" as its main name and a French and a Japanese translation of the name. The | character is called a pipe. You should be able to type it on any keyboard layout.

The import supports the import of all the fields you can translate in the translation popup of the product edit page, including the custom fields (for custom fields, you need to use their "column name" in the CSV).


Other information on the import

If you have an excel file with all your products, simply add a new line at the top to indicate the column name (product_code, product_name...) and then save your file in a CSV format (Save as -> CSV). Then import your CSV file in HikaShop. You can open your file with a text editor (notepad for example) to check if your file has the right format.


File Charset: We recommend you to import an utf-8 file but if you import an other format, you can let HikaShop handle the conversion in which case you should specify the encoding format of your imported file.


Most of these options in this part, so it isn't necessary to details them, unless maybe the last three.

Store images locally : If set on "No" your import will only store the Url link of your image on the Website, if on "Yes", your website will store the image.

Store files locally : Same idea as previous description but for your file.
"No" => Only Url link
"Yes" => Store the file on the website.

Keep other variant : Here, let's explain it via an example :
You have already as a product a t-shirt with as variant 2 red & blue
You will import new data about this t-shirt product with 2 variants black & blue
"Keep other variant" on "Yes" => Your t-shirt will now have 3 variants : black, red & blue
"Keep other variant" on "No" => Your t-shirt will always have 2 variants : black & blue,
The old red variant haven't be kept.

If you have the Business version of HikaShop you can also select a template product for the import. That way, all the infos you don't fill will be automatically filled by the system. It can greatly speed up the import process for you. For example, if all your products have the same prices and images, you can create a template product with the good values and then import a CSV of your products info without the prices and images and the system will add them automatically to the products imported.


You can also use the text area option to import CSV compatible data in the same way.



Import automatically from a CSV file

HikaShop Business and HikaShop Essential both have a plugin called "Hikashop Products Cron Update Plugin" that you can configure via the Joomla plugins manager. It allows you to import products, or update products data automatically from a CSV file.

In order to use it, you will first need to configure your HikaShop cron. Once that's done, you can directly go in the Joomla plugins manager and configure it.

The "File" option will allow you to enter a local file path for your CSV, or the URL to the CSV (and in that case, the plugin will first download the CSV each time before importing it).

The "Column names" option allows you to convert the name of the columns of the CSV automatically to HikaShop column names during the import. For example, if the column name for the product name is "name" and the product code is "code" in your CSV, the same columns in HikaShop are product_name and product_code. In that case you want to enter the following in that field:


Make sure that you select the charset of your file so that special characters can be imported properly.

The "Frequency" option allows you to set the period of imports (like every hour for example). This parameter is in seconds so for 1 hour, you want to enter 3600 in there. Note that even if you enter a frequency below your cron, your plugin will only be able to check on that frequency at each cron trigger. So if you have a cron with a frequency of 1 hour and that you enter here a frequency of 2 minutes, the automatic import will only be done once an hour.

Finally, you have an option to say if you want that products not in the CSV to be deleted from your shop. Be REALLY careful with that option. Only turn it on when you know what you're doing and that the automatic import already works with it turned off.


Import from VirtueMart

You can migrate from VirtueMart to HikaShop easily via the import screen. You just need to select the "Import from VirtueMart" option and click on the "Import" button. That will bring up the migration tool which will import the categories, taxes, products, images, files, customers and orders from VirtueMart into HikaShop in several safe steps.

That's a great way to update your aging Joomla 1.5.x website to more recent versions of Joomla which are not supported by VirtueMart 1.x and use HikaShop.

Since version 2.2.2 of HikaShop, you can migrate from VirtueMart 2.x. to HikaShop. The import also supports VirtueMart 3.x since its release. The import will detect your version of VirtueMart and use the appropriate import rules.

If you have errors during the copy of files or images, please make sure that the access rights on the destination folders are high enough as to allow Joomla to copy the files.

Finally, at the end of the import, you will have the possibility to publish the VM redirect fallback plugin which will redirect the products and categories pages from VirtueMart to their HikaShop equivalent so that you don't loose your page rank on search engines.

An alternative method is to use the export/import system of CSVi. Here is a tutorial you can follow for that: tutorial CSVi to export VirtueMart data and import it in HikaShop.


Import from OpenCart, RedShop and MijoShop

The data from OpenCart, RedShop and MijoShop can also be imported automatically into HikaShop. You'll find one selection for each shopping cart system and it will be active only if the shopping cart tables are detected in the database. Just click on the process button and follow the steps of the import one after the other until the end.

If you have errors during the copy of files or images, please make sure that the access rights on the destination folders are high enough as to allow Joomla to copy the files.

Finally, at the end of the import, you will have the possibility to publish the RedShop/MijoShop redirect fallback plugin which will redirect the products and categories pages from RedShop/MijoShop to their HikaShop equivalent so that you don't loose your page rank on search engines. Note that this capability is not present for OpenCart since it doesn't work on Joomla but is an external shopping cart, so you'll have to build you own rules in a htaccess or a SEF extension in such case.


Third party migration services / CSV import solutions

Besides the CSV import and shopping cart migration features included in HikaShop, you can also find third party solutions which can handle similar things. Their advantage can be to support more shopping carts than the few available in HikaShop, or to migrate more data than done in HikaShop.

You first have Litextension migration services available on that page. Note that they also offer a CSV import tool for HikaShop on that page.

You also have the services of Cart2Cart available on that page.

Finally, note that the great Joomla extension RO CSVI, which specializes in CSV import and export capabilities, is also integrated with HikaShop. So you might want to try it out. You can learn more about it on their website.


Generate products

This feature is only available in the Business version of HikaShop.

You can generate products based on files (which are downloadable upon order confirmation) or images (which are displayed on the product page) using the "Import products from folder" option.

With this generation mode you will be able to match one file per product generated. You will most likely want to set beforehand a product template which you will be able to use here to fill the rest of the product information like prices, variants, categories, etc.

You will have to enter the path to the folder where you have all the images/files for which you want a product to be generated. The path can either be relative to the root of your website or absolute.

When the product is generated, a copy of the file/image is made in the "upload folder" for images or the "upload secure folder" for files. You can select  here whether or not you want the original files/images to be deleted from that source folder after the product has been generated.

The name of the file/image will be automatically used as product_code and product_name.

You can also select a template product for the generation. That way, all the information of the products will be automatically filled by the system based on the information of the template product.