Plain-language Canadian sales-tax guide

B.C. engineering PST software comparison: GST + 2.1% (2026)

Compare QuickBooks Online, Xero, FreshBooks, Wave, Zoho Books, and Sage 50 for B.C. engineering PST: test separate 5% GST and 7%-on-30% PST, customer PDFs, tax accounts, reports, credits, and return evidence before choosing a platform.

16 minute readReviewed Primary sources linked
01

Make C$1,071 the non-negotiable result

Start only after the engineering or geoscience service, B.C. connection, exemption, resale treatment, disbursements, allocation, collector or small-seller position, October 2026 transition, and federal GST treatment are confirmed. Software cannot decide those legal facts.

For one confirmed C$1,000 taxable fee, the Province's calculation is C$21 of PST: 7% × (30% × C$1,000). When 5% GST separately applies to the full fee, the GST is C$50 and the customer total is C$1,071. The 2.1% figure is only the arithmetic equivalent of 7% on a 30% base, not the statutory rate.

Reject an ordinary 12% B.C. code, one merged 7.1% tax, a compound result of C$22.05 PST, or any path that cannot identify the C$50 and C$21 separately. A product name, plan badge, tax-code label, or settings-screen total is not acceptance evidence.

Common acceptance result for every software candidate
LineRequired calculationExpected amount
Engineering feeConfirmed taxable purchase priceC$1,000.00
GST — illustrative5% × C$1,000 when federal treatment is confirmedC$50.00
B.C. PST7% × (30% × C$1,000)C$21.00
Customer totalC$1,000 + C$50 + C$21C$1,071.00
02

Compare documented candidates, not marketing labels

The six platforms expose different pieces of the required control. Some document grouped or component rates, some permit two taxes on a line, some create named tax accounts, and some provide provincial-return support. None of those isolated features proves the whole B.C. engineering workflow.

Use the table as a shortlist, not a ranking. The best choice is the candidate that passes in the actual Canadian organization, subscription, user role, invoice editor, template, language, currency, report basis, credit path, and filing process the business will use.

A fail-closed comparison protects both sides of the decision: it prevents a feature-rich platform from being approved on assumptions, and it avoids replacing a working platform merely because another vendor advertises more tax automation.

Documented path and decisive acceptance risk by platform
PlatformDocumented candidate pathDecisive gate
QuickBooks Online CanadaCustom B.C. PST component plus a supported group rate with GSTReject the ordinary 12% B.C. code; prove agency mapping, separate PDF identity, liability detail, and return treatment
Xero CanadaA tax rate with separate GST and engineering-PST componentsProve component display and return mapping; reconcile both components even where Xero uses a shared sales-tax account
FreshBooksTwo uniquely named, non-compound taxes on one lineProve the actual PDF, distinct Taxes Payable accounts, Sales Tax Summary basis, and a tax-bearing credit note
WaveTwo separately named taxes in a proven invoice path; Wave Connect expressly supports multiple codesThe current manual article describes selecting a tax, so prove the exact manual, recurring, or import path and reject compound tax
Zoho Books CanadaCustom rates, agencies, non-compound settings, tax groups, and B.C. PST return toolsIts automation defaults to ordinary B.C. GST + PST; prove the exact organization's custom grouping, PDF, accounts, and return mapping
Sage 50 CanadaOne tax code can contain separately configured GST and PST taxes, accounts, and reportingIf more than two taxes are configured Sage may merge the customer-facing display; approve only the actual PDF and Tax Summary
03

QuickBooks Online and Xero offer structured custom-rate paths

QuickBooks Online Canada documents custom sales-tax codes and group rates, while its common-code table lists ordinary B.C. GST at 5%, PST at 7%, and the combined code at 12%. For the confirmed engineering example, the ordinary 12% code fails. A candidate custom PST component at the 2.1% arithmetic equivalent may be grouped with 5% GST only after the agency, invoice, liability, report, credit, and filing consequences are proven in the actual company.

Xero Canada documents tax rates with multiple components, component mapping to Canadian returns, invoice tax-subtotal controls, and sales-tax reporting. That creates a promising 5% GST plus 2.1% engineering-PST candidate, but the component labels, line rounding, customer PDF, report mappings, and shared-account reconciliation still need direct evidence.

Choose between these two from the observed result, not the apparent elegance of the setup. A structured group or component that cannot preserve both statutory identities through a credit and return is less useful than a simpler path with complete evidence.

  • QuickBooks gate: C$21 must reach the B.C. PST agency and liability detail, not revenue, GST, or an unmapped custom-tax account.
  • Xero gate: both components must remain identifiable even when the general ledger uses a shared sales-tax account.
  • Both gates: save the actual PDF, report export, account detail, credit result, return workpaper, and reviewer sign-off.
04

FreshBooks and Wave are two-tax candidates with workflow caveats

FreshBooks documents up to two taxes on an invoice line and creates a sales-tax account for each uniquely named tax. A candidate can therefore pair 5% GST with a separately named engineering-PST entry at the 2.1% arithmetic equivalent. Acceptance still depends on the customer PDF, distinct accounts, the Billed or Collected Sales Tax Summary basis, currency, plan access, and a credit note that reverses both taxes.

Wave documents separately named taxes, compound and recoverable settings, named liability accounts, line-level calculation, a Sales Tax Report, and multiple tax codes in Wave Connect. Its current manual-invoice article describes choosing a tax rather than expressly proving two taxes on the same line, so the exact browser, recurring, mobile, or import path must be tested.

For both products, keep GST and PST non-compound and reject any workaround that records PST as income, a service item, or one unidentified 7.1% tax. A customer-balance correction does not prove the two tax liabilities were reversed.

05

Zoho Books and Sage 50 need version and display gates

Zoho Books Canada documents custom tax names, rates, agencies, value-added and compound settings, tax groups, and B.C. PST returns. Its newer Sales Tax Automation and older Tax Rules workflows differ by organization creation date, and the automated B.C. treatment starts from ordinary GST plus PST. Build a dated, non-compound candidate only in the actual organization, then prove that its group, item calculation, customer PDF, accounts, B.C. return, GST workpaper, and credit path preserve the engineering result.

Sage 50 Canada documents tax codes that can include GST and PST, separate charged and paid accounts, rates, included and refundable settings, and Tax Summary reporting. That structure may preserve the two components, but Sage also warns that when more than two taxes are configured, sales documents can show one total tax line instead of the breakdown.

Do not infer that a Zoho tax group or Sage tax code is compliant from configuration alone. Record the product edition, release, organization or company file, active taxes, exact code, template, language, and report settings. If the PDF merges the identities or the reports cannot bridge to both returns, the candidate fails even when the arithmetic total is correct.

06

Approve the actual PDF and cents-sensitive calculations

The B.C. regulation requires a collector who provides an invoice and levies PST to show PST as a separate item. Generate the exact PDF or customer view from the intended live path. It must identify GST separately when applicable, identify B.C. PST separately, and total C$1,071 on the baseline case.

Then test C$12,000, a C$100 reversal, multiple cents-sensitive lines, and mixed taxable, exempt, allocated, transition, goods, software, and disbursement lines. Compare line rounding and document totals to a saved legal workpaper rather than calculating only one round subtotal.

Repeat the render after a template, language, currency, tax name, registration number, recurring schedule, import, product item, or software release changes. Preserve the approved document and observed software version with the decision.

Minimum cross-platform acceptance suite
TestExpected B.C. PSTAdditional required evidence
C$1,000 confirmed taxable feeC$21.00C$50 GST and C$1,071 total only when GST applies; separate identities on the PDF
C$12,000 confirmed taxable feeC$252.00C$600 GST and C$12,852 total only when GST applies
C$100 reversalC$2.10 creditC$5 GST credit when the same federal treatment applies; both liabilities reduced
Cents-sensitive multi-line invoiceLine-by-line workpaper resultNo unexplained rounding variance in PDF, accounts, or report
Mixed or transition invoiceOnly supported taxable linesSeparate classifications, dates, allocations, and exemption evidence
07

Reconcile GST/HST, Box A, Box B, and every tax account

The Province's return guide says Box A includes taxable, non-taxable, and exempt Canadian sales and leases before GST and PST, while Box B includes PST collectable on taxable sales and leases, including PST charged but not yet collected. The software report must be bridged to those definitions; a report labelled 2.1% does not replace the legal 7%-on-30% workpaper.

Trace the C$1,000 supported sale to the relevant Box A population, C$21 to Box B, and C$50 to the reviewed GST/HST workpaper when applicable. Reconcile invoice, credit, customer balance, each tax account, tax report, return workpaper, eTaxBC confirmation, federal filing, and separate bank payment.

Test paid and unpaid invoices across a period boundary. A platform's cash, accrual, billed, collected, filed, or locked labels are not interchangeable. Record which basis and status feed each report and obtain reviewer approval for the actual filing process.

08

Test credits, recurring invoices, imports, and changes

A baseline invoice proves only one path. Run a credit or reversal that reduces both taxes, a recurring invoice generated from the live template, an imported transaction if imports will be used, and a transaction after a rate-name or effective-date change. Keep all first tests fictional and non-customer-facing.

Do not edit a used historical rate merely to repair current transactions. Create dated replacements when the platform's rules or audit trail require it, preserve the original evidence, and document how prior-period corrections reach the accounts and returns.

After each material software update, plan change, template change, automation change, or reporting-method change, rerun the acceptance suite. Vendor documentation describes capabilities at a point in time; the observed company-file result remains the go-live evidence.

09

Keep, adapt, or replace the platform from observed evidence

Keep the current platform when the intended path passes all legal, PDF, accounting, reporting, correction, filing, and payment gates without fragile manual reconstruction. Adapt it when a reviewed, documented control closes a limited gap and can be repeated consistently. Replace it when tax identities merge, required accounts or reports are unavailable, corrections do not reverse both liabilities, or the filing bridge cannot be reconciled.

Score each candidate as Pass, Conditional, Fail, or Not tested for classification controls, C$1,071 arithmetic, separate PDF identity, cents, mixed lines, accounts, reports, credit, recurring path, import path, Box A, Box B, GST/HST, eTaxBC, and payments. Do not award partial points for an untested feature.

QuickBooks, Xero, FreshBooks, Wave, Zoho, and Sage are trademarks of their respective owners. Thirty North is not affiliated with or endorsed by those vendors. Interfaces, plans, releases, reports, and tax capabilities can change; use the linked vendor documentation and the actual reviewed organization or company file as current evidence.

Put this into practice

What to do now

  1. 01

    Confirm the legal engineering classification, B.C. connection, 30% PST base, registration, transition amount, and separate GST treatment.

  2. 02

    Shortlist only platforms whose documented controls could preserve separate GST and B.C. PST identities; do not treat the comparison table as approval.

  3. 03

    Run the C$1,000, C$12,000, C$100 credit, cents-sensitive, mixed-line, recurring, and import tests in the actual subscription and workflow.

  4. 04

    Approve only the real customer PDF and reconcile both tax identities through accounts, reports, GST/HST, Box A, Box B, eTaxBC, and payments.

  5. 05

    Record Pass, Conditional, Fail, or Not tested for every gate, then keep, adapt, or replace the platform from observed evidence.

Calculate and copy the B.C. engineering GST + PST workpaper Check the B.C. PST small-seller registration path Check a GST/HST or QST number Check GST/HST invoice requirements Calculate registration timing Calculate filing and payment dates Download a 12-month deadline calendar Calculate return lines 101–115 Estimate a late-filing penalty Estimate a GST/HST Quick Method remittance
Pause and confirm

Get a fact-specific review when…

  • The service, B.C. connection, exemption, resale, disbursement, allocation, small-seller position, transition amount, or GST treatment is unresolved.
  • The candidate is being approved from documentation, a feature list, a settings screen, or a tax-code name without an end-to-end company-file test.
  • The customer PDF merges, omits, compounds, or fails to identify GST and B.C. PST separately.
  • The 2.1% arithmetic equivalent is presented as the statutory PST rate or used without the 7%-on-30% workpaper.
  • The C$1,000, C$12,000, C$100 credit, cents, mixed-line, recurring, or import test is missing or does not reconcile.
  • The subscription, edition, organization age, user role, template, language, currency, report basis, or software release differs from the tested path.
  • One or both tax components cannot be traced through named accounts, the selected tax report, GST/HST, Box A, Box B, eTaxBC, and payment evidence.
  • A historical rate, invoice, credit, or return is being overwritten instead of corrected through a dated and reviewable audit trail.
Official sources

Check the rule behind the guide.

British Columbia LawsProvincial Sales Tax Regulation, sections 84–86

The separate-item invoice requirement for PST and related invoice rules.

Open official guidance
Province of British ColumbiaPST on engineering and geoscience services

The service definition, B.C. connection, exemptions, 7%-on-30% formula, registration, filing, and transition rules.

Open official guidance
Province of British ColumbiaGuide to completing the PST return

Box A, Box B, collectable PST, electronic filing, and return workpaper controls.

Open official guidance
Intuit QuickBooksCommon sales tax codes for QuickBooks Online Canada

The ordinary 5% GST, 7% PST, and 12% combined B.C. codes that must not be confused with the engineering base.

Open official guidance
Intuit QuickBooksAdd a group sales tax rate

The documented group-rate capability used only as a candidate after component and report testing.

Open official guidance
Xero CentralAdd or edit tax rates in Canada

Canadian tax-rate components, naming, account behaviour, and restrictions on used rates.

Open official guidance
Xero CentralMap custom tax rates to sales tax returns

Mapping custom components to Canadian sales-tax return locations and reviewing unmapped rates.

Open official guidance
Xero CentralChange tax subtotals on invoices and quotes

Customer-document tax subtotal display controls that still require PDF acceptance testing.

Open official guidance
FreshBooks SupportHow sales tax works

Up to two taxes on a line and uniquely named sales-tax accounts.

Open official guidance
FreshBooks SupportSales Tax Summary report

Billed and Collected report bases, draft and currency treatment, and tax-summary exports.

Open official guidance
Wave Help CenterAdd, edit, or delete a sales tax

Tax names, rates, recoverable and compound settings, and dated setup controls.

Open official guidance
Wave Help CenterUpload and download data with Wave Connect

Multiple sales-tax codes on an imported invoice line and import validation.

Open official guidance
Wave Help CenterView and understand your sales tax report

Individual tax columns, accrual and cash-basis views, government payments, balances, and exports.

Open official guidance
Zoho BooksTaxes in Zoho Books Canada

Custom tax names, rates, agencies, value-added and compound settings, tax groups, and rate-version behaviour.

Open official guidance
Zoho BooksSales Tax Automation in Canada

The organization-age workflow split and ordinary automated provincial tax defaults that require a custom engineering test.

Open official guidance
Zoho BooksB.C. PST return

B.C. return periods, basis, drilldowns, adjustments, filing locks, PDF export, payments, and claims.

Open official guidance
Zoho BooksHow item tax is calculated

Tax-group aggregation across item groups and the need for line and cents testing.

Open official guidance
Sage KnowledgebaseSet up sales taxes in Sage 50 Canada

Tax codes containing GST and PST, charged and paid accounts, rates, included and refundable settings, and reporting choices.

Open official guidance
Sage KnowledgebaseSales tax breakdown on invoices

The customer-document limitation that can merge tax display when more than two taxes are configured.

Open official guidance
Sage KnowledgebaseTax Summary report and remittance

Tax Summary period reporting, sales and purchase detail, prior-period adjustments, remittance accounts, and payment workflow.

Open official guidance