Which order statuses are counted in the report?
Completed, processing and refunded. Why refunded has to be in the list, and why leaving it out turns a fully refunded order into minus its own value.
The short answer
Three statuses: completed, processing and refunded.
Refunded looks wrong on that list until you see what happens without it. A full refund flips the
original order to refunded; drop that status and the sale disappears while the refund record
stays — so the order counts as minus its own value instead of zero.
What WooCommerce actually does
A full refund changes the parent order’s status to refunded through
woocommerce_order_fully_refunded_status. A partial refund leaves the status alone. Either way,
the refund itself is a separate record with its own date and its own negative lines.
For comparison, WooCommerce Analytics excludes only pending, failed and cancelled by
default, which means refunded and on-hold are both inside its net sales. The set used here is
one status narrower: it skips on-hold, because an order waiting for money is not yet a sale.
What to do about it
The one case where this set will not match your books is a shop where on-hold means paid — typically bank transfer, marked on-hold until the money lands and then completed by hand. If your orders sit in on-hold for days, expect this report to lag your bank account by exactly that long.
Custom statuses added by shipping or accounting plugins are not counted either. If your workflow parks paid orders in a status of its own, that is worth writing to us about — it is a real case, not a misunderstanding.
How Merchgain reports it
The three statuses are stated on the report screen, not buried in a settings page. There is no status picker in this version: a report whose definition changes per shop is a report nobody can compare notes about, and the honest default matters more than the flexibility.
Cancelled, failed, pending and draft orders are not counted at all — not as zero-profit sales, simply not present.
Related answers
Disagrees with what you see in your shop? Write to us — every message is read. contact@merchgain.com