Canada · Free chart of accounts template

BC Nonprofit Chart of Accounts for QuickBooks Online (Free)

Free QBO chart of accounts for BC nonprofits and charities: fund tracking, program classification, PST-as-cost coding, import CSV included.

By ExpenseFlow team
· 6 July 2026

Free download · no email required

CSV: nonprofit accounts with BC-correct QBO codes and notes on funds, programs and the PST cost.

Download chart of accounts (CSV)

Running a nonprofit’s books in British Columbia means honouring three different disciplines at once: fund accounting for the funders, GST classification for the CRA, and a provincial tax whose only interaction with the organization is making things cost 7% more. This QuickBooks Online chart of accounts gives each discipline a home without asking volunteers to become tax specialists.

Equity that answers the funder’s question

Unrestricted funds and restricted funds replace owner equity, keeping the one balance-sheet fact every stakeholder checks, whether restricted money stayed restricted, visible without a workpaper. Programs live in QuickBooks classes layered over these accounts; the chart stays small so the class dimension does the fine-grained work.

Revenue: classify once, code forever

Donations and grants code Out of scope, untouched by either tax. Program and membership revenue defaults to GST BC at 5% with E, Z, and GST/PST BC as first-class alternatives, because nonprofit income spans all four: exempt programs, zero-rated sales, GST-only services, and PST-collecting merchandise for registered sellers. The policy is one classification per stream, made at launch, recorded on the coding sheet, never re-argued per receipt. The boundary cases, benefit-bearing sponsorships, galas mixing donation and supply, memberships with real perks, are FAQ material precisely because they recur.

Costs: the GST fork and the PST fact

Federal GST keeps its three exits (credit, rebate, cost) and the program delivery costs account carries the rebate flag for qualifying bodies. Provincial PST has one exit: cost. The accounts where it lands are predictable and worth budgeting plainly:

  • Software subscriptions and telephone and internet at GST/PST BC; BC taxes both, and for a desk-bound organization these are the whole provincial bill.
  • Program equipment and physical purchases inside program delivery costs, where the 12% alternative is listed and its PST share is program expense.
  • Services, fundraising, and advertising default GST BC, the credit-or-rebate fork applying to their 5%.
  • The constants: half-credit meals, exempt insurance and bank fees, out-of-scope payroll and permits.

Standing it up and keeping it stood

  1. Enable sales tax; BC’s codes provision natively.
  2. Import the chart (Settings, Import data, Chart of accounts); the readable CSV becomes the coding sheet and, annotated, the treasurer-transition document.
  3. Configure classes per program; run budget-versus-actual by class for the board.
  4. Code volunteer reimbursements to the underlying expense accounts with true treatments, keeping rebate inputs real.
  5. Hand the auditor the annotated sheet at engagement start; the classification rationale answers half the walkthrough.
  6. Budget grant applications PST-inclusive; the 7% on program goods is a real delivery cost.

Registration stays a considered choice: public service bodies get a friendlier small-supplier threshold, and the classification evidence this chart accumulates is what makes the decision reviewable rather than folkloric.

Social enterprises add the fun edge cases. A thrift shop or charity store selling taxable goods steps into ordinary retail rules for those sales, potentially collecting GST and, if registered for it, PST, while its donated inventory arrived outside both systems entirely. The program revenue account’s classification discipline covers it: the store is one stream, classified once, with its own class in QuickBooks, and the organization’s exempt programs keep their treatment beside it undisturbed.

Consistency is the scarcest nonprofit resource, and it leaves with people. Dext pins recurring suppliers to rules that survive turnover. ExpenseFlow reads each document, applies the out-of-scope, exempt, GST-only, and 12% treatments encoded here, and posts coded entries into QuickBooks, so busy seasons and board transitions do not become restatement seasons. Hubdoc keeps source documents filed against the audit trail.

Running Xero? That build, including BC’s required custom rates, is at BC nonprofit chart of accounts for Xero. Codes are explained in the BC QuickBooks sales tax reference.

Questions, answered

Common questions

What code do donations and grants take?

Out of scope. Money given freely is not a supply under GST or PST, so nothing attaches. The test remains consideration: sponsorships with benefits, gala tickets, and merchandise cross into program revenue where classification applies.

How does BC PST affect a charity's budget?

As a quiet cost increase on everything physical and digital: goods, software, and telecom carry the 7% with no recovery mechanism, no ITC and no provincial rebate equivalent. Programs that buy equipment or licenses should budget the PST as part of the price.

Which purchases still produce recoverable tax?

The GST side, subject to the usual nonprofit fork: input tax credits for commercial-activity costs, a public service bodies' rebate for qualifying organizations' exempt-activity costs. The program-costs account note keeps that GST-only fork visible; PST never joins it.

Can QuickBooks report by program and by fund?

Yes, with the structure this chart assumes: restricted and unrestricted funds as equity accounts for the balance-sheet story, and QuickBooks classes carrying program detail over a compact account list. Budget-versus-actual by class then answers most board and funder questions directly.

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