Canada · Free chart of accounts template

Ontario Agency + Consultancy Chart of Accounts for Xero (Free)

Free Xero chart of accounts for Ontario agencies: contractor coding, pass-through ad spend, insurance RST and home office, with import CSV.

By ExpenseFlow team
· 6 July 2026

Free download · no email required

CSV with per-account Xero tax defaults for a services business billing time and passing through spend.

Download chart of accounts (CSV)

Agencies and consultancies run lean charts: no inventory, few assets, and almost everything in people and platforms. The tax texture is still very Canadian, because contractor invoices arrive both with and without HST, clients sit in provinces with different rates, and the big ad platforms bill under rules that decide whether their tax is claimable at all. This Xero chart for an Ontario agency codes each of those cases at the account level.

People costs, split by tax reality

Freelancer and contractor costs defaults to ON - HST on Purchases: a registered Ontario contractor bills 13%, and the credit comes straight back. The listed alternative, the custom Out of Scope rate, exists because small suppliers below the registration threshold bill clean, and their invoices carry no credit. The account note frames the working habit: registration status is per-contractor metadata your bookkeeping should know, not a surprise at filing time.

Pass-through media and ad spend lives in cost of sales, apart from your own marketing. Client-billed Google, Meta, and programmatic spend is margin-relevant and tax-ambiguous: platforms billing from Canadian entities charge 13% you can claim, while foreign-billed spend under the simplified regime charges tax you cannot. The account keeps both the spend and its treatment auditable per campaign.

Selling time across provinces

Services income defaults to ON - HST on Sales and lists the alternatives that place-of-supply rules make routine. Services untied to a physical location take the client’s province: 13% for the Toronto client, 5% GST for the Calgary one, and zero-rated for many non-resident clients. Xero’s Canadian edition seeds every province’s sales rate, so each invoice is a selection, not a workaround.

The overhead accounts with Ontario texture

  • Professional liability insurance: exempt from GST/HST, but Ontario’s 8% RST typically loads the premium, unrecoverable by design.
  • Professional dues and memberships: default 13% with a full credit for association dues; recreational club memberships are the poisoned variant where no ITC is allowed at all, so they stay in their own account in the base chart.
  • Home office costs: Out of Scope, since workspace-in-the-home claims are an income tax calculation, not coded supplies.
  • Software subscriptions: 13% default with the simplified-regime caution for foreign SaaS; give vendors your GST/HST number and the problem disappears.
  • Meals and entertainment: 13% on the receipt, half the ITC for most businesses; client dinners live here.

Getting it into Xero

  1. Add the three custom 0% rates (Zero Rated, Exempt, Out of Scope) under Tax settings; the Canadian edition ships only the provincial pairs.
  2. Import through Accounting, Chart of accounts, Import, and confirm rates match on the preview.
  3. Keep the readable CSV in your onboarding docs; its notes column briefs each new bookkeeper on the contractor and platform rules.
  4. Quarterly, sweep the contractor account for suppliers whose registration status changed.

Rebilled costs are the last recurring judgment call. When travel, stock assets, or print bought for a client are re-invoiced as part of your service, the rebill normally takes on your service’s own tax treatment rather than inheriting the original supplier’s; true agent-style disbursements, where you merely pass a cost through untouched, behave differently and are worth a one-time conversation with your accountant. Keeping rebills on their own invoice lines makes either answer easy to apply consistently.

Most agency documents are small and repetitive, which is where coding drifts. Hubdoc captures and stores each one. ExpenseFlow reads the invoice, distinguishes registered contractors from small suppliers and Canadian-billed platforms from simplified-regime ones, applies the client-province logic where relevant, and posts into Xero against these accounts. Dext enforces supplier rules for the recurring stack.

QuickBooks version: Ontario agency chart of accounts for QuickBooks. Rate semantics: the Ontario Xero tax rates reference.

Questions, answered

Common questions

How do I code a freelancer who does not charge HST?

With the custom Out of Scope rate on the same freelancer account, and no input tax credit, because there was no tax. Canadian small suppliers under $30,000 in revenue can legitimately bill without registering. What deserves attention is the transition: a contractor who crosses the threshold should start charging 13%, and their old no-tax coding should not linger.

Whose tax rate applies when my client is in another province?

For services not tied to a location, the client's province sets the rate. A Toronto agency invoicing a Vancouver client is not charging Ontario HST but the client-province treatment; Xero's seeded provincial sales rates cover each case. The services income account lists the alternatives for exactly this reason.

Why does media spend get its own cost-of-sales account?

Because client-billed platform spend has to be visible for both margin and tax reasons. Whether Google or Meta bill with Canadian tax depends on their registration and yours; the pass-through account keeps that spend, its credits, and your markup separable from your own overheads.

What is the RST note on the insurance account?

Professional liability premiums are exempt from GST/HST, but Ontario applies its own 8% retail sales tax to most insurance premiums. That RST is not recoverable and simply increases the cost, so the account note stops anyone hunting for a credit that does not exist.

Keep exploring

Stop filling in spreadsheets by hand

A template is a starting point. ExpenseFlow captures receipts, reads the tax automatically, and posts the cleaned record to Xero or QuickBooks Online, so the log keeps itself.

Start free trial