3.5. Import Products

fmProductImportExportfmDialogCustomSqlEditorfmCustomSqlFillParamDialo
fmImportExportProductsWizard

Sub-pages listing:

If you use the Standard Edition of Store Manager for Magento, the number of products available for import is limited to 3000. If you need to import more products, you'll need to upgrade to the PRO Edition.

Please click this link for more information: Store Manager for Magento Plans & Pricing

The Store Manager Import Wizard will facilitate the updating of your Store database via a simplified and efficient set of routines and applications.

Pay careful attention to each Wizard's page, to ensure correct import of products into Magento. Magento import, depending on the extent and number of operations to be performed, can be a rather complicated procedure. It may also be destructive if performed incorrectly. Be sure to create a database backup before importing products, especially if this is the first time that you are performing this task.

    1. Firstly, it is necessary to prepare a file in either CSV, XML, XLS, XLSX, or ODS format, for successful importation into Magento. Make sure that all necessary fields and data that you are planning to import are listed in the table, or file. The allowed list of fields that your file may include, along with detailed descriptions, follows:

            • "SKU" is a field in Magento that is required for all products. It is composed of a standard, alphanumeric string, that uniquely identifies the product, and is typically assigned by the Manufacturer, although you may create, and assign your own. It is a standard procedure that is accepted and used internationally. You should be able to obtain this standard code for all your products, if not already included, by requesting it from your Supplier. This identifying field must be distinct from all other values within the database, and may be used for uniquely identifying products during a Magento import session. Refer to step 7, for further information pertaining to product identification.

            • "Product ID" is a field that is used internally within the database table. It should be of numeric type only, and must also constitute a unique value within the context of the table. Its value is assigned automatically by the system (shopping cart) and will not be imported from the source file, and must not be changed by the user (other database tables may contain references to this field, pointing to a specific product, or products).

            • "Price" represents the cost of the product, at retail (or that paid by the end user), before applicable taxes, or shipping charges, are applied. It should not contain any rebates, coupons, or bulk discounts. Prices should be whole numbers, with a maximum of two decimal places. Price fields are numeric; no text is permitted. Also, it must not include the “$” symbol or any other symbols.

            • "Status". Valid values for this field are limited to "1", or "0". It designates the product's availability. For example, a value of "1" means the product is in stock, and available. Contrariwise, a "0" value indicates the product is not available for purchase, and it will not be displayed in your Store. If you do not provide a value for this column, your products will not successfully update. Products that are not listed in your new (or revised) .csv file can automatically be set as "Out of Stock", by enabling the appropriate option, in the last step of the Magento import process.To set the value as in stock for all products specify a value of "1" for the first product in your file, and spread it for all products.

            • "Quantity". The product's available quantity is specified within this column's value field. If you specify a "0" value or leave the field blank, the product will be displayed in your Store's front-end as "Out of stock".

            • "Category" allows you to specify a category into which your product should be placed, during import. If the product should be imported into a subcategory, use the pipe ("|") character, as a separation delimiter between the parent, and any subsequent subcategories. As an example, "Computers|Keyboards" designates that the product will be assigned to the "Keyboards" subcategory, within the "Computers" parent category.

            • If you need to assign the same product to multiple categories, use a double delimiter (typing the "|" character twice, in succession), in your .csv file. For example: "Computers|Keyboards||Computers|Other" (notice the double delimiter between "Keyboards" and "Computers") specifies that the product will be assigned both to "Keyboards", and also to the ''Other' subcategory, under the "Computers" parent category, during the import process.

    2. The Pipe is used as a category delimiter. The Category delimiter character should be specified in the 5th step of the import procedure. It is used to separate category names and specify the full category tree path for a given category. The Category path is very similar to the directory path, and is used to specify full file name in Windows, where every directory separated by backslash (\) character, like in the following example:

C:\Program Files\eMagicOne\Store Manager for ...\

If your supplier provides a source file that has categories in separate columns, they can be merged into an appropriate, importable format using the Expressions field, or you can manually merge them using Microsoft Excel. Perform the following steps to merge categories using the Expressions field (it is recommended that this method is used with Automated Product Import for Magento):

1. In the Import Wizard's 5th step, "Assign .csv Columns to Database Fields", find the "Category Name" field

2. Set the following expressions for this field:

CONCAT([CSV_COL(1)], '|', [CSV_COL(2)], '|' , ... , [CSV_COL(N)])

where:

[CSV_COL(N)] references a column name within the .csv file

N specifies the column number, or sort order.

' | ' - specifies the category delimiter, which was chosen in the previous step

3. Complete the Magento Import, checking that the categories were allocated correctly.

To merge category columns using Microsoft Excel, use the following formula:

=B2&'"|"&C2

where:

| - is the category delimiter

B2 - is the parent category column in the file, and

C2 - is the sub category column in file.

Media Gallery

Media Gallery facilitates the importing of your products images. You may upload pictures from your local computer, or from external web URLs. Note, that prior to importing images (if it has not already been done), an FTP connection has to be set up and properly configured. Check the following articles, how to upload images from local PC and how to upload images if you have external image URLs for assistance, if necessary.

If the vendor provides a product list in Microsoft Excel format, it can be converted into .CSV format, using Excel, OpenOffice, or an equivalent application, using the 'Save As' option. Specifically, choosing 'File -> Save As', will offer a dialog box that specifies a list of alternative file formats. Among the file extensions offered, 'Text CSV' will be listed among the format choices. Saving the file into .CSV format will export the first active worksheet with correctly specified delimiters.

* To automatically schedule synchronization of your Magento products with those of your supplier, take a look at our Automated Product Import addon.

For information regarding product importation, and other limits in Store Manager for Magento, Click here.

store manager for magento main products tools panel

Import/Export Products

To begin the Magento Import Products process, click the [Import/Export Products] button, which starts the Import/Export Wizard.

Select [Import]', and click [Next >], to continue.

store manager for magento import wizard

Enter the name of the file to be imported, or use the browse [...] button to select it via navigation.

store manager for magento select import file

*Note: You may select [Load Settings], to recall a previously saved configuration.

To import an .xml file, select the Import/Export Wizard, and perform the following steps:

1. Transform the source .xml data, and output a .csv formatted file, by manually linking the XML nodes to CSV columns, or perform automatic conversion by pressing the [Link Automatically] button.

Link XML Nodes

2. Instantiate the .csv file import process

After launching the Import/Export Wizard, the source file preview dialog shows the part of the .csv file that was selected for import. There are no options to set, but you should carefully review the contents of this page.

It is particularly important to verify that the field delimiter(s) and quote character(s), if used, are accurately specified.

Preview csv file

3. The fields delimiter and quote character selection page contains very important settings. If you specify wrong values here, the Magento import may not work correctly, or even not at all.

Fields Delimiters and Additional Setting
  • The Delimiter character specifies the delimiter to be used to separate values (columns) in the .csv file. The most popular delimiters are the comma (,), semicolon (;) and the tab character ( ), although other symbols may be used, as well. The prior sample dialog designated the comma symbol as the delimiter, and values were quoted with the ' symbol. As a suggestion, you may specify your settings as displayed above.

Note: The .csv file contains data in the row -column format, and delimiter characters are used to separate the column values. If an incorrect delimiter is specified, the file will not be parsed properly, and the import of products will not be performed.

  • The Image Gallery delimiter character designates the character that will be used to separate images, during import into the Image Gallery.

  • The Category delimiter character is not a native .csv setting, and it is used only in, and by, the Store Manager application. Categories are organized in a form of a tree, where a 'Parent' category may contain one, or more subcategories, and each sub or Child category may contain one, or more, other categories. Category delimiter character is used to separate category names and specify full category tree path for given category.Please refer to 'Step 1 - category column', for an example. The Category path is very similar to the directory path used to specify a fully qualified file name in Windows, in which the directories are separated by a backslash (\) character, ie... C:\Program Files\eMagicOne\Store Manager for Magento\

A further example of a category path for 'Camping Tents' subcategory is illustrated in the image below, for the 'Default Category|Best Sellers|Camping, Tourism & Outdoor|Camping Tents'. The Pipe (|) character is used as a separator.

Category tree example
  • "Import files" allows you to upload files for downloadable products, via FTP. (Please note that in order to import files you will have to set-up a proper FTP connection).

  • "Local directory with files" indicates the directory on your PC which contains the files that you intend to upload.

  • "Clear Image Gallery". If this checkbox is selected, images for Imported products will be deleted (only the Image's paths).

  • "Delete Images from FTP". If this checkbox is selected, images for the Imported products will actually be erased, after the FTP process is completed.

  • "Import images". Enable this option, in order to upload images to you server, via FTP. Be sure that you have previously specified correct FTP details on the Tools -> Preferences -> FTP tab. The following caveats should be noted:

            • If this option is checked during import, all images selected in the import configuration file will be uploaded to the FTP server, and subsequently imported into your Store database, and stored in the relative path specified by your settings (i.e. image_gallery/images/test.jpg)

            • If this option is selected, but the image(s) indicated is not accessible, the picture(s) will not be uploaded. The file reference designated, and the image record path specified, will be displayed in the image's place, within the database record, e.g. test.jpg

            • If this option is not checked, the images will not be uploaded, but their path and filename will be recorded and displayed within the updated database record, i.e. image_gallery/images/test.jpg

  • Generate new file name and upload as the new image, if an image with the current name already exists. If an image in the .csv file has the same name as an already existing image, it will not replace the existing image, but the image to be copied will be saved under a modified name.

  • "Local directory with images" specifies the folder on the local PC which contains the images to be uploaded. Note that the images' names should be specified in the .csv file, being sure that when the columns containing the images' names are assigned, that the correct column structure is maintained, relative to the target database (see step 7).

  • "Resize rule" allows you to resize the Images during the Import process.

4. Categories Options

At this step, you can notice “Keep current categories associations” option. There sometimes occurs the necessity to update existing products (added previously) and they have the category assigned already.

Although you might need to place these products in other categories without removing them from the one, they are listed in at the moment. In this case, you should check the option - "Keep current categories associations".

Keep current categories associations option

As an example, product with SKU "8001KRG05", in the file to import, is specified only in one category - "Camping Tents", but in the target Store database it has previously been assigned to multiple categories.

Assign to multiple categories

To update the target database, additionally assigning the category "Camping Tents", check "Keep current categories association(s)", which allows to place to new category (indicated in the import file) but do not remove from original categories (it has been placed to formerly) .

File to import should contain the following information about categories:

    • Categories path represented as category names separated by delimiters

Categories path with the categories names specified

Store Manager will place the items after importing based on the specified positions. If some categories are not existing in the store, they will be created by following the sequence indicated in the categories path .

Leave current option un-checked in this case:

Leave the field 'Use ID as category path' un-checked
  • Categories path with categories IDs instead of category names, separated by the pipe delimiters

Categories IDs

In this case, do not forget to check the next field on the Delimiters step of import and the program will identify products category path and allocate them to the correct positions after importing by the specified IDs:

Use ID as categories path

The remaining option, in this step of the import process, "Use ID as category path", allows the assigning of products to a category(ies), specified by the identifier, without providing an indication of the category path.

For detailed information use the following guide:

Assign Products to Categories Having Category IDs in the Import File

5. Select Store View.

Select Store View to Import Products to

6. The next import wizard page includes Base Formats and Separators The fields may already contain default values, which may be changed, if necessary.

Base Formats Step

7. The next step allows the Linking of columns from the .csv file to their relative, database fields.

Assign csv Columns to database fields
  • "Link columns from .csv file to appropriate database fields". The left pane "Database Fields" shows the list of fields in your database that can receive import data.

By default, the topmost option (First row) in the.CSV file contains field names and not values. It should be checked if the first row contains actual data, otherwise be sure that it remains unchecked.

  • "Identify products by". The Magento Import Products Wizard will search for a product using the identification method selected in this field. If the selection does not previously exist, a new product will be added.

Identify products by

The Source .csv file may contain multiple records with identical Name values. These products will be considered as one - currently imported product(s) will overwrite previously imported product(s) that have the same key field values.

Note that sometimes a key field may be blank (contain no User specified value). Blank fields contain the same value for all records. It is required that each key field within all .csv columns contain a validly assigned value .

'Database Fields' displays the list of fields in your database that are eligible to receive import data. It may contain columns (fields) such as:

    • sort order - the order in which fields are listed.

    • fields - values that represent data that can be updated via import within the underlying database

    • CSV col - the number of the column in the .csv file that is linked to this field. It designates the numeric value of the link between the database field and the .csv column.

    • expression - the special formula that allows for the addition of information, or facilitates the changing of existing data, based on the application of one, or more, logical rules, designating what action(s) should be performed on the field values that also may be determined by the evaluation of the expression.

To assign .csv columns to database fields, select a field in the left pane, and click the appropriate column in the right pane.

[Auto link all] button - If this choice is selected, the system will automatically try to determine, and set appropriate relationships between the fields and the underlying database columns.

The Autofill option will work only if the .csv column names are the same as the database field names ("translated").

[Unlink all] button - unlink all "CSV col" values listed in the left pane

Click 'Next', if you're done.

Store Manager requires a specific formatting for product attributes. To view this format, export a few products (with attributes). You may also view an example format below. Please note that Excel can be used to merge attributes, in case they are in separate columns. Please contact your administrator for help, or perform a Google topical search, for additional information.

Also, attributes may be imported from the columns of a .CSV file. This is convenient if you are updating products from a supplier's .CSV file. If you are importing products directly between stores, you can use the default attributes import system, in which product attributes are delimited by rows, rather than columns. You should assign attributes columns with the appropriate attribute set name :

Attribute Set Name Field

Pay attention to the 'Categories Path' field, during this step of the import process. To successfully import products, specify the full category path where the selected items are to be imported.

The path must include the root category, and its sub-categories, the '|' character serves as a directory separator.

Default Category|Best Sellers|Camping, Tourism & Outdoor etc, where the Default Category is the root category in the categories tree:

Category path with category names

If the default (root) category is not specified in your import file, it can be added by executing the following expression:

CONCAT('Default Category|',[CSV_COL(x)])

where COL(x) refers to the column's number in the CSV file that matches the category path:

Expression Editor for Default Category

8. The products, as of this stage of the process, have not yet been imported into your database. On the Import Preview page, you may review how the .csv file will be processed, using the designated product import settings, which were specified in the prior steps.

Check whether all columns that you want to be imported are filled with data. If some of them are blank, it indicates that either you haven't assigned a .csv column, or the corresponding field in the source (.csv) file is empty.

Columns that were not assigned will not be imported, and empty values will overwrite existing data values.

Preview Import
Show Errors Icon

A red blinking arrow will be shown to draw your attention to any errors that may have occurred. If data are assigned correctly, this arrow will be absent at the bottom of the window.

9. Import options page settings may affect the Import results. Please read and carefully verify your selection(s).

Import options step

Set products that are not listed in import file as "Out of Stock" (This is specified in Magento as the 'In Stock' property of a product). All products that were not affected by Magento Import will be marked as unavailable, but will not be deleted.

Cache import data - this option may speed up the import process. Store Manager does a huge number of database operations while importing products. There are many tables affected by the import, and a lot of data is processed. With a slow database connection it may take several hours, or even days, depending on the number of records, and the connection speed. If the cache option is checked, Store Manager will generate a database backup file (the same as you may do, using the Backup/Restore wizard, with the 'Product related tables only' option selected. After the backup is generated, the program restores it onto the local database. All further import operations will be made locally, which is much faster than over a remote connection. After the import is completed, another backup will be generated, of the updated local database, and subsequently, this backup will be restored to your remote Store.

With the 'Cache import data' option selected, the Magento import procedure will show several backup/restore progress dialogs. This is normal behavior.

Note: The Cache import data option is ignored if you are currently connected to the Embedded database.

A special part of this step takes indexation import data. To improve performance online store Store Manager for Magento uses indexing - transform data (products, categories, product details, etc.). As the changes occurring at the store, the details should be transformed or updated (i.e. indexed). This stores’ specificity based on Magento platform, as they have a complex architecture of the database and all their data stored in the respective tables. To optimize current web store, Magento accumulates data in special tables by using indexes.For example, suppose you updated (changed) the prices and quantities of your product list during the import process. Magento must re-index these changes to display them on your web store.

Reindex product data sector

You should note, reindex as usual takes a lot of time and as a result - slows down the process of data transferring.

To avoid this, you can un-check reindex product data on the current step of import wizard and make reindexing after import in the Store Manager - 'Rebuild Catalog Index' in 'Tools' menu or via Admin Panel in System menu -> Index Management .

Un-check reindex product data

Otherwise, the non-indexed data will be invisible or inaccessible at you store's front-end.

You can check the appropriate checkboxes and perform re-index by the program itself or via bridge - make sure you have uploaded bridge file on the FTP server at your store. In other cases the following message will appear:

Upload bridge file on the FTP

If you want to make imports faster - leave these fields unchecked, and after import run re-index process from your Admin panel.

Import Method

Add and Modify - will add new product(s), if it is not already in the database, and modify existing products that are found.

Add Only - will only add NEW products

Modify Only - will only update Existing products, but not add new entries, even if the product(s) do not currently exist in the database.

Just Add - Be Careful, this option may produce product duplicates, since Store Manager will not try to find, or validate existing products, but will add all products, as if they are new!

If you want during the import process to clean up the relations for existing products - you should on this step of import procedure in 'Clean Relations' sector check the necessary products' type checkboxes.

Clear relations box

Save Import Configuration

All import settings can be stored under a re-callable, named configuration. You can load it next time you decide to import products into Magento from a file that contains similar formatting (column names, etc.).

Attention! When the 'Import' button is pressed the process will proceed only if all settings are accurately made, otherwise, press the [Back] button, and verify the settings for correctness!

Also, you may specify that the computer is to shut down after the import process is complete.

10. The last window of the Magento Import Products wizard, will display important information, such as any errors that may have occurred during the import process.

Import result

The most frequently occurring import errors involve date, time and number conversion issues, typically caused by invalid format settings (specified in previous pages), or improperly assigned columns.

Check your work!

If you assign a column containing category ID to a parent_category database field, Date/time conversion errors might be ignored, whereas other errors, such as "Could not find image: image_name.gif" must be fixed!