What’s newCard-testing protection now guards every store, Free included. See checkout

Admin panels › Product details

Product Importer

Bring a store across from WooCommerce or Square, with ten products to try first, a report and a one-click undo, or a catalog from a CSV file with a preview before anything is written. 8 parts.

Quick links

Where to find it:WP Admin › EasyCart › Products › Import

Another store

WooCommerce and Square

Where the products are now, what comes across, a trial of ten, and the report.

Where your products are now

One screen for every way a catalog comes in

no stored settings

Products › Import brings a catalog across from another store. Nothing changes until you start an import, and everything on this screen is in the free plugin. It asks one question, Where are your products now?, with a card for each place it can read:

WooCommerce: products, variations, categories, brands and reviews from WooCommerce on this WordPress site. It reads WooCommerce’s own tables, so WooCommerce can still be active or already switched off.
Square: items, variations, modifiers, categories and stock from your Square account. Connect Square on the card connects it for the import; your payment settings stay as they are.
A CSV file: a spreadsheet of products in the WP EasyCart format. Open the CSV importer opens the import panel on the products list, described below.
Shopify, Etsy, Wix or Squarespace: marked Coming next. Until then, export a CSV from that store and match its columns to the WP EasyCart format.

Each card says what it found, such as the number of products, categories and reviews, and Check again looks again. The products list reaches the same places from its Import menu: From a CSV file and From WooCommerce or Square.

One import runs at a time. If the WP EasyCart database update has not finished, the screen asks you to finish it on Store Status first.

Products › Import: a card for WooCommerce, Square, a CSV file and the importers coming next.
Products › Import: a card for WooCommerce, Square, a CSV file and the importers coming next.

💡 Note: Moving from WooCommerce? The step by step guide is How to Move to WP EasyCart from WooCommerce.

Choose what comes across

What was found, what to bring, and the choices for WooCommerce

no stored settings

Start opens four steps: Choose, Try 10, Import and Report. What we found lists what is worth knowing first: whether both stores sell in the same currency ( prices are copied as they are ), WooCommerce prices that include tax, weight units that differ, grouped and external products, bundles and other extension types ( imported as simple products ), products that use Product Add-Ons ( add-ons do not come across: add them again as modifiers ), WooCommerce subscriptions ( they do not come across ) and products imported before.

What should come across? ticks Products, with their variations, categories, images and stock, and Reviews, with the reviewer, rating and verified buyer mark. Customers, orders and coupons are listed as Coming in the next update.

Options for WooCommerce:
Products already in your store, one imported before or with the same SKU: Leave them as they are or Update them from WooCommerce.
Drafts, private and hidden products: Bring them in switched off or Leave drafts out. Published products that are visible in the catalog come across switched on.
Product tags: leave them out, or make them categories.
Brands: make them manufacturers, or leave them out. A product without a brand gets your store’s first manufacturer.
Grouped products: make each group a category, or leave the groups out. The products in a group always come across.
External products: import them with a button to that site, or leave them out.
Weights, when the two stores use different units: convert them, or keep the numbers.
Send old WooCommerce addresses to the new pages: on, so links and search results that point at your WooCommerce products and categories keep working.

The Choose step for WooCommerce: what was found, what comes across and the options.
The Choose step for WooCommerce: what was found, what comes across and the options.

Importing from Square

Connection, stock and the items it leaves out

no stored settings

The Square card needs Square connected with a location. Until then it offers Connect Square, and a store that is connected without a location is told to choose one under Settings › Payments › Square. Importing never changes how your store takes payments: when Square takes your card payments, web sales are sent to Square so its stock counts stay right.

Square’s options are Products already in your store ( items imported from Square before ): Update them from Square or Leave them as they are; Stock: Copy Square’s stock counts or Leave stock as it is; and Services, events and donations: Leave them out or Bring them in too. If Square has not given your store permission to read stock, the card says so: connect Square again, and items still come across without their counts.

Kitchen categories are left out, and so are items not sold at your Square location. An item whose price is set at the register comes in at 0 for you to price. With WP EasyCart PRO and its hourly Square sync on, the imported products are kept in step with Square every hour.

Try ten, then import

A trial you can take back, then the whole catalog

no stored settings

Try 10 products first imports ten products so you can open them and check them. They are in your store from that moment, listed with a link to each. Looks good: import everything carries on with the same choices. Remove these and change the options takes the ten out and goes back to the choices. Import everything now skips the trial.

While it runs, a bar for each part, such as categories, products and reviews, counts what has come across, with Imported, Updated, Skipped and Failed beneath. Nothing is emailed, charged or taken from stock while products come in. You can close the page: the import keeps going and picks up where it stopped. Pause, Resume and Stop sit beside the bars; what came across before a stop stays, and you can remove it from the report. If the source stops answering, the import pauses with the reason, and Resume carries on.

💡 Note: Try ten first. The trial is a real import of ten products, so open them on the store and in the editor before you bring in the rest, and take them back with one click if a choice needs changing.

The report, undo and old addresses

What came across, taking it back, and keeping links working

no stored settings

Your import is done counts the products imported, updated and skipped, the categories, the reviews and the notes. Notes and problems lists every item worth a look, such as a sale scheduled for later that was not kept, a SKU another product already used, a sixth variation choice that was left out, or a product with no price; Everything lists every item, each linked to its new page in your admin. Download the report ( CSV ) saves it.

Remove everything this import added takes out what that import made: its products, with their option sets, and its categories, manufacturers and reviews. Products that were already in your store, or that a later import updated, stay. Earlier imports, on the first screen, lists each import with its Report and Remove.

After a WooCommerce import, Old WooCommerce addresses go to the new pages sends a visitor or search engine asking for an old product or product category address to its new page with a permanent redirect, also once WooCommerce is switched off. Download the redirects ( CSV ) is there if you would rather keep them in Redirection, Yoast or Rank Math. Before you switch over lists what to check: a few products’ prices, choices and pictures, a test order, and for WooCommerce, switching it off when you are ready.

⚠️ Careful: Remove takes out what that import made even after you have edited it, so a product you have since priced or described goes too. Check the report before you remove an import you have worked on.

A spreadsheet

The CSV importer

What the CSV importer reads, what it shows you first, and the rule that decides add or update.

A CSV file and its columns

What the CSV importer reads, and what it refuses

no stored settings

The CSV importer is a panel on the products list: Import › From a CSV file, or Open the CSV importer on Products › Import, opens Import & export products. Drop a CSV on it or choose a file; the first row must be the column names, and the server’s upload limit is shown.

The most reliable way to build a file is to export your products first and edit that, because the export already has the exact column names. The Help tab offers a Download sample with the header row and one example product. Column names must match exactly, in lower case with underscores. product_id and model_number are required; every other column is optional, but a column that is present is written to every row.

The file is checked before anything happens. A column with no header, a column that appears twice, or a name that is not a product field stops the import, with a suggestion where the name is close, such as did you mean title?

The Import tab: drop a CSV, and the three rules the importer follows.
The Import tab: drop a CSV, and the three rules the importer follows.

💡 Note: Export from Products first and edit that file. For a step by step walkthrough, see How to Import Products from a CSV.

The CSV preview

What will happen, before it happens

no stored settings

Nothing is written until you have seen the preview. It reports the rows read and the columns recognized, then counts the new products, the updates, the problem rows and any rows ignored, with the first rows shown so you can check the data landed where you expected.

Rows that will be skipped lists each problem row with its reason: a product_id that is not a number or does not exist, an empty model_number, a model_number used by an earlier row, a model_number that already exists in the store, or a row with the wrong number of cells. Problems that stop the whole import are listed separately under Fix these before importing.

The importer stops at the first blank line, or the first row without a model_number, and the preview warns you when that would leave rows behind. Punctuation in a model_number other than dashes, underscores and slashes is stripped, and the preview says how many will change.

The preview of a sample file: new products, updates and the rows that will be skipped.
The preview of a sample file: new products, updates and the rows that will be skipped.

💡 Note: Stock can be imported separately from Inventory Report, which previews in the same way and writes every change into the stock history.

Adding against updating

The one rule to get right in a CSV

no stored settings

The product_id column decides what each row does. 0 adds a new product, whose model_number must be new to the store and unique in the file. An exported product_id updates that product, and every column in the file is written, so start from an export to keep the values you are not changing.

A file with no product_id column is refused, and a model_number that already exists is skipped rather than duplicated, so check the count of new against updated rows before you confirm. If you meant to update and the preview says new, the IDs have been lost.

Big files import in chunks of 100 rows, so keep the window open until it finishes. Rows that could not be written are listed at the end, and new products are published or private according to their activate_in_store value. A new product keeps the formatting in its description and specifications, gets its own product page, and keeps the pickup locations in the file. Products an earlier import linked to the wrong page, such as a menu item, a page or an image, are found by Diagnostics, which links each back to its own product page.

The Help tab: the sample file, the importer guide and the rules for each column.
The Help tab: the sample file, the importer guide and the rules for each column.

⚠️ Careful: Read the new against updated counts before importing. Every column present in the file is written, so a column of blanks clears that field on every product the file updates.

Keep going

Related panels

Products

Exporting the catalog to build an import file.

Inventory Report

Importing stock levels, which works the same way.

Basics

The product fields an import fills in.

Categories

Categories, imported as category ids.

Options & Variants

The option sets and variations an import makes.

Store Status

Finishing the database update an import needs.

Ready to run your store on WP EasyCart?

Everything in this guide works with the free plugin. PRO and Premium add subscriptions, memberships, wholesale pricing and more. Try every PRO feature free for 14 days.

The WP EasyCart admin: orders and offers
Updated on October 12, 2026