How to Import and Export Orders in a WooCommerce Store?
Order data is the one part of a WooCommerce store you cannot afford to lose or retype. Whether you are moving to a new site, handing a monthly order file to your accountant, feeding a fulfillment system, or fixing a few hundred order statuses at once, WooCommerce gives you no clean way to get orders out or bring them back in. The built-in exporter handles products only, and the order screen offers nothing beyond a filtered list you can scroll through.
The Order Import Export for WooCommerce plugin by WebToffee fills that gap. It lets you export WooCommerce orders to a CSV file with filters, column mapping, and line items laid out the way you want, then import that file back into the same store or a different one. The free version handles order import and export via CSV files alongside basic column mapping and export filtering. The Pro version adds more file formats like XML and Excel, FTP/SFTP transfers, scheduled jobs, and custom order meta.
This guide walks through the full export and import workflow for WooCommerce orders using the free version of the plugin.
Why Import and Export Orders in WooCommerce?
Before the steps, it helps to know what this workflow actually solves. These are the situations where store owners reach for it most often:
➔ Store migration without losing history. Moving to a new domain or a fresh WooCommerce install? Export orders from the old store and import them into the new one so customers keep their order history and you keep your records.
➔ Bulk order updates. Need to change the status of 300 orders, correct a payment method, or fix shipping totals? Export, edit the file in a spreadsheet, and import it back with the update option turned on.
➔ Accounting and reporting. A CSV of orders with line items split into separate rows drops straight into Excel, Google Sheets, or your accounting software. No copy-paste from the order screen.
➔ Fulfilment and shipping handoffs. Warehouses and 3PL providers usually want a flat order file on a schedule. Export the orders they need, filtered by status or date, and share the file.
➔ Backups you can actually restore. A database backup protects the whole site. An order export gives you a readable copy of just the orders, which is far easier to inspect or restore selectively.
How to Export WooCommerce Orders
Let’s start with getting orders out. The export runs through a five-step wizard. If you only need a full dump of all orders, you can finish at step two. If you need filters or a custom column layout, carry on to the end.
Step 1: Install and Activate the Plugin
Begin with the free plugin from the WordPress repository.
- Go to Plugins > Add New Plugin from your WordPress dashboard.
- Search for “Order Export & Order Import for WooCommerce” by WebToffee.
- Click Install Now, then Activate.
Step 2: Select Order as the Post Type
Head to the export section and tell the plugin what you want to export.
- Navigate to WebToffee Import Export (Basic) > Export from the sidebar.
- Under Select a post type, click Order.
- Click Step 2: Select an export method to continue.
Step 3: Choose an Export Method
The plugin gives you three ways to export:
- Quick export – exports the standard order fields straight away. Click Export, and you are done.
- Advanced export – walks you through filtering, column selection, and file options. Choose this when you need a targeted export.
The template option only lists templates you have already saved, so on your first run, choose Advanced export and click Step 3: Filter data.
Step 4: Filter the Orders You Want
This is where you narrow the export down. You do not have to export every order every time.
You can filter orders by status, product, customer, coupon, date range, or a combination of these.
For example, to export completed orders from a specific customer, simply select the Completed status and the customer name before exporting.
Click Step 4: Map and reorder export columns when your filters are set.
Step 5: Map and Reorder Export Columns
Here you decide which fields land in the file and what the headers say.
- Untick any column you do not need.
- Click a column name to rename the header in the exported file.
- Drag columns to change their order.
- Click Step 5: Advanced options/Batch export to continue.
Note: Columns are automatically mapped when the input file contains matching header names. You can review the mapped columns using the corresponding drop-down menus.
Step 6: Configure Advanced Order Export Options
This final step controls how the file is built and where it goes.
- Exclude already exported: choose Yes to skip orders exported in earlier runs. Handy for recurring fulfillment files.
- Exclude line items: keep this at No unless you only want order-level totals.
- Export line items in: choose Migration mode if you plan to import the file back into WooCommerce. Choose Separate columns or Separate rows for a spreadsheet you will read or share.
- Export file name: give the file a meaningful name
- Set the batch count. Default is set to 30.
- Delimiter: comma by default. Change it only if your spreadsheet software expects something else.
- Click Save template if you want to reuse these settings, then click Export.
How to Import WooCommerce Orders
Now let’s bring orders in. This uses the same plugin, just from the Import menu.
If you are building the file from scratch rather than from an export, download the sample order CSV linked in the import documentation and match its column headers. That alone avoids most mapping problems.
Step 1: Select Order as the Post Type
From your WordPress admin sidebar:
- Go to WebToffee Import Export (Basic) > Import.
- Under Select a post type, click Order.
- Click Step 2: Select an import method to proceed.
Step 2: Choose an Import Method and Upload Your File
The import methods mirror the export ones:
- Quick import is for files exported by this same plugin. Upload and click Import.
- Pre-saved template applies column mapping you saved in an earlier advanced import.
- Advanced import lets you map columns manually and set update rules. Use this for files from another platform or a spreadsheet you edited.’
For this, let’s proceed with advanced import.
- Drag and drop or upload the exported file.
- Confirm the Delimiter matches your file. Comma is the default.
- Click Step 3: Map import columns.
Step 3: Map the Import Columns
This step links the columns in your file to WooCommerce order fields.
- The plugin auto-matches any column whose header matches a WooCommerce field name.
- For unmatched fields, click the empty box and pick the right column from your file.
- Leave Order ID unmapped if you want WordPress to assign new IDs. Map it if you are migrating and want to keep the originals.
- Click Step 4: Advanced options/Batch import when the mapping looks right.
Next to each field is a pencil icon that opens the Evaluate field dialog. It lets you transform a value on the way in using simple expressions, for example adding a fixed amount to every shipping total. Columns that are empty in your file will throw a syntax error if used in an expression, so only reference columns that have data.
Step 4: Set the Import Rules and Run the Import
The last section decides what happens when an incoming order matches one already in your store.
- If order exists in the store: Skip or Update the matching order.
- Link order items using: Links products of the imported orders by Product SKU or Product ID.
- Update stock details: adjusts product stock based on the imported line items.
- Set the batch count.
- Click Save this template to keep the mapping, then click Import.
A progress bar tracks the import. When it finishes, a pop-up reports how many orders imported successfully and how many failed.
Free vs Pro: What Changes for Orders
The free plugin covers the full order and coupon CSV workflow above. The Pro version is worth the upgrade if you hit any of these:
➔ XML and Excel files. Export orders to XML, XLS, or XLSX, and import from the same formats. Useful for shipping carriers and ERP systems that will not accept CSV.
➔ FTP/SFTP and scheduling. Save FTP profiles once, then schedule exports to push files to a fulfillment partner or imports to pull files from a supplier at a fixed interval.
➔ Custom and hidden order meta. Carry over metadata added by plugins such as WooCommerce Bookings, Advanced Shipment Tracking, and PDF Invoices, Packing Slips.
➔ Import history and logs. Review completed and failed jobs, download debug logs, and disable scheduled actions you no longer need.
Wrapping Up
That is the complete order import and export workflow for WooCommerce. Once the plugin is installed, a full export takes a couple of minutes, and a clean import takes about the same once your columns are mapped and saved as a template. The two settings that cause the most trouble are the line item mode on export and the SKU linking option on import, so double-check those on your first migration.
If you are moving a whole store rather than just orders, WebToffee’s other import/export plugins follow the same step-based wizard. The Product Import Export for WooCommerce plugin handles your product catalog, including variable and grouped products, and the WordPress Users & WooCommerce Customers Import Export plugin moves customer/user accounts with their roles and meta. Import your customers first, then products, then orders, and everything links up correctly.
For teams doing this regularly across products, orders, customers, and coupons, the Import Export Suite for WooCommerce bundles it all into one plugin.
Leave a Reply