Docs / Admin / HPOS and legacy order storage
HPOS and legacy order storage
Recurring Reports works with WooCommerce High-Performance Order Storage and with the older posts-based storage.
You will learn how Recurring Reports works with both WooCommerce order storage options, and what to check after you switch.
Both storage options are supported
WooCommerce can store orders in two ways:
- High-Performance Order Storage (HPOS), also called custom order tables.
- WordPress posts storage, the older (legacy) option.
Recurring Reports supports both. It declares HPOS compatibility to WooCommerce, so it is not listed as incompatible when HPOS is on. It also declares compatibility with the cart and checkout blocks, because it adds nothing to those pages.
Each time it runs a query, the plugin checks which storage WooCommerce is using and reads from the matching tables. You do not need to change any setting in Recurring Reports.
Check which storage your store uses
- Go to WooCommerce → Settings → Advanced → Features.
- Look at the order data storage option.
What uses order storage
The storage choice affects these parts of the plugin:
- Subscription rows, filters and sorting on the Reports tab.
- Order-based columns, such as Parent order, Last order, Transaction ID and Coupon code.
- The Payment method filter list and the Summary of these filters panel.
- The background counts behind the Overview tab.
Membership records are not orders. WooCommerce Memberships keeps them in its own storage, which HPOS does not change.
After you switch storage
- The Reports tab reads the new storage straight away.
- The Overview figures catch up in two steps. The next hourly recount covers the last 3 days. The next daily recount covers all stored days. See Performance.