
Sales by State Report for SureCart adds a report showing net and gross sales grouped by state, county, or province, for a chosen year and a chosen set of order statuses.
It appears under SureCart Sales by State.
Use it when you need to know how much each state bought in a given year, counting only the order statuses that matter for sales tax or territory planning.
This plugin requires SureCart. There are no settings screens to configure. After you activate the plugin, open the report and choose a country, year, and order statuses.
Documentation: salesbystate.com
If the store already has orders, the plugin imports them from the SureCart API into its report table in the background. A progress bar appears until that finishes. You can leave the page; the import continues on its own.
Gross Sales is the checkout total. Net Sales is the checkout total minus tax and shipping. Both use the values SureCart stores on the checkout (converted from cents).
Refunds are not modelled as separate records. An order that has been fully refunded is controlled by the status filter. A partial refund is not deducted from its order’s total.
Sales for a whole year are answered by one indexed query that returns one row per state. The response size does not grow with the number of orders.
SureCart keeps orders on its API, not in a local WordPress table. Existing orders are imported from the SureCart API into the report table once. After that import, opening or changing the report filters does not call the API.
The plugin creates one custom database table holding, per order: the order ID, order status, creation and payment dates, billing and shipping country and state codes, currency, and the order, tax, shipping and net totals. It stores no names, addresses, email addresses or any other personal data.
During the one-off import, and when a checkout is confirmed, the plugin reads order, checkout and address data from the SureCart API. It does not send data to any other service, includes no third-party analytics, and collects no telemetry.
Deleting the plugin removes the table and its options.