Province reporting

WooCommerce tax reports by Canadian province

A Canadian tax report needs two separate answers: which province an order is attributed to, and which tax was recorded. A single store-wide tax total cannot show both. Here is how to build a reviewable province breakdown from the amounts already stored in WooCommerce.

The short answer

For a province report in TaxPack, map existing tax rate IDs to GST, HST, PST, QST, or RST, choose shipping or billing attribution, and generate a saved report. Review the currency–province–tax-type groups alongside the source orders and any exceptions before exporting.

Start with recorded amounts, not today’s rates

The reporting task is to organize what your store recorded. Multiplying historical sales by a current percentage can produce a different answer, especially when orders contain discounts, shipping tax, or refunds. It also loses the link between a reported amount and the source tax line.

WooCommerce’s built-in Taxes report is organized around tax codes. It is a useful starting point when those codes provide the detail you need. A TaxPack report adds an explicit province grouping based on your selected order address, together with your tax-type mappings.

Choose one address basis and keep it visible

TaxPack lets you select either the shipping address or the billing address. It uses that selection throughout the report, without silently substituting the other address. This matters for digital orders with no shipping address, and for orders whose billing and shipping provinces differ.

A missing, invalid, or non-Canadian selected address goes into UNRESOLVED. Conflicting shipping and billing locations receive a review flag. Keep those records in the handoff so your accountant can see what needs investigation. Choosing an address for reporting is not a determination of where a sale is legally taxable.

Map tax rate IDs separately from provinces

A tax label and a tax type are not the same thing. Your store may have several rate IDs with similar labels, including older rates still referenced by historical orders. Map each relevant ID to the appropriate reporting category after checking your store’s configuration.

Do not infer the category from the percentage alone. GST, HST, PST, QST, and RST remain separate reporting types. TaxPack leaves unclassified IDs as UNMAPPED so an incomplete mapping cannot quietly disappear from the totals.

What a province breakdown looks like

This fictional example shows stored amounts grouped by currency, province, and mapped type. Refund tax is signed. Shipping tax, when present, is already included in the net amount.

Illustrative CAD report; these are recorded amounts, not tax-rate calculations.
ProvinceTypeOrder taxRefund taxNet tax
ABGST425.00−25.00400.00
ONHST1,300.00−100.001,200.00
QCGST100.000.00100.00
QCQST199.500.00199.50

Separate currencies belong in separate groups even when the province and tax type match. A CAD amount and a USD amount are not one total; TaxPack does not convert them.

Review the report before sending it

  • Record the period, store timezone, included order statuses, and address basis.
  • Check UNMAPPED and UNRESOLVED groups, address conflicts, and tax differences.
  • Open the source orders behind a total that needs explanation.
  • Export the summary, tax-line, and orders/refunds CSVs from the same saved report.
  • Keep the saved report and its mapping revision so a later mapping change does not replace the original handoff.

TaxPack supports up to 5,000 order and refund records per report. Use shorter, non-overlapping periods for larger stores. The result is a reconciliation pack for review, not a calculation of tax payable or a filed return.

Official references

These guides explain reporting workflows. TaxPack does not provide tax advice, calculate tax payable, or file returns.