The Manual Import Problem
Most e-commerce store owners spend hours every week doing the same thing: download the supplier's price list, find what changed, update products in the admin panel. Sometimes it's 50 products. Sometimes it's 5,000.
This is exactly the kind of repetitive task that's worth automating. Once set up, it runs itself.
What You Need to Know First
Before building anything, answer these questions:
- What format does your supplier provide? — CSV, Excel, XML, JSON API, FTP?
- How often does it update? — Daily? Weekly? Real-time?
- What needs to update? — Prices only? Stock levels? New products? Descriptions?
- How do you match products? — SKU? Barcode? Product name?
The answers determine which tool or plugin to use.
Case 1: Supplier Provides a CSV/Excel File
This is the most common case. The supplier emails you a file or you download it from their portal.
Step 1: Choose an Import Plugin
For WooCommerce, install the WP All Import plugin (paid, ~$99/year for the Pro version).
For OpenCart, use the CSV Import Pro extension (paid, ~$30 one-time).
Both let you map columns in your supplier's file to your store fields without any coding.
Step 2: Match Supplier SKUs to Your Products
Inside the plugin, when setting up a new import:
- Tell it to match by SKU (or barcode).
- The plugin will automatically find existing products in your store that have the same SKU. If a SKU doesn’t exist, the plugin can create a new product (or skip it – your choice).
Step 3: Update Prices and Stock
In the same import configuration, map these columns:
- Supplier column "Price" → WooCommerce "Regular Price" (or OpenCart "Price")
- Supplier column "Stock" → WooCommerce "Stock Qty" (or OpenCart "Quantity")
Set the plugin to update existing products only (or create new ones if needed).
Hit "Run Import" – done. The next time you get a new file, just upload it again and the same mapping applies.
Case 2: Supplier Provides an XML Feed
Still a file, but in XML format. The same plugins handle XML too.
- In WP All Import, choose "XML" as the file type. It will show you a tree of fields. Map each one the same way as a CSV.
- For OpenCart, CSV Import Pro can also import XML if you convert it first (most hosting providers can do this with a simple online tool). If not, ask your host for help.
Case 3: Supplier Has an API
This is the cleanest option. You don’t need to download a file – the system pulls data automatically.
For WooCommerce: Use WP All Import’s API import add‑on (included in the Pro version). You enter the supplier’s API URL, set a schedule (like daily at 2am), and the plugin fetches the data automatically.
For OpenCart: There is no out‑of‑the‑box API import extension. You would need a custom script (cost ~$100–$200) to read the supplier’s API and update your database. Many developers can write this in a few hours.
Automating the Schedule
WooCommerce with WP All Import:
Set up a "cron job" inside the plugin – go to WP All Import → Scheduling Options. Enable "Scheduled Importing" and set the frequency (daily, hourly, etc.). No coding needed.
OpenCart:
If you use the CSV Import Pro plugin, it does not include scheduling. You can ask your hosting provider to set up a cron job for you – they can run the import script every night. Most shared hosting plans allow this for free.
If your supplier has an API and you use WordPress, WP All Import’s scheduling handles it automatically.
Handling Errors and Edge Cases
Even with a plugin, watch out for these common issues:
- Encoding problems – If your supplier’s CSV shows garbled text, try saving the file as "UTF‑8" in Excel before uploading.
- Price format – European numbers like "1.234,56" will break the import. Ask your supplier to use a standard decimal point, or use a free online tool to convert the file.
- Missing products – Set the plugin to "Create new products for unmatched SKUs" or "Skip and log", depending on what you prefer.
- Stock going to zero – Decide: hide the product (set status to "draft") or keep it visible as "out of stock". Most plugins have a checkbox for this.
- Import failures – WP All Import emails you error logs. Check the log to fix the file and re‑run. For custom scripts, a developer can add automatic alerts.
What This Usually Costs
If you do it yourself with a plugin:
- WooCommerce (WP All Import Pro) – about $99/year
- OpenCart (CSV Import Pro) – about $30 one‑time
If you need someone to set it up for you (including an API connection or custom scheduling), most freelancers charge $150–$500 depending on complexity.
If you tried the steps above and it’s still not working (or you’d rather not handle the plugin setup yourself), that’s when we can help. One of our developers can get your supplier imports running – usually within a day.