How to Import WooCommerce Orders Into Your Shop

If you purchase through a link on our site, we may earn a commission. Learn more.

Whether you're migrating from one system to another, or need to keep your orders up to date, you're probably looking for a simple solution to import your data into your online shop. WP All Import is great at just that. It lets you import pretty much any data to your WordPress store. In this post, I'll be taking you through a step-by-step process of how you can successfully import your WooCommerce orders efficiently.
Table of Contents
WP Engine High Performance Hosting
BionicWP Hosting

Whether you’re migrating from one system to another, or need to keep your orders up to date, you’re probably looking for a simple solution to import your data into your online shop. WP All Import is great at just that. It lets you import pretty much any data to your WordPress store.

Throughout the past few weeks, we’ve been taking a deep dive into how you can use this plugin to help you maintain your store by importing WooCommerce products and WooCommerce customers to your site.

In this post, I’ll be taking you through a step-by-step process of how you can successfully import your WooCommerce orders efficiently.

For the purpose of this guide, it is ideal for you to have your products and customers already set up.

Create a new WooCommerce order import

WP All Import allows three ways of uploading your data from XML or CSV files:

  1. Manually upload a file
  2. Download a file from a specific feed or file URL (supports Dropbox and Google Sheets/Google Drive files)
  3. Use an existing file on your server

Thankfully, this plugin not only gives you the ability to upload and import new data, but it also lets you update it as time goes by. If you’re interested in scheduling updates automatically, you’ll want to opt for the second option and have your file located in a Dropbox folder or Google document so that the plugin can easily access it at any time.

For this example, however, I will be uploading a file manually. Once you’ve selected your file, select WooCommerce Orders from the drop-down menu and continue to Step 2. Here you can filter through your orders to only import selected items. Alternatively, you can skip this step and continue to Step 3.

Step 1

Map WooCommerce order data to import fields

WP All Import is very simple to set up. On the right-hand side of your screen, you will find all your orders displayed as cards – in this case, I have 135 orders. You can easily flip through them to see all your orders. All you need to do to start importing information is to drag and drop the data from these cards, into the respective import fields.

This process tells the plugin which information should go where making importing into WordPress all that much easier for you.

Give this a go by selecting “set with XPath” under Order Details and dragging and dropping your order status and order date from the right-hand side of the screen into the correct fields.

Billing details

Next, we need to decide whether we’re going to import guest customer orders or match existing customers to our new orders. For the latter, you can match by:

  • Username
  • Email
  • Custom Field
  • User ID
Existing customers

You do have to keep in mind that if you go for this option, any orders without an existing customer will be skipped. For this reason, if you’ve got a mixture of both, it is also possible to import orders as guest customer orders in the case that an existing user is not found.

All you need to do is check the box next to “If no match found, import as guest customer” and fill in the fields using the drag-and-drop feature.

Existing guest

WooCommerce Shipping & Payment Details

Under the shipping details section, you can opt to copy the information from the billing address or set up your shipping address as explained above.

Once again, if no shipping info is found, you can check the box to then copy from billing. You can also import customer provided notes if need be.

Shipping details

Under the payments section, select your payment method from the drop-down menu or select “Set with XPath”. This is ideal for when you have multiple payment options. Once again, drag and drop the payment method and transaction ID and move on to the next section.


Import WooCommerce order line items

Now we need to start importing our Order items, starting with product data. You can set the plugin to get data from existing products already found on your database. If you’ve got your products already set up, then drag and drop your unique product key, SKU, quantity and price data into the fields.

Alternatively, you can manually import the product order data. WP All Import gives you the option to also import product metadata.

If you have any fees associated with your orders, drag and drop them into the Fees section.


Similarly, any coupons should be added to the coupons section. Select the coupon code, discount amount and, optionally, the discount amount after tax.


Under the shipping section, you can drag and drop the shipping name, amount and also select your shipping method. Select the method from the drop-down menu or “Set with XPath” and drag and drop the shipping method name or ID from your orders list.

Shipping charges

You can set your tax data under the taxes section in a very similar fashion to the shipping data explained above.


Finally, you can import your refund information including the refund amount, reason and date. You can also optionally add the refund issuer information.


WP All import can either automatically calculate the total or let you manually input the total under the Total section.

Import order notes

Moving on to the Notes section, the plugin lets you import the following note data:

  • Note content
  • Date
  • Visibility
  • Username
  • Email

The plugin also supports multiple notes.


Final step

In most cases, when it comes to orders, your unique identifier will most probably be your Order ID. By setting this as your unique identifier, WP All Import can auto-detect products associated to the same order and group them up accordingly.

The plugin gives you a number of options at this stage. You can:

  • Create new orders from records newly present in your file
  • Delete orders that are no longer present in your file
  • Update existing orders with changed data in your file
Import settings

If you prefer, you can choose to block email notifications to the users attached to the imported orders.

Block Email

As mentioned at the beginning of this guide, the WP All Import plugin can automate your import on a schedule. This comes in very handy when updating large volumes of information over time.

Automatic Scheduling

Finally, run the import to import your orders into WooCommerce.

Import complete

Your Import has now been completed!

Import complete

You will now find all your orders under the WooCommerce section in your side bar.



Importing WooCommerce orders into your WordPress shop can be a time-consuming process. WP All Import changes all that. Its simple process makes it easy for anyone to maintain their online shop, no matter their WordPress knowledge.

To manage your WooCommerce orders through Google Sheets over a longer period, take a look at our WPSyncSheets for WooCommerce review for a dedicated solution

Gaby Abela

Gaby is the Product Manager at RebelCode. An architect by profession and designer by nature, she is dedicated to helping users and readers alike to navigate the online world of WordPress. You can find her on Twitter @GabyAbela.

Discover more from our archives ↓

Popular articles ↓

Share Your Thoughts

Your email address will not be published. Required fields are marked *

Claim Your Free Website Tip 👇

Leave your name, email and website URL below to receive one actionable improvement tip tailored for your website within the next 24 hours.

"They identified areas for improvement that we had not previously considered." - Elliot

By providing your information, you'll also be subscribing to our weekly newsletter packed with exclusive content and insights. You can unsubscribe at any time with just one click.