Your store can take orders all day and still leave you staring at a messy month-end spreadsheet. A useful WooCommerce order export gives you the order details your bookkeeper needs, in a format they can work with.
The catch? An order file doesn’t tell the whole money story. Refunds, payment fees, and bank deposits need their own checks. We’ll start with the right export tool, then turn its file into records you can trust.
Choose a WooCommerce order export tool
WooCommerce’s standard product export isn’t an order export. For a bookkeeping-ready CSV, you’ll need an order-export extension. Pick one based on the fields your bookkeeper needs and how often you’ll send the file.
Use the official WooCommerce extension
WooCommerce’s Customer / Order / Coupon Export extension exports orders as CSV or XML. It supports manual downloads, custom CSV columns, and automated delivery. That makes it a strong fit when you want a repeatable handoff to your bookkeeper.
We’d start by asking for your bookkeeper’s preferred column layout. The extension can map columns into a custom CSV format, so you can build around the records they use rather than handing them a file to rebuild each month.
Consider a more flexible spreadsheet export
WP All Export’s WooCommerce order add-on offers CSV, Excel, Google Sheets, and XML export options. It’s worth comparing if your team already uses WP All Export or needs a particular spreadsheet workflow.
Check the output with a small batch before committing. Export tools can arrange line items, custom fields, and order totals differently. A familiar file format won’t help if its columns don’t match your books.
Decide which orders belong in the file
Before touching the export button, settle two questions: which dates count, and which statuses need review. These choices shape every total that follows.
Set one reporting period
Ask whether your books use the order date, payment date, or another date for the period you’re closing. A customer may place an order late on the last day of the month, while the payment settles later. Those dates aren’t interchangeable.
Set the store’s time zone and your accounting period before exporting. Then record the filter you used. If you need to rerun the file, you’ll know how to reproduce it without accidentally adding the next day’s orders.
Keep exceptions visible
Don’t quietly remove failed, canceled, or refunded orders and call the remaining file complete. They can explain gaps between order counts and money received.
We prefer a separate exceptions view alongside the sales file. It keeps the main working sheet tidy while preserving the order IDs your bookkeeper may need to trace. For stores with offline payment methods, take extra care: an order status alone may not confirm that money arrived.

Export WooCommerce orders to CSV
With the official extension installed and configured, the manual route is straightforward. WooCommerce’s order export documentation lists WooCommerce > Export for manual exports. It also documents exporting selected orders from WooCommerce > Orders.
Run a small test first
Choose a short date range that includes an ordinary paid order and, if possible, an order with shipping, tax, a discount, or a refund. Then:
- Open WooCommerce > Export and choose orders for your export.
- Apply the available filters for the period and records you agreed on.
- Select CSV and the saved export format, then download the file.
- Open it locally and compare a few rows with their WooCommerce orders.
Need only a handful of orders? Select them under WooCommerce > Orders and use the extension’s Download to CSV action. The documented actions also include Download to XML and Export and Send, if those suit your workflow.
Choose the right row structure
Here’s the detail that catches people: one row doesn’t always mean one order. The official extension documents a default CSV format and a one-row-per-item format. An order with several products can therefore occupy several rows in the latter format.
Ask your bookkeeper which structure their software expects. If you use item-level rows, check how order-level amounts appear before summing a column. Repeated totals can make sales look larger than they are. If your books need one record per order, test that structure against a multi-product purchase before exporting the full month.
Make the CSV useful for bookkeeping
A download is only the starting point. The useful file is the one whose columns have clear meanings and whose totals can be checked against the store.
Map fields your bookkeeper needs
We’d agree on a consistent set of fields and save it as a custom CSV format. The official extension supports column mapping, a delimiter setting, and an option to include all metadata. Available payment details may depend on your gateway and setup.
These fields give you a practical starting point:
| Field | Why it matters |
|---|---|
| Order ID and date | Identify each transaction and reporting period |
| Status and payment method | Help separate paid orders from exceptions |
| Product, quantity, and discount | Explain what contributed to the sale |
| Shipping and tax | Keep those amounts visible for review |
| Order total and refund details | Support checks against payments and adjustments |
Start with the columns you use. Extra customer details, notes, and metadata can make the file harder to handle and expose information your bookkeeper doesn’t need.
Check the file before handing it over
Open the CSV and look for missing order IDs, blank amounts, unexpected duplicate rows, and totals that don’t match the orders you sampled. Pay attention to the file’s delimiter if columns appear merged in your spreadsheet.
Keep an untouched copy of the original export. Make corrections in a separate working file, with a note explaining each change. That small habit saves a lot of “Which version is right?” later.
Reconcile orders with real payments
A WooCommerce order export records what happened in your store. Your payment gateway and bank records show what happened to the money. You need both to close the books with confidence.
Match charges before fixing duplicates
If two similar orders appear, don’t assume the customer paid twice. Compare each order with the gateway’s transaction history, using the transaction ID when available. Check whether a payment was only authorized or was captured.
If only one payment completed, review both order statuses and any stock changes before canceling an unpaid duplicate. Stock movement doesn’t prove payment completion. If two payments completed, investigate both transactions before issuing a refund. Keep the orders, notes, timestamps, and relevant logs so there’s a record of what you found.
Our WooCommerce checkout troubleshooting guide can help when repeat checkout attempts or payment errors are behind those confusing entries.
Account for refunds, fees, and deposits
An order total and a bank deposit rarely match on their own. The gateway may deduct processing fees, group several payments into one payout, or send a refund in a different period. Compare your exported orders with gateway refund and payout reports, then with the bank deposit.
Don’t treat the difference as a missing order until you’ve checked those separate records. Have your bookkeeper confirm how sales tax, discounts, shipping income, and refunds should appear in your accounts. The export supplies evidence; it doesn’t make those accounting decisions for you.
Make the monthly export repeatable
Once the test file checks out, save the format and write down the date and status filters. Give the file a clear period name, and use the same process each close. Consistency makes odd entries easier to spot.
Automate delivery with a review step
The official extension supports automated exports by email, FTP, or HTTP POST. It can also mark records as exported so later runs can exclude them. That’s handy for regular handoffs, provided you test what happens to late status changes and refunds after an order’s first export.
We’d still review each period before posting it to the books. Automation moves a file; it doesn’t confirm that every charge, refund, and payout agrees. Keep a simple record of when the export ran and who checked it.
Don’t confuse exports with store transfers
Need to move orders between WooCommerce stores instead? That’s a different job. WooCommerce also documents an order import and export suite for transferring order data. For bookkeeping, choose the file layout your accounting workflow needs, not a migration format by default.
Protect order files and the store behind them
Order files can contain names, addresses, and payment-related references. Treat them as business records, not casual email attachments.
Limit access to exported data
Share exports through an approved, access-controlled location. Give each person only the access they need, and remove old access when responsibilities change. Avoid exporting every customer field simply because the extension offers it.
Store the original CSV with the period’s gateway reports and reconciliation notes. Follow your bookkeeper’s record-retention requirements, and keep files out of publicly accessible folders on your website.
Keep the store ready for the next close
A reliable export also depends on a healthy store. Keep WordPress, WooCommerce, and payment plugins updated on a schedule. Test major changes on staging, and make sure backups are recent enough to restore.
Our WordPress hosting plans include backup and security features that can help protect the store holding your order records. For a closer look at SSL, restore planning, and other store basics, use our WooCommerce hosting checklist. Hosting protects the foundation; your export and reconciliation process keeps the books accurate.

Key Takeaways
- Choose an order-export extension, then test its CSV layout with real orders before exporting a full period.
- Agree on dates, statuses, columns, and row structure with your bookkeeper.
- Match orders to gateway transactions, refunds, fees, payouts, and bank deposits.
- Save the original file, protect customer data, and review automated exports before posting them.
FAQ
Can WooCommerce export orders without an extension?
WooCommerce’s standard product export isn’t a general-purpose order CSV export. For the workflow described here, use an order-export extension such as Customer / Order / Coupon Export. Check that its fields and file structure suit your bookkeeper before exporting the full period.
Should failed orders appear in the bookkeeping export?
Keep failed orders available for review, even if they aren’t part of your paid-sales working sheet. They can explain a duplicate checkout attempt or an order that never became a completed charge. Check the gateway record before deciding how to classify an uncertain payment.
Can a CSV be imported straight into accounting software?
Possibly, but test a small file first. Accounting software may require particular column names, date formats, tax treatment, or a single row per transaction. A successful import also doesn’t mean refunds and gateway fees have been reconciled.
A cleaner close starts with a checked file
That messy month-end spreadsheet gets easier when every order has a clear path to its payment record. Choose a consistent export format, keep exceptions visible, and check the money against your gateway and bank.
We’d start with one short test period. Get that file right, and the next close becomes a repeatable process rather than a fresh scramble.





