As you know, PrestaShop It's a very effective eCommerce tool for increasing sales, and very efficient to use. However, when we manage a extensive catalogUploading each item manually from the back office can become a tedious, slow, and error-prone task.
To solve this problem, PrestaShop offers a powerful solution: the massive import of products using a CSV file. This tool allows you to quickly manage large volumes of information, optimizing the administration time of your online store. Whether you're migrating from another platform or launching a business from scratch, mastering the import process is essential to ensure your product sheets be complete, SEO optimized and user-friendly.
What is a CSV file and why is it the best option for PrestaShop?
Before getting into the technical guide, it is vital to understand what a CSV file (Comma Separated Values). This is a file format that stores data in plane textwhere each line represents a record (in our case, a product) and the columns are delimited by a separator, usually a comma or a semicolon.
Unlike an Excel .xlsx file, a CSV file is extremely light and it boasts universal compatibility, making it the ideal standard for transferring data between different software platforms. Its main advantages are:
- ease of editingIt can be opened and modified in common tools such as Microsoft Excel, Google Sheets o LibreOffice Calc.
- Simple structureBy relying on delimited rows and columns, it avoids the complexity of binary spreadsheet formats.
- Loading efficiency: Allows the PrestaShop server to process thousands of lines of data without needing to load a heavy graphical interface for each product.
To visualize this better, imagine that the first line of the file contains the headers (such as ID, Name, Price) and each subsequent line is a different product. For example: ID, Nombre, Precio, Cantidad
1, Camiseta Roja, 10.00, 100
2, Zapatos Deportivos, 50.00, 50
Essential tips before starting the import
To avoid common mistakes that could force you to repeat the process or, worse, accidentally delete data, follow these strategic recommendations:
- Category creationIt is highly recommended to create the necessary categories in the back office before starting Importing. While PrestaShop can automatically create categories if it doesn't find them, these will be created at the main level without hierarchy, forcing you to manually reorganize them later.
- Use of the official templateAlways download a example CSV file before filling out yours. The organizational structure may vary depending on the version. To see this, go to Advanced Parameters / Import and click on the link to download the sample products file.
- save format: Make sure to save the file strictly in .CSV formatIf you save it as a standard Excel workbook, the importer will not recognize it.
- Image optimizationIt is recommended that each image weigh more than 500 kb and have dimensions greater than 70cm x 70cm to ensure visual quality. Additionally, file names must be exact. no spaces and in format .jpg or .png.
- Controlled trials: Don't try to upload 5,000 products at once the first time. Try introducing a single product to verify that the column mapping is correct and correct any formatting errors.
- BackupAlways perform a full backup of your database before performing a bulk import, especially if you are going to use the option to delete existing products.

Detailed guide to filling out the CSV product template
How to open and manage a CSV file
To edit the template, we will use a spreadsheet program. If you use Microsoft ExcelWhen you open the .CSV file, the program will likely display several warning messages about the data format. To prevent Excel from altering the structure, respond as follows:
- To the first message, press "Yes".
- To the second message, press "No".
- To the last message, select "To accept".
If you use LibreOffice Calc o Google SheetsThe opening process is more straightforward, but always remember to verify that the field separator is consistent with what you will configure later in PrestaShop.
Comprehensive analysis of the CSV columns
The PrestaShop template contains numerous columns. It is not necessary to fill them all; only those that are relevant. obligatory (marked with an asterisk in the official template) or that add value to your sales and SEO strategy. Below, we detail each one:
- Column A (ID)This is the product's unique identification number. If you leave this column emptyPrestaShop will generate the ID automatically. Use this only if you want to force a specific ID or if you are updating existing products.
- Column B (Asset)Control visibility. Use 1 for YES (visible) and 0 for NO (hidden).
- Column C (Product Name): Required field. From the point of view of SEOThis name generally becomes the label
<title>of the page, so it should be descriptive and contain the main keyword. - Column D (Categories)Define where the product will appear. You can use the category name or on ID (recommended to avoid errors). If the product belongs to several categories, separate them with a single comma (no spacesThe first category listed will be the main category.
- Column E (Price excluding VAT): Indicates the net price of the item.
- Column F (Tax Rule): Here you enter the Tax rule ID defined in Location > Rate Rules.
- Column G (Wholesale Price)Optional column for setting the product cost or wholesale price. This is useful for the system to calculate the profit margins in internal reports.
- Column H (On sale): Indicates if the product has an active discount (0 = NO; 1 = YES).
- Column I (Discount Value): Exact amount of the discount in the store's currency.
- Column J (Discount Percentage): Percentage that will be applied to the original price.
- Columns K and L (Discount Dates)They establish the validity period of the promotion. You must use the format AAAA-MM-DDIf there is no date, leave them blank.
- Column M (Reference)Internal reference code. It is an identifier independent of the PrestaShop ID and very useful for warehouse management.
- Column N (Supplier Reference): Specific code assigned to the product by the manufacturer or supplier.
- Columns O and P (Supplier and Manufacturer)They are filled with the Supplier ID and the Manufacturer IDIf the name does not exist, the system will be able to create a new one.
- Column Q (EAN-13): Standard 13-digit barcode. It is crucial for Google Shopping and other marketplaces.
- Column R (UPC): Barcode used primarily in North America (12 digits).
- Column S (Ecological Rate)Additional taxes due to environmental impact (such as the ecotax in some regions). This can be left blank.
- T, U, V and W columns (Dimensions and Weight)They indicate the Width (T), Height (U), Depth (V) and Weight (W)It is essential to always use the same unit of measurement (e.g., centimeters and kilograms), as this data is essential for the carriers calculate shipping costs automatically.
- Column X (Quantity/Stock): Number of units available. It is a required column to manage availability.
- Column Y (Minimum quantity): Minimum number of units a customer must purchase (e.g., bottles of wine sold in packs of 3). The default is 1.
- Column Z: It is usually left empty by default.
- Column AA (Additional shipping cost): Extra charge for bulky or delicate products.
- Column AB (Content Unit): Unit name (e.g. piece, bottle, liter).
- AC Column (Price per unit): Unit price if the product is sold as a set.
- Column AD (Short description)Quick product summary. Allows the use of HTML tags to format (bold, lists).
- Column AE (Extended Description)Full details of the item. This field is vital for the SEO and user conversion. It also supports HTML.
- AF Column (Tags): Comma-separated keywords to improve internal search and taxonomy.
- AG, AH and AI columns (Metadata): Meta-title (AG), Meta-keywords (AH) and Meta-description (AI)The meta description is what appears in Google and should be persuasive to improve the CTRNote: Google no longer gives weight to meta-keywords (AH).
- Column AJ (simplified URL): The URL slugPrestaShop generates it automatically based on the name, but you can customize it to optimize SEO.
- Column AK (Text available): Message that the customer sees when there is stock.
- Column AL (Text requested on hold)Message for products that are out of stock but allow orders.
- AM Column (Available upon request): Indicates whether the product can be purchased even if it is out of stock (0 = NO; 1 = YES).
- Columns AN and AO (Dates)Availability date and creation date.
- AP Column (Show price): Check if the price is visible on the listing (1 = YES; 0 = NO).
- Column AQ (Images)Image URLs. You can include several separated by commas. The first will be the main image. The recommended format is
./upload/imagen.jpgif you upload the photos by FTP to a folder on the server. - AR Column (Remove Images): Indicates whether previous images should be deleted before uploading new ones (0 = NO; 1 = YES).
- AS Column (Characteristics)Specific attributes (e.g., Color: Red, Size: XL). They are separated by commas and require a complex format (Name:Value:Position).
- AT Column (Online Only): Indicates if the product is exclusive to the website (1 = YES).
- AU Column (Condition)Product condition: "new" (new), "used" (used) or refurbished (reconditioned).
- AV Column (Customizable)If it is 1, a text box will appear for the customer to add custom notes.
- Column AW (Attachments): Allows you to upload files related to the product (PDF manuals, etc.).
- Column AX (Text Fields): Enables the option for the customer to write comments on the record.
- Column AY (Allow out-of-stock orders)Similar to the AM column, it activates pre-sale or made-to-order sales.
- Column AZ (Store/Brand)Used in facilities of multi-store to assign the product to a specific establishment.

Template saving and upload process
How to save the file correctly
Once you have entered the information in Excel or LibreOffice, it is critical to save the file in the correct format. When you click the save icon, Excel may issue warnings about the loss of some formatting features. To maintain the integrity of the CSV standard, answer back "Yes" to the first message and "No" The second one. The file should have the extension. .csv.
Steps for importing in the Backoffice
With the file ready on your computer, we proceed to the bulk upload in PrestaShop:
- Access the administration panel and go to the section of Advanced Parameters and click Import.
- In the dropdown "What do you want to import?", select the option Products.
- Upload the .CSV file from your computer using the file selection button.
- File configurationHere you should pay special attention to the following points:
- File language: Select the language in which the catalog is written (e.g., Spanish).
- ISO 8859-1 Coding: Mark "Yes" If your catalog contains special characters such as the "not" or accented letters, to avoid the appearance of strange symbols.
- Field separator: Indicates the character used to separate columns. The most common is the semicolon (;) and eat (,)Make sure it matches your file separator exactly.
- Multi-value separatorsUsed for fields such as categories. It is usually a eat (,) or a vertical bar (|).
- Remove all products before importing: Extreme cautionIf you select "Yes," the catalog will be completely emptied. Only enable this option if it's a new store or you want to clear your inventory.
- Use the reference as a keyIf you enable this option, PrestaShop will use the product reference as the unique identifier instead of the ID.
- Skip thumbnail regenerationIf you select this option, the import process will be faster because the system won't automatically create the different image sizes. Enabling this option is not recommended if you want to optimize website performance.
- Force all ID numbersMark "Yes" if you want PrestaShop to exactly respect the IDs in your CSV file (useful for updates). If they are new products, leave it blank. "No".
- Click on Next step.
Field mapping and process completion
After the initial setup, you will enter the screen of field mappingThis is where you tell the system which column in your CSV corresponds to each field in the PrestaShop product details. For example, you should assign column "C" to the field "Number" and column "X" to the field "Amount".
If your CSV file has a row of headers (the column names), in the field "Lines to jump" you must indicate 1Otherwise, PrestaShop will try to import the word "Name" as if it were a product name, generating an error.
Once the mapping is complete, click on Import CSV dataDepending on the volume of products and the number of images, this process may take several minutes. You may experience a Timeout (the browser indicates that the page is not responding), but don't worry: the process usually continues running in the background on the server.

Solving common import problems
Despite following the steps, sometimes the import process can fail. These are the most frequent causes and their solutions:
- Separator ErrorThe most common error occurs when the file uses commas but the PrestaShop configuration specifies semicolons. Check the separator opening the file with a simple text editor (like Notepad).
- Large images or incorrect pathsIf the images are not appearing, check that the URL is correct and that the file is not too large. If you uploaded the images via FTP, make sure that the folder permissions allow the system to be read.
- Non-existent categoriesAlthough PrestaShop can create them, they sometimes fail if there are strange characters. Make sure the main categories already exist.
- Incorrect file format: Confirms that the file is indeed a CSV and not a manually renamed Excel file (.xlsx).
- ID conflictsIf you try to import a product with an ID that already exists and you haven't enabled ID forcing, the system might give an error or duplicate the product.
Bulk importing is a powerful tool that, while it may seem complex at first, offers a huge competitive advantage in terms of organization and scalability. By automating the uploading of your catalog, you not only save hours of manual work, but you also establish a clean and structured database that will allow you to expand your business globally and reach more customers with optimized and professional product listings.