Article
Canadian Sales Tax in Adobe Commerce: GST, HST, PST and QST
How to set up Canadian sales tax in Adobe Commerce: GST, HST, PST and QST by province, place of supply, registration, exemptions, Vertex or Avalara, and ERP.

On this page
- How Canadian sales tax works: one federal tax, thirteen provincial variants
- Three regimes, three different ways to configure the store
- Place of supply: tax follows the delivery, not the invoice
- Shipping is taxed too
- When you have to register: residents and non-residents
- Pricing convention in Canada: tax-exclusive catalog, itemized at checkout
- How to configure Canadian taxes in Adobe Commerce, step by step
- 1. Define the tax classes
- 2. Load zones and rates: one per province, two where there is a separate provincial tax
- 3. Create the rules: product class × customer class × rate
- 4. Calculation settings
- 5. Show the breakdown where the customer and the accountant need it
- 6. Website and currency structure
- 7. Test one order per jurisdiction
- Exemptions, zero-rated supplies and B2B customers
- Native Adobe Commerce engine or Vertex/Avalara: when each one makes sense
- ERP integration: who owns the rates and the invoice
- Selling into Canada from the US or Mexico: border, de minimis and DDP
- DDP or DAP: who pays at the door
- Common mistakes when configuring Canadian taxes in Adobe Commerce
- How we approach it at WolfSellers
- Frequently asked questions about Canadian sales tax in Adobe Commerce
- Do I need to register for GST/HST if I sell into Canada from the US or Mexico?
- How should I display prices in a store for Canada: with or without tax?
- Is shipping taxed in Canada?
- How do I handle Quebec in Adobe Commerce?
- Should I use Adobe Commerce's native engine or Vertex/Avalara?
- What about taxes when I sell through marketplaces?
- Related services
Canada does not have a sales tax. It has a federal tax plus thirteen provincial and territorial variants that combine in three different ways. An order shipped to Toronto pays 13% on a single line; the same order shipped to Montreal pays 5% federal plus 9.975% provincial, administered by two different authorities; shipped to Vancouver it pays 5% plus 7%, with separate registration and separate returns; shipped to Calgary it pays the 5% federal tax and nothing else. Your store has to compute all of that correctly, line by line, based on the province of delivery, itemize it at checkout and on the invoice, and hand the ERP figures that reconcile to the cent.
At WolfSellers this is where we see most stores opening Canada get it wrong — whether they ship from the US, from Mexico, or from within Canada on a new platform — and almost always for the same reason: someone configures "one tax rate for Canada," or copies the tax logic of a US or European store, and neither works. This article is the implementation guide: how the system works, when registration becomes mandatory, how to configure it in Adobe Commerce (formerly Magento) step by step, when an external engine such as Vertex or Avalara pays off, how it ties into the ERP, and which mistakes keep repeating.
One necessary caveat: this is a technical implementation guide, not tax advice. Rates, thresholds and registration rules change — Nova Scotia lowered its HST in 2025, for instance — and your specific situation (tax residency, product mix, sales channels) should be validated by an accountant or tax lawyer practicing in Canada. The article is part of the content cluster behind our Adobe Commerce partner hub for Canada, alongside the complete guide to the Canadian ecommerce stack and our note on Quebec's Bill 96 and French-language ecommerce.
How Canadian sales tax works: one federal tax, thirteen provincial variants
Four terms are enough to read everything that follows:
- GST (Goods and Services Tax): the 5% federal value-added tax, administered by the Canada Revenue Agency (CRA). It applies nationwide.
- HST (Harmonized Sales Tax): in five provinces the federal and provincial portions were merged into a single tax with one rate, one return and one administrator (the CRA). Ontario charges 13%; New Brunswick, Newfoundland and Labrador, and Prince Edward Island charge 15%; Nova Scotia charges 14% as of April 1, 2025 (previously 15%).
- PST (Provincial Sales Tax) — called RST (Retail Sales Tax) in Manitoba: a separate provincial tax added on top of GST, administered by each province with its own registration, its own returns and its own exemptions. British Columbia 7%, Saskatchewan 6%, Manitoba 7%.
- QST (Quebec Sales Tax): Quebec's provincial tax at 9.975%, administered by Revenu Québec. Since 2013 it is calculated on the price before GST — no more cascading — so the effective combined rate is 14.975%.
Alberta and the three territories (Yukon, Northwest Territories and Nunavut) have no provincial sales tax: only the 5% GST applies.
| Province or territory | Regime | Rate(s) | Approximate total |
|---|---|---|---|
| Alberta | GST only | 5% | 5% |
| British Columbia | GST + PST | 5% + 7% | 12% |
| Manitoba | GST + RST | 5% + 7% | 12% |
| New Brunswick | HST | 15% | 15% |
| Newfoundland and Labrador | HST | 15% | 15% |
| Nova Scotia | HST | 14% (15% until March 31, 2025) | 14% |
| Ontario | HST | 13% | 13% |
| Prince Edward Island | HST | 15% | 15% |
| Quebec | GST + QST | 5% + 9.975% | 14.975% |
| Saskatchewan | GST + PST | 5% + 6% | 11% |
| Northwest Territories | GST only | 5% | 5% |
| Nunavut | GST only | 5% | 5% |
| Yukon | GST only | 5% | 5% |
Rates current at publication per the CRA, Revenu Québec and the provincial ministries of finance; verify them before loading them.
Three regimes, three different ways to configure the store
The table hides the practical consequence: these are not thirteen rates, they are three calculation models.
- HST (Ontario and Atlantic Canada): one rate, one tax line, one authority. This is the easy case.
- GST + PST (British Columbia, Saskatchewan, Manitoba): two rates added on the same base, two registrations, two sets of returns and — the part most often forgotten — two different exemption catalogs: what is PST-exempt in British Columbia is not necessarily GST-exempt, and vice versa.
- GST + QST (Quebec): two rates on the same base, with Revenu Québec administering the QST (and, for businesses established in Quebec, generally the GST as well under its agreement with the CRA). On top of that, a 9.975% rate with three decimals produces rounding differences you will need to reconcile.
Roughly six in ten Canadians live in Ontario and Quebec (Statistics Canada), so your two largest markets almost certainly fall under two different models.
Place of supply: tax follows the delivery, not the invoice
Place of supply is the rule that decides which province taxes a sale. For tangible goods, the CRA's general rule is that the sale takes place in the province where the goods are delivered or made available to the buyer. In ecommerce that means the shipping address — not the billing address and not the seller's head office.
| Scenario | Taxing province | Applicable tax |
|---|---|---|
| Company headquartered in Alberta, customer billed in Alberta, shipped to Ontario | Ontario | HST 13% |
| Store in Ontario, customer billed in Ontario, shipped to British Columbia | British Columbia | GST 5% + PST 7% |
| Store in Ontario, customer from Quebec, in-store pickup in Ontario | Ontario | HST 13% |
| Store in the US, courier shipment to Quebec | Quebec | GST 5% + QST 9.975% (collected at the border or at checkout; see below) |
Digital products and services follow a different rule: it generally relies on indicators of the customer's usual location (billing address, payment method country, IP address), and it is worth reviewing with the CRA if you sell software, subscriptions or content.
Shipping is taxed too
When you sell a taxable good and charge for shipping, the shipping charge is part of the same supply and is taxed at the same rate as the good in the destination province. A store that taxes the product and leaves shipping untaxed is under-remitting on every order. If the good is zero-rated, the associated shipping generally follows the same treatment; mixed carts (taxable and zero-rated goods together) are exactly the kind of detail to validate with your accountant and test in the store.
When you have to register: residents and non-residents
Registering means obtaining a GST/HST account number from the CRA (and, depending on the case, a QST number from Revenu Québec and a PST number from each province), charging the customer, filing returns and remitting. The rules below are the general ones; thresholds change and special cases abound, so always verify with each administration.
| Tax | Administered by | General registration rule | Note |
|---|---|---|---|
| GST/HST (Canadian business) | CRA | Mandatory once taxable revenues exceed CAD 30,000 over four consecutive calendar quarters (the "small supplier" threshold); voluntary below that | Registration lets you claim input tax credits on the tax you pay on purchases |
| GST/HST (non-resident selling digital products or services to Canadian consumers, and platform operators) | CRA | Simplified regime in force since July 1, 2021, with the same CAD 30,000 threshold | The simplified regime does not allow input tax credits |
| GST/HST (non-resident shipping physical goods into Canada) | CRA / CBSA | Without registration, GST (and in several cases the provincial portion) is collected at the border from the importer; with voluntary registration the seller can collect at checkout | See the cross-border section |
| QST | Revenu Québec | Non-resident supplier regime since 2019, with a threshold equivalent to the federal one | Also applies to Canadian businesses located outside Quebec |
| PST British Columbia | BC Ministry of Finance | Out-of-province sellers must register above a low threshold, on the order of CAD 10,000 in sales to BC | Verify the current threshold |
| PST Saskatchewan and RST Manitoba | Each provincial ministry | Both provinces require out-of-province online sellers selling to their residents to register | Verify current conditions and thresholds |
Two direct implications for the project:
- Registration numbers must appear on invoices. The CRA requires the seller's GST/HST number on invoices and receipts so the buyer can claim the tax; Quebec applies the same rule to the QST number. If your ERP issues the invoice, the number lives there; if Adobe Commerce issues it, the store has to print it.
- Registering in a PST province opens a new front: registration, periodic returns and a province-specific exemption rulebook. It is a business decision to make with real sales volume to that province on the table, not by default.
Pricing convention in Canada: tax-exclusive catalog, itemized at checkout
In Canada prices are advertised before tax, and the tax is added at the end of the purchase — the same convention as the US, and the opposite of Europe, where the shelf price already includes VAT. A Canadian shopper expects to see CAD 100 on the product page and CAD 113 in the total if they live in Ontario. Displaying tax-inclusive prices, besides being unusual, would force a different price per province.
Two nuances:
- Quebec has consumer protection legislation that, broadly speaking, requires advertising the total price the consumer will pay, taxes excluded: no mandatory fees that only surface at checkout. Taxes can be added at the end, but a "handling fee" discovered on the last screen is a problem. And all of that information must be available in French — we cover it in our post on Bill 96 and French-language ecommerce.
- The breakdown matters. In an HST province one line is enough; in Quebec, British Columbia, Saskatchewan and Manitoba the customer expects two separate lines (GST and QST, or GST and PST), and business buyers need them that way for their own books. A single "Tax" line is a frequent mistake.
How to configure Canadian taxes in Adobe Commerce, step by step
Everything below lives under Stores > Configuration > Sales > Tax and Stores > Taxes (classes, zones and rates, rules). Adobe Commerce's native engine is enough for Canada when configured with discipline; thirteen jurisdictions are manageable, unlike the thousands in the US.
1. Define the tax classes
Tax classes are the labels that connect products and customers to the rules.
- Product classes: at minimum
Taxable Goods,Zero-Rated,Exempt, plus one class per category with special provincial treatment (for exampleBooksorChildren's Clothing; see the exemptions section). - Customer classes:
Retail Customerand, if you sell B2B in PST provinces,PST-Exempt Businessfor customers who document a resale exemption. They are assigned to the customer group, not to the individual customer. - Shipping class: the Tax Class for Shipping field must point to a taxable class. Left at
None, shipping goes untaxed and you under-remit.
2. Load zones and rates: one per province, two where there is a separate provincial tax
In Stores > Taxes > Tax Zones and Rates you create one rate per jurisdiction, with country CA, the corresponding province and postal code *. The fastest way is to prepare them in CSV and use Import / Export Tax Rates.
| Suggested identifier | Province | Rate | Comment |
|---|---|---|---|
CA-ON-HST |
Ontario | 13% | Single rate |
CA-NS-HST |
Nova Scotia | 14% | Updated April 2025 |
CA-NB-HST, CA-NL-HST, CA-PE-HST |
New Brunswick, Newfoundland and Labrador, Prince Edward Island | 15% | Single rate |
CA-BC-GST + CA-BC-PST |
British Columbia | 5% + 7% | Two rates, two lines |
CA-SK-GST + CA-SK-PST |
Saskatchewan | 5% + 6% | Two rates, two lines |
CA-MB-GST + CA-MB-RST |
Manitoba | 5% + 7% | Two rates, two lines |
CA-QC-GST + CA-QC-QST |
Quebec | 5% + 9.975% | Two rates; same priority to avoid cascading |
CA-AB-GST, CA-YT-GST, CA-NT-GST, CA-NU-GST |
Alberta, Yukon, Northwest Territories, Nunavut | 5% | Federal only |
Naming each rate after the tax it represents (GST, PST, QST, HST) is not cosmetic: that identifier is what shows up in the cart breakdown, on the invoice and in the data that travels to the ERP.
3. Create the rules: product class × customer class × rate
In Stores > Taxes > Tax Rules each rule combines customer classes, product classes and rates, with a priority. This is where Quebec and the PST provinces trip people up: in Adobe Commerce, rates with the same priority are added on the base price; rates with different priorities are compounded (the second is computed on the price plus the first). Since QST is calculated on the price before GST, CA-QC-GST and CA-QC-QST must share the same priority. The same goes for GST and PST in British Columbia, Saskatchewan and Manitoba. A different priority reproduces the cascade Quebec eliminated in 2013 and overcharges on every order.
A minimal rule set:
Taxable – all provinces: classTaxable Goods× classRetail Customer× all rates.Zero-rated: classZero-Rated× all customer classes × no rate (or a 0% rate so the breakdown shows the line).Books – federal only(example): classBooks× all customer classes × only theGSTrates plus theHSTrates of provinces with no point-of-sale rebate; see exemptions.B2B PST-exempt: classTaxable Goods× classPST-Exempt Business× onlyGST,HSTandQSTrates as applicable.
4. Calculation settings
| Setting (Sales > Tax) | Recommended value | Why |
|---|---|---|
| Tax Calculation Method Based On | Row Total or Total, whichever your ERP or accounting uses |
With QST at 9.975% the three methods produce different cents; yours must match the system that issues the invoice |
| Tax Calculation Based On | Shipping Address |
This is the place-of-supply rule. Billing Address is mistake number one |
| Catalog Prices | Excluding Tax |
Canadian convention |
| Shipping Prices | Excluding Tax |
Shipping is taxed at checkout like the goods |
| Apply Customer Tax | After Discount |
Tax is computed on what the customer actually pays |
| Apply Discount On Prices | Excluding Tax |
Consistent with a tax-exclusive catalog |
| Enable Cross Border Trade | No |
Only meaningful with tax-inclusive prices |
| Default Tax Destination Calculation | Country Canada, plus the province and postal code of your main market |
This drives the estimate the customer sees before entering an address |
5. Show the breakdown where the customer and the accountant need it
Under Shopping Cart Display Settings, Orders, Invoices, Credit Memos Display Settings and Price Display Settings: prices, subtotal and shipping excluding tax, and Display Full Tax Summary = Yes, which is what turns the single "Tax" line into GST + QST or GST + PST. These settings are per store view: if you run one view for Quebec and another for the rest of Canada, check both.
GST/HST and QST registration numbers must be printed on the invoice. The simplest no-code route is the address block printed on PDF invoices (Sales > Sales > Invoice and Packing Slip Design) and the transactional email templates; if the legal invoice comes out of the ERP, the number belongs there rather than in the store.
6. Website and currency structure
Canada deserves its own website in Adobe Commerce, with CAD as base currency and its own tax rules. If you also sell in the US, do not share the website: US tax logic (economic nexus, thousands of jurisdictions) and Canadian tax logic do not coexist well in one configuration. A French store view for Quebec inside the Canadian website is the usual structure.
7. Test one order per jurisdiction
Before go-live, place thirteen test orders — one per province and territory — with a taxable product, a zero-rated product, a shipping charge and a discount. Compare each total against the accountant's calculation and against what the ERP records. It is half a day of work, and it is what keeps you from discovering the Quebec cascade on your first return.
Exemptions, zero-rated supplies and B2B customers
The difference between zero-rated and exempt matters even though both show 0% at checkout: on a zero-rated supply the seller charges no tax but can still claim input tax credits on its purchases; on an exempt supply it charges nothing and claims nothing. For the store the consequence is identical — a product class with no applicable rate — but the classification is the accountant's call, not the ecommerce team's.
| Category | GST/HST | Separate provincial tax (BC, SK, MB, QC) | What it means in Adobe Commerce |
|---|---|---|---|
| General taxable goods | Applies | Applies | Class Taxable Goods, all rates |
| Basic groceries | Zero-rated (list defined by the CRA) | Generally also untaxed, with province-specific criteria | Class Zero-Rated, no rates |
| Prescription drugs and certain medical devices | Zero-rated | Verify by province | Dedicated class, rule with no rates or only the applicable ones |
| Books, children's clothing and other categories with provincial treatment | Federal portion applies; some HST provinces rebate the provincial portion at the point of sale | Several PST provinces exempt them | One class per category and a rule applying only the relevant rates |
| Exports outside Canada | Zero-rated | Not applicable | Rules only for Canadian addresses |
Point-of-sale rebates. In several HST provinces, certain items — printed books and children's clothing are the usual examples — receive a rebate of the provincial portion right at the register, so the customer effectively pays only the 5% federal portion. The exact categories vary by province and must be confirmed with each ministry of finance. In Adobe Commerce you model it with an additional 5% rate for that province (for example CA-ON-GST-books) assigned only to the relevant product class.
B2B customers. Unlike US sales tax, GST/HST has no general resale exemption certificate: the purchasing business pays the tax and recovers it as an input tax credit on its return. Resale exemptions do exist in the PST provinces — British Columbia, Saskatchewan and Manitoba — where a registered buyer can purchase goods for resale without PST. In Adobe Commerce B2B this is handled with a customer group mapped to the PST-Exempt Business customer class, whose rules apply GST/HST and QST but not the PST rates; validating the customer's PST number and keeping the supporting document is a business process, not a checkout checkbox. If you have many exempt customers or exemptions across several provinces, certificate management becomes one of the arguments for an external engine.
Native Adobe Commerce engine or Vertex/Avalara: when each one makes sense
| Criterion | Native engine | Vertex or Avalara |
|---|---|---|
| Geographic scope | Canada only (13 jurisdictions, stable rates) | Canada + US (thousands of jurisdictions, economic nexus) or other countries |
| Catalog | Few categories with special treatment | Many categories with different tax classification per province or state |
| Exempt customers | Few, managed by hand | Many exemption certificates, with expiry dates and audit trail |
| Rate maintenance | Your team, whenever a rate changes (Nova Scotia in 2025) | The provider |
| Returns | Prepared by the accountant or the ERP from reports | The provider can prepare and file returns |
| Dependencies | None external | An API call at checkout: latency, timeout and failure behavior you have to design |
| Cost | Included in the platform | Provider subscription, usually by transaction volume |
The Vertex integration ships with the Adobe Commerce 2.4 distribution (a Vertex account is required); Avalara AvaTax installs as an extension from the Adobe Commerce Marketplace. Both replace the native calculation: on every estimate and at checkout they send the address, the line items and the product tax codes to the service, which returns the tax per jurisdiction, and they add address validation, exemption certificate management and per-jurisdiction reporting.
Our rule of thumb at WolfSellers: if the scope is Canada and a catalog with few special categories, a well-configured native engine is enough and adds no dependency to the checkout. Once the US, several marketplaces or dozens of exempt customers per province enter the picture, the cost of maintaining rates, exemptions and certificates by hand quickly exceeds an external engine's subscription, and the project should budget for it from day one. Either way, tax calculation happens in the cart and checkout — pages that are never cached — so it does not affect catalog performance.
ERP integration: who owns the rates and the invoice
In our ERP integration guide we argue that the first deliverable of any project is the source-of-truth table, entity by entity. Taxes deserve their own rows:
| Decision | Recommendation | Reason |
|---|---|---|
| Who calculates tax at checkout | Adobe Commerce (native engine or Vertex/Avalara) | The ERP is not built to answer online on every cart estimate; calling it live ties checkout latency to ERP latency |
| Who is the source of the rates | The ERP or the external engine; Adobe Commerce receives the table | A rate changed in one place and propagated keeps the store and the books from remitting different amounts |
| Who issues the legal invoice and files | The ERP (SAP, Oracle, Dynamics) | GST/HST, QST and PST returns come out of the general ledger, not the storefront |
| What travels with the order to the ERP | Tax per line and per jurisdiction (GST, HST, PST, QST), never a lump sum |
The ERP's tax codes (tax codes in SAP, sales tax groups in Dynamics) need the split to post each tax to its own account |
| How rounding is reconciled | The same calculation method in both systems and a defined tolerance | At 9.975%, one-cent differences per line are normal; without a rule, each one becomes a ticket |
The mapping from Adobe Commerce rates to the ERP's tax codes is defined during discovery and versioned with the rest of the integration. And if the ERP issues the invoice, the ERP is what must print the registration numbers and the breakdown; the store shows the order confirmation and a link to the document, much like the model we describe for e-invoicing in Mexico.
Selling into Canada from the US or Mexico: border, de minimis and DDP
If your inventory sits outside Canada, taxation changes venue: on top of sales tax you now have duties and importation.
- Taxes at the border. When the seller is not registered, GST — and on shipments to consumers, under agreements between the CBSA and the provinces, often the provincial portion too — is collected on import, typically through the courier, which passes it on to the recipient along with a brokerage fee.
- Duties. They depend on tariff classification and origin. Under CUSMA (USMCA in the US, T-MEC in Mexico), goods that meet the rules of origin can enter duty-free, but compliance is documented with a certification of origin; sales tax is charged regardless.
- De minimis. For courier shipments from the US or Mexico, CUSMA set thresholds of CAD 40 tax-free and CAD 150 duty-free; for postal shipments the threshold is CAD 20. Verify these figures with the Canada Border Services Agency before designing your shipping policy, because they determine whether your average order arrives taxed or not.
DDP or DAP: who pays at the door
| Model | Who pays taxes and duties | Customer experience | What it requires in Adobe Commerce |
|---|---|---|---|
| DAP / DDU (Delivered at Place) | The customer, on receiving the package, plus the courier's fee | Surprise at delivery, refusals and returns | Clear notice at checkout that charges will be due on delivery |
| DDP (Delivered Duty Paid) | The seller collects them at checkout and settles through the courier or a customs broker | Known final price, lower refusal rate | Estimating taxes and duties at checkout (landed cost), usually through the tax engine or the courier's service, and GST/HST registration as a non-resident importer if you want to collect the tax directly |
For a US brand the mental shift is smaller — destination-based tax is familiar — but the federal-plus-provincial layering and the absence of exemption certificates for GST/HST are new. For a Mexican company used to SAT rules — the ones we describe in our guide to ecommerce in Mexico — the change is twofold: tax is determined by destination, and there is no CFDI equivalent stamping every sale. Our guide to the Canadian ecommerce stack covers the logistics and payments that go with this decision; our nearshore model from Mexico explains how we run projects for clients in Mexico, the US and Canada.
Common mistakes when configuring Canadian taxes in Adobe Commerce
| Mistake | Consequence | How to avoid it |
|---|---|---|
| Calculating on the billing address | The wrong province's tax on every order shipped to another province | Tax Calculation Based On = Shipping Address |
| A single "Canada" rate (5% or 13%) | Overcharging in Alberta, undercharging in Atlantic Canada and Quebec | One rate per jurisdiction, two where there is a separate provincial tax |
| Shipping with no taxable class | Tax omitted on the shipping charge of every order | Tax Class for Shipping pointing to a taxable class |
| Different priorities for GST and QST (or GST and PST) | Cascading: QST is computed on the GST-inclusive price and overcharged | Same priority in the rule; verify with a test order to Quebec |
| Rounding that differs from the ERP | Cent differences on every invoice, permanent manual reconciliation | Same method (Row Total / Total) in both systems |
| A single "Tax" line in cart and invoice | Customers in Quebec and the PST provinces cannot book it; B2B complaints | Display Full Tax Summary = Yes on every store view |
| No registration numbers on the invoice | Business customers cannot claim the tax | Print them on the invoice, in the store or the ERP, whichever issues it |
| Outdated rates | Nova Scotia dropped to 14% in 2025; anyone who did not update has overcharged since | An assigned owner and a review at every provincial budget announcement |
| Tax-inclusive prices out of European habit | A different price per province, or margins eaten by the tax | Catalog Excluding Tax, tax at checkout |
| US and Canada in the same website | Tax rules stepping on each other, mixed currencies | One website per country |
| Registering for PST "just in case," or not registering once required | Unnecessary admin cost, or non-compliance | Decide province by province with real volume and your accountant |
| Quebec in English only | Bill 96 non-compliance on top of the poor experience | French store view; see our Bill 96 post |
How we approach it at WolfSellers
At WolfSellers we are an Adobe Gold Partner headquartered in Mexico City with more than a decade implementing Adobe Commerce for companies in Mexico, the US and — increasingly — Canada, under the nearshore model described in our Adobe Commerce partner hub for Canada. Tax configuration is one of the first things we review on any Canadian project, whether it is a new implementation, a migration, or a live store that arrives in support with reconciliations that do not add up.
The method is always the same:
- Tax matrix during discovery: provinces sold into, product categories with special treatment, customer types (consumer, PST-exempt business) and who issues the invoice. We build it together with the client's accountant; we do not define the tax classification, we implement it.
- Native vs. external engine decision using the criteria in the table above, budgeted from the start.
- Configuration and ERP mapping: classes, rates, rules, display settings and the mapping of every rate to the ERP's tax code, versioned with the integration.
- Testing by jurisdiction: one order per province and territory, with taxable product, zero-rated product, shipping and discount, reconciled against the ERP.
- Operations: an owner for rates, an alert on provincial budget announcements, and a review of the first return with the accountant.
If you are opening Canada from the US or Mexico, or already sell there and the numbers do not reconcile, we invite you to start with a free discovery with our consulting team: we review your current configuration, your website structure and your ERP integration, and tell you what to change before an audit finds it. Everything about how we work with Canadian companies is on our Adobe Commerce partner hub for Canada.
Frequently asked questions about Canadian sales tax in Adobe Commerce
Do I need to register for GST/HST if I sell into Canada from the US or Mexico?
It depends on what you sell and how much. If you sell digital products or services to Canadian consumers, the CRA's simplified regime in force since July 1, 2021 requires you to register and charge GST/HST once you exceed CAD 30,000 in taxable sales over twelve months, and Quebec has had an equivalent QST regime since 2019. If you ship physical goods from outside Canada and are not registered, GST and, where applicable, the provincial portion are collected at the border from the importer — your customer — through the courier; registering voluntarily and operating as a non-resident importer lets you collect the tax at checkout and offer a DDP experience. PST provinces also have their own registration rules for out-of-province sellers, with low thresholds in British Columbia. The specific decision — which registrations, when, under what structure — belongs with an accountant practicing in Canada; what the store must do is be ready to charge and itemize correctly when the time comes.
How should I display prices in a store for Canada: with or without tax?
Tax-exclusive in the catalog, with tax added and itemized in the cart, at checkout, on the invoice and in the confirmation email. That is the Canadian market convention — the same as the US and the opposite of Europe. In Adobe Commerce you set Catalog Prices and Shipping Prices to Excluding Tax and the cart and order display options to excluding tax as well, with Display Full Tax Summary enabled so Quebec and the PST provinces see two separate lines. If you sell in Quebec, keep in mind that its consumer protection legislation broadly requires advertising the total price excluding taxes: mandatory fees cannot appear only on the last screen.
Is shipping taxed in Canada?
Yes, as a general rule. When you sell a taxable good and charge for shipping, the shipping charge is part of the same supply and is taxed at the same rate as the good in the destination province: 13% in Ontario, 5% + 9.975% in Quebec, 5% + 7% in British Columbia. In Adobe Commerce that requires Tax Class for Shipping pointing to a taxable class and Shipping Prices set to Excluding Tax; with the shipping class left at None, every order under-remits. Mixed cases — carts with taxable and zero-rated goods, conditional free shipping — should be validated with your accountant and tested explicitly.
How do I handle Quebec in Adobe Commerce?
With two separate rates — GST at 5% and QST at 9.975% — assigned to the province of Quebec within the same rule and at the same priority, so both are calculated on the pre-tax price rather than cascaded (the cascade was eliminated in 2013; reproducing it overcharges). On top of that: Display Full Tax Summary enabled so the customer sees both lines, the QST registration number printed on the invoice next to the GST/HST number, the rounding method aligned with the ERP because QST's three decimals produce cent differences, and a French store view compliant with Bill 96, which we cover in a separate post. QST is administered by Revenu Québec, not the CRA, so registration and filing are separate processes.
Should I use Adobe Commerce's native engine or Vertex/Avalara?
If you sell only in Canada, with a catalog of few special categories and few exempt customers, a well-configured native engine is enough: thirteen jurisdictions with stable rates, and no external dependency added to the checkout. An external engine is justified when the US enters the picture — thousands of jurisdictions and economic nexus rules — when you sell on several marketplaces, when you manage dozens of exemption certificates per province, or when you want the provider to prepare the returns. The Vertex integration ships with the Adobe Commerce 2.4 distribution and Avalara AvaTax installs from the Marketplace; both require a subscription with the provider and a defined policy for API timeouts and failure behavior at checkout.
What about taxes when I sell through marketplaces?
Since July 1, 2021, in several scenarios the platform operator is the one required to register, collect and remit GST/HST on sales that non-registered vendors make through it — notably for digital products and for goods stored in Canada and sold through distribution platforms — and Quebec has equivalent provisions for QST. That does not eliminate your obligations on your own site or in the PST provinces, and the CRA defines precisely which transactions fall into each case: confirm it with your accountant and with each marketplace. In practice, what it demands in Adobe Commerce is keeping the channels separate in the books — an order coming from the marketplace arrives with tax already determined by the platform — so the ERP neither remits the same tax twice nor misses the tax on your own store's sales.
Related services
If this topic is relevant to your business, these services from WolfSellers can help you implement it:


