A product import is only useful if running it twice gives you the same catalog, rather than twice as many products. Before uploading a CSV to OpenCart, define how a row identifies a product and which fields that file is allowed to change. That decision matters more than the size of the spreadsheet.
This guide covers a repeatable product-update workflow using Import Export PRO. Its column mapping and import profiles help adapt supplier files to your store. The exact fields and operations available depend on your installed version and profile; export a sample from that installation before building your file.
Choose one stable matching key
Do not use a product name as an identifier. Names change, translations differ and two products can share the same title. Choose a key that remains stable, such as an existing store identifier or a unique supplier SKU mapped to your own catalog. Confirm which identifiers your import profile actually supports.
A SKU is not automatically unique just because a column is called SKU. Check the source file and the existing store for duplicates. If two suppliers both sell an item called 1001, keep an explicit mapping or use supplier-specific identifiers that your process can resolve consistently.
| Illustrative row | Matching key | Expected result |
|---|---|---|
| Existing blue shirt | SHIRT-BLUE | Update the existing product |
| Same shirt with a new title | SHIRT-BLUE | Keep the product identity |
| New red shirt | SHIRT-RED | Create only if the profile permits new products |
Build a small file before a large one
Export a few representative products first. Include one simple product, one with options and one with multiple categories. Keep the export as a reference for field names and supported formats. Do not treat the example below as a ready-made extension template; map these illustrative headings to the fields in your own profile.
supplier_sku,name,price,quantity
SHIRT-BLUE,Blue cotton shirt,24.90,18
SHIRT-RED,Red cotton shirt,24.90,0Save the file with the encoding and delimiter selected in the importer. Inspect it in a plain-text editor as well as a spreadsheet. Spreadsheet applications can remove leading zeroes, reformat long identifiers and interpret product codes as dates. Quoting is also important when a description contains the delimiter.
Separate product creation from routine updates
Use different profiles for initial product creation and daily stock updates. A stock file should not unexpectedly replace carefully edited descriptions, category assignments or SEO URLs. List the fields owned by each process: for example, the supplier controls availability, while the merchandising team controls descriptions and images.
Decide how the profile handles blank cells. An empty value may mean “clear this field,” “leave it unchanged” or “invalid input,” depending on the field and configuration. Test that behavior explicitly rather than assuming every empty cell will be ignored. A missing product row also needs a separate policy; absence from a file is not proof that a product has been discontinued.
Run a repeatability test on staging
- Record the product count and export the target products before importing.
- Import a small sample containing an existing item, a new item, zero stock and a title change.
- Check identifiers, prices, stock, categories, images and options in both administration and storefront.
- Import the identical file again. Existing items should keep their identity and the product count should not increase unexpectedly.
- Change one value and confirm that only the intended product and fields change.
Also try a duplicate key, an invalid price and a missing required value. A safe process should produce a clear, reviewable outcome. Keep the report and your original export until the results have been reconciled. Do not use an automatic recovery feature as a substitute for a tested backup and restore procedure.
Check the storefront, not just the import report
A successful upload does not prove that shoppers see the right information. Open several products, choose their options, add them to a test cart and compare the displayed totals with the intended values. Check each store and language affected by the profile.
After imports that change prices or stock, review any scheduled advertising feeds too. A clean store database can still be followed by a stale external catalog. Our product-feed identifier guide explains the identity checks, while the supplier synchronization checklist covers repeated updates.
When should you automate the import?
Automate after the sample and repeatability tests pass and someone owns the failure process. Keep a named profile, a known file source and a record of what changed. If the source format changes, stop and revalidate it before the next production run. An automated import should make a proven process easier to repeat, rather than make an uncertain process run more often.
