Magento import products with images

csv, import, magento

Solution

I ftp'd the images into media/import and then in the actual CSV file, the image was /image.jpg.

Here is an example of my working import CSV file. I wrote a php script to hash the database which fed our then catalog and assemble the below output. It did take lots of trial and error to get it working. Do a `mysqldump` before you try importing so you can blow away mistakes with restores.

"sku"|"price"|"special_price"|"brand"|"weight"|"cost"|"name"|"section"|"description"|"short_description"|"make"|"fitment"|"product_name"|"store"|"websites"|"attribute_set"|"type"|"has_options"|"gift_message_available"|"custom_design"|"options_container"|"image_label"|"small_image_label"|"thumbnail_label"|"page_layout"|"meta_keyword"|"custom_layout_update"|"manufacturer"|"color"|"status"|"tax_class_id"|"visibility"|"enable_googlecheckout"|"is_recurring"|"is_imported"|"special_to_date"|"custom_design_from"|"custom_design_to"|"news_from_date"|"news_to_date"|"qty"|"min_qty"|"use_config_min_qty"|"is_qty_decimal"|"backorders"|"use_config_backorders"|"min_sale_qty"|"use_config_min_sale_qty"|"max_sale_qty"|"use_config_max_sale_qty"|"is_in_stock"|"low_stock_date"|"notify_stock_qty"|"use_config_notify_stock_qty"|"manage_stock"|"use_config_manage_stock"|"stock_status_changed_automatically"|"use_config_qty_increments"|"qty_increments"|"use_config_enable_qty_increments"|"enable_qty_increments"|"store_id"|"product_type_id"|"product_status_changed"|"product_changed_websites"|"material"|"category_ids"|"image"|"small_image"|"thumbnail"
"TEE BLACK LONG LG"|"28.41"|"25.00"|""|"0.60"|"12.15"|"Ca Cycleworks Lg black cotton longsleeve logo t-shirt Cycleworks Brand Gear!!"|""|"Ca Cycleworks Lg black cotton longsleeve logo t-shirt Cycleworks Brand Gear!! for Ducati Everyone"|" Ducati Everyone"|""|""|"Ca Cycleworks Lg black cotton longsleeve logo t-shirt Cycleworks Brand Gear!!"|"admin"|"base"|"Other Accessories"|"simple"|"0"|"Use config"|""|"Block after Info Column"|""|""|""|"No layout updates"|""|""|""|""|"Enabled"|"None"|"Catalog, Search"|"Yes"|"No"|"Yes"|""|""|""|""|""|"1.0000"|"0.0000"|"1"|"0"|"0"|"1"|"1.0000"|"1"|"0.0000"|"1"|"1"|""|""|"1"|"0"|"1"|"0"|"1"|"0.0000"|"1"|"0"|"0"|"simple"|""|""|""|"36"|"/tee.jpg"|"/tee_sm.jpg"|"/tee_th.jpg"
"LANYARD"|"2.27"|"2.00"|""|"0.05"|"1.05"|"Ca Cycleworks Cycleworks lanyard Cycleworks Brand Gear!!"|""|"Ca Cycleworks Cycleworks lanyard Cycleworks Brand Gear!! for Ducati Everyone"|" Ducati Everyone"|""|""|"Ca Cycleworks Cycleworks lanyard Cycleworks Brand Gear!!"|"admin"|"base"|"Other Accessories"|"simple"|"0"|"Use config"|""|"Block after Info Column"|""|""|""|"No layout updates"|""|""|""|""|"Enabled"|"None"|"Catalog, Search"|"Yes"|"No"|"Yes"|""|""|""|""|""|"1.0000"|"0.0000"|"1"|"0"|"0"|"1"|"1.0000"|"1"|"0.0000"|"1"|"1"|""|""|"1"|"0"|"1"|"0"|"1"|"0.0000"|"1"|"0"|"0"|"simple"|""|""|""|"36"|"/"|"/_sm"|"/_th"
"PVC TAPE"|"13.64"|"12.00"|""|"0.50"|"1.05"|"Ca Cycleworks White pvc duck tape - all 4 panes - 2in x 110yds Cycleworks Brand Gear!!"|""|"Ca Cycleworks White pvc duck tape - all 4 panes - 2in x 110yds Cycleworks Brand Gear!! for Ducati Everyone"|" Ducati Everyone"|""|""|"Ca Cycleworks White pvc duck tape - all 4 panes - 2in x 110yds Cycleworks Brand Gear!!"|"admin"|"base"|"Other Accessories"|"simple"|"0"|"Use config"|""|"Block after Info Column"|""|""|""|"No layout updates"|""|""|""|""|"Enabled"|"None"|"Catalog, Search"|"Yes"|"No"|"Yes"|""|""|""|""|""|"1.0000"|"0.0000"|"1"|"0"|"0"|"1"|"1.0000"|"1"|"0.0000"|"1"|"1"|""|""|"1"|"0"|"1"|"0"|"1"|"0.0000"|"1"|"0"|"0"|"simple"|""|""|""|"36"|"/ductape.jpg"|"/ductape_sm.jpg"|"/ductape_th.jpg"

Problem

I have tried all afternoon to import some products in Magento, but all without any success. After trial and errors it all came down an "Image does not exist" error. I have read a few posts about it, most of them outdated, but then a recent one talks about putting everything in `/media/import` and having all files named like `/image.png` in the CSV file. It does not work and I still get the same error. I'm using Magento 1.6.2 and I have tried putting the files in ``` /var/import/image.png /var/import/i/m/image.png /media/import/image.png /media/import/i/m/image.png /media/catalog/product/i/m/image.png ``` I have tried to name the file in the CSV as ``` /image.png /1/m/image.png /media/import/image.png /media/import/i/m/image.png ``` ...and a bunch of combination of them all (not exactly sure which ones as I used a random approach at first, trying what the forums suggested, but without any luck). I have tried to located the piece of PHP code where the image file is checked, but failed... again. So, what folder does the importer looks for the file anyway? What is the way of doing this? There are a lot of people with the same problem and it does not seem to be any official solution for this. Any help appreciated.

Original source