HST Invoice Automation for Canadian Accounting Firms (2026)

How HST invoice automation works for Canadian firms: place-of-supply rules, the CRA's ITC tiers, Quebec TPS/TVQ, and line-item coding with Tailride.

Tags
#hst invoice automation#gst hst coding#input tax credit documentation#quebec tps tvq#invoice automation canada#cra itc requirements
HST Invoice Automation for Canadian Accounting Firms (2026)

Last updated: July 2026 · ~11 min read · Published by Tailride

Most GST/HST coding errors are not carelessness. They come from a workflow that assumes the tax on an invoice follows the supplier, when in Canada it follows the supply itself. The same vendor charges 5% into Alberta and 15% into New Brunswick, and one invoice can carry taxable, zero-rated and exempt lines together. And Quebec runs a second tax, administered by a different authority.

Layered on top is something firms notice only during a review: the CRA's documentary requirements get stricter as the invoice gets larger, and above $500 they ask for things a header-only capture tool never stores. This guide covers what the rules say, and what HST invoice automation has to do to satisfy them.

A note before the detail: this is general information for practitioners, not tax advice. Rates and rules change, and the CRA's own guidance is the authority. Confirm anything you plan to rely on.

Short answer

HST coding resists simple automation because the correct rate depends on where the supply landed, not who issued the invoice, and because a single document can hold more than one tax treatment. Any tool you put in front of the ledger has to read tax per line, keep the source document attached, and capture the fields the CRA asks for at the invoice's value tier.

Header-only capture, meaning supplier, date and total, cannot do that. It fails the CRA's own $500 requirements on its face.


Why the rate does not follow the supplier

Canada's federal GST is 5% everywhere. What sits on top of it changes by province, and place-of-supply rules decide which province applies.

Province or territoryTaxRateCoding note
OntarioHST13%One harmonized tax line
Nova ScotiaHST14%Reduced from 15% on 1 April 2025
New BrunswickHST15%One harmonized tax line
Prince Edward IslandHST15%One harmonized tax line
Newfoundland and LabradorHST15%One harmonized tax line
QuebecGST + QST5% + 9.975%Two tax lines, two authorities
British ColumbiaGST + PST5% + 7%PST is not recoverable as an ITC
ManitobaGST + PST5% + 7%PST is not recoverable as an ITC
SaskatchewanGST + PST5% + 6%PST is not recoverable as an ITC
Alberta, YT, NT, NUGST only5%Single federal tax line

Two consequences follow for a practice.

The same supplier produces different tax codes. A consultant billing an Ontario client charges 13%; billing a Manitoba client, 5% GST plus 7% PST, which is not HST at all. A rule that says "this vendor equals this tax code" produces errors the first time a client's delivery address changes.

Provincial sales tax is not an input tax credit. In BC, Manitoba and Saskatchewan the provincial portion is a cost, not something to recover. Coding it as recoverable overstates the claim. Coding the whole amount as an expense understates the GST you were entitled to. Both are wrong in different directions, and both come from treating one number on the invoice as one tax.


Taxable, zero-rated and exempt are not the same thing

This is the distinction that decides whether an input tax credit exists at all, and it is the reason the CRA asks about the status of individual supplies.

Taxable supplies carry GST or HST at the applicable rate. Your client charges it, and claims ITCs on the related purchases.

Zero-rated supplies are taxable, but at 0%. Basic groceries, prescription drugs, medical devices, most agricultural and fishing products and exports fall here. No tax is charged, and ITCs on the inputs are still available.

Exempt supplies sit outside the tax altogether. Long-term residential rent, most health and dental services, childcare, most financial services and many educational services fall here. No tax is charged, and no ITC is available on the related inputs.

Here is the practical problem. On the page, a zero-rated line and an exempt line look identical: both show no tax. In the ledger they are opposites. One preserves your client's credits; the other removes them.

A capture tool that records "tax: $0.00" has recorded the number correctly and the meaning not at all. That is exactly the gap the CRA's per-supply status requirement is aimed at, and it is why the distinction has to survive extraction rather than being reconstructed later by whoever reviews the batch.


What the CRA requires on the document

This is the part that decides whether automation is a convenience or a compliance question, and it is more specific than most summaries suggest. The CRA sets three tiers based on the total sale, and the requirements accumulate (CRA: Input tax credits).

Under $100 the document needs the supplier's business or trading name, the invoice date, and the total amount paid or payable.

From $100 to $499.99 it also needs the supplier's GST/HST registration number, an indication of the total GST/HST charged (or that the amount includes it at the applicable rate), and, the one that matters here, an indication of the status of each supply where the invoice includes both taxable and exempt supplies.

At $500 and over it further needs the buyer's name, a brief description of the property or services, and the terms of payment.

ca-invoice-annotated.webp

Read those last two requirements again with a capture tool in mind. From $100, the CRA contemplates a document where different lines carry different tax status, and expects that status to be identifiable. From $500, it expects a description of what was actually supplied.

A tool that stores "Supplier X, 14 July, $842.30" holds none of that. The invoice itself may satisfy the rules perfectly well, but your structured record does not reflect it, and the coding built on that record is a guess.

Worth knowing alongside this: for most registrants ITCs can be claimed up to the due date of the return for the last reporting period ending within four years of the period in which the credit first became available, dropping to two years for listed financial institutions and businesses with threshold amounts above $6 million. There is time to fix an error you find. There is no time to fix an error you never see.

How long to keep the records

The CRA generally expects business records, including the invoices supporting your ITC claims, to be kept for six years from the end of the last tax year to which they relate. Digital copies are acceptable provided they are legible and complete, which is what makes a paperless workflow safe rather than risky - as long as the original document stays attached to the coded record rather than living in a separate folder someone has to find later.


Quebec: two taxes, two authorities, two lines

Quebec is where tools built for single-tax provinces come apart. Businesses there deal with TPS (the GST, administered federally) and TVQ (the Quebec sales tax, administered by Revenu Québec). They are separate levies with separate registration numbers, and confirming a QST number is done through Revenu Québec rather than the CRA registry.

For coding, that means two distinct tax lines mapped to two distinct accounts. Collapse them into one figure and neither authority's return reconciles.

Two practical wrinkles compound it. French-language invoices label the fields inconsistently across vendors - TPS/TVQ incluses, taxes incluses au prix, T.P.S. - so a tool matching on fixed keywords misses them. And invoices that show only a combined tax-inclusive total require the two rates to be worked back out rather than read off.

If you have Quebec clients, this is the first thing to test on real documents, whichever tool you are considering.


Where header-only capture breaks the claim

Put the three sections together and the failure is concrete rather than theoretical.

A supplier bill arrives for $1,240: materials at the standard rate, a zero-rated item, and a delivery charge. Header-only extraction gives you a vendor, a date and a total, and the tax as one number. To code it correctly someone opens the PDF, reads the lines, splits them, decides the treatment for each, and types the result into the ledger.

That manual step is where the errors live, and it scales with your client book rather than with your fees. It also means the structured record you keep does not match the document you filed on - which is what a review will look at.

Line-level extraction changes what is recoverable, because it lets you:

  • Identify which lines are taxable, zero-rated or exempt, and code each accordingly instead of applying one rate across the invoice.

  • Split mixed-supply invoices where a single supplier charges tax on some items and not on others.

  • Separate a non-recoverable provincial component from the recoverable federal one in PST provinces.

  • Keep a record that matches the invoice line by line if a claim is ever questioned.


A worked example: one bill, three treatments

A supplier invoice arrives from an Ontario vendor for $1,240 before tax. It looks like one document. It is three coding decisions.

LineNetTreatmentTaxWhy
Office equipment$800.00Taxable, 13% HST$104.00Standard-rated supply, ITC recoverable
Bottled water and coffee for the kitchen$340.00Zero-rated$0.00Basic groceries, no tax charged, inputs still creditable
Courier delivery$100.00Taxable, 13% HST$13.00Freight is standard-rated

ca-record-shape.webp

Header-only extraction gives you: Ontario vendor, one date, $1,357.00, tax $117.00. All of it true, none of it codeable. Someone still has to open the PDF and decide which of the three lines carries what.

Now change one variable. The same vendor ships the same order to a client in Saskatchewan. The equipment and courier lines pick up 5% GST plus 6% PST, and the PST portion is not recoverable - so the split is no longer just between accounts but between what your client can and cannot claim back.

Neither version is unusual. Both are wrong if the tool treats the invoice as a single number.


How automated line-item coding handles it

text_logo_black.png

Tailride sits in front of QuickBooks and Xero rather than replacing them. An invoice arrives from a connected Gmail or Outlook account, a supplier portal or an upload, and it is read to the line level rather than the header.

Each line gets both an account from your chart of accounts and its own tax rate, taken from the document rather than inferred from the vendor. That is the mechanic that matters for Canada: a bill mixing standard-rated and zero-rated lines comes through split, not averaged. The detail on how the coding is derived is on our automatic coding page.

The original file stays attached to the coded record, so the structured data and the source document travel together, which is the shape any documentary requirement wants.

Coding improves with use. Correct a line once and the rule is kept against that supplier and that line description, for that client, so the next invoice from the same vendor arrives already coded. Because French and English documents are both read without pre-sorting, a bilingual client base does not need a separate queue.

For practices, accountant accounts give a master dashboard across clients with a separate dashboard per client, and there is more on the workflow side on our AP automation page.

One thing to verify for yourself: if you carry Quebec clients, test how any tool, this one included, maps TPS and TVQ into your chart of accounts before you commit. Dual-tax mapping is the single most common place automated coding goes wrong in Canada, and it deserves a real invoice rather than a demo.

You can start free with 10 invoices a month and put one through.


Where GST/HST coding usually goes wrong

The same handful of errors account for most of what gets corrected on review:

  • Treating zero-rated as exempt, or the reverse. Both show no tax on the document. Only one preserves the client's input tax credits.

  • Coding PST as recoverable. In BC, Manitoba and Saskatchewan the provincial part is a cost. Claiming it overstates the return.

  • Applying the supplier's home rate. Place of supply decides the rate, not the vendor's address, so the same supplier can correctly issue 5%, 13% and 15% invoices in the same month.

  • Collapsing TPS and TVQ. One combined figure satisfies neither Revenu Québec nor the CRA.

  • Missing the registration number on documents over $100. Without it the ITC has no support, however clear the total is.

  • Keeping the total but not the description on documents over $500. The CRA asks for a brief description of what was supplied. A stored total is not one.

Most of these have the same root: a record built from the header rather than the lines. Fix the extraction and the majority stop occurring.


What to check when choosing a tool

  • Does it extract at the line level, or only the header? Ask the vendor directly. "Extracts invoice data" often means supplier, date and total.

  • Does it read tax per line, or apply one rate to the document? Test with a mixed-supply invoice, not a clean one.

  • How does it handle Quebec? Two tax lines, mapped to two accounts, is the requirement. Anything that collapses them will need correcting every time.

  • Does the original document stay attached to the record? Structured data without the source is half a record.

  • Does it learn per client? Practices carry many charts of accounts. A tool that codes the same way for every client is not learning, only defaulting.

  • Does it handle French? Roughly a fifth of the country files in it, and vendor labelling is inconsistent.

The honest test for any of these is a messy batch from a real client with mixed rates across provinces. A demo file will pass everything.


Frequently asked questions

What does the CRA require on an invoice to support an ITC?
It depends on the size of the sale. Under $100 you need the supplier's name, the date and the total. From $100 you also need the supplier's GST/HST registration number, an indication of the GST/HST charged, and the status of each supply where taxable and exempt items appear together. At $500 and over you additionally need the buyer's name, a brief description of what was supplied, and the terms of payment.

Why is header-only capture a problem for HST?
Because from $100 the rules contemplate per-supply tax status and from $500 they ask for a description of the supply. A record holding only supplier, date and total does not carry either, so the coding built on it is inferred rather than evidenced.

How does the correct HST rate get decided?
By place-of-supply rules, which point at where the supply is considered to have occurred rather than where the supplier sits. That is why one vendor can correctly charge 5%, 13% or 15% on otherwise identical work.

Is provincial sales tax recoverable as an input tax credit?
No. In British Columbia, Manitoba and Saskatchewan the PST portion is a cost rather than a recoverable credit, which is one reason splitting the federal and provincial components matters at the line level.

How long do I have to claim an input tax credit?
For most registrants, up to the due date of the return for the last reporting period ending within four years of the period in which the credit first became available. It is two years for listed financial institutions and for businesses with threshold amounts above $6 million.

What is different about Quebec?
Quebec charges TPS and TVQ as separate taxes administered by different authorities, so they need two tax lines mapped to two accounts. QST registration numbers are confirmed through Revenu Québec rather than the CRA.


The takeaway

Canadian GST/HST coding is hard for a structural reason: the tax belongs to the supply, not the supplier, and one document can hold several. The CRA's own requirements assume as much: per-supply status from $100, a description of what was supplied from $500.

A capture tool that stops at the header cannot meet that shape, and the gap gets filled by someone on your team reading PDFs. That is the work HST invoice automation is there to remove. Line-level extraction with the tax read per line and the original document kept alongside is what turns coding into a review step.

If you want to see how your own documents come through, start free and run a mixed-rate supplier bill through it.

This article is general information for practitioners, not tax advice. Confirm current rates and requirements with the CRA, Revenu Québec, or your own professional judgement.


Related guides


Sources: CRA - Input tax credits · CRA - Charge and collect the GST/HST: which rate to use · Revenu Québec

Tailride SARL
6 rue Henri M. Schnadt2530Fentange
+352661622171mike@tailride.so
Tailride