CLIENT: Laurentide Pass Engineering🇨🇦Canada

Birchbark - Expense Management with GST/HST and QST Recovery Built In

Claim-First Expense Platform for a Canadian Engineering Firm

Designed and built a clickable expense management platform for a Canadian consulting engineering firm: approvers decide claims line by line with policy flags, finance audits flagged and sampled claims, GST/HST and QST are read from each receipt for input tax credits, and approved claims are reimbursed in EFT payment runs.

Scope of Work
Product design, UI build and clickable demo
Industry
Accounting & Tax / Expense Management
FinTechTaxEnterprise
Compliance & Certifications
Income Tax ActExcise Tax Act (GST/HST)Input Tax Credit Information RegulationsQuebec Sales Tax (QST)PIPEDAPIPA (Alberta and BC)Quebec Law 25Charter of the French LanguageCPA Standard 005

Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.

Impact

5 Screens
Clickable end to end

Dashboard, approvals inbox, claim review, finance review queue and payment runs, with receipt viewer, flag detail and payment run panels. Every one of the 29 demo claims opens its own review page.

11 Flag Types
Policy checks on every line

Duplicate receipt image, missing or invalid supplier tax number above $100, over limit, missing receipt above $25, past the 60-day window, foreign tax coded as HST, mileage off the mapped route by more than 10% and more. Approving past a blocking flag needs an override reason.

4 Tax Regimes
Read from the place of supply

HST, GST only, GST plus PST and GST plus QST, with US receipts shown as not recoverable. Meals are limited to a 50% ITC, and mileage and per diem allowances carry a notional ITC.

29 Claims
Realistic demo data

83 expense lines (56 receipts, 20 mileage trips, 6 per diems, 7 paid in US dollars) from 26 employees in 4 offices, 9 projects for 7 clients and 13 EFT payment runs.

The Problem

Laurentide Pass, a consulting engineering firm of about 640 people, ran expenses on an emailed Excel template with paper receipts posted to Ottawa from site offices. Claims took four to six weeks to reimburse, finance keyed every line into Sage and split GST, HST and QST by eye, input tax credits were lost on receipts without a supplier registration number, the same hotel folio was sometimes claimed twice, and rebillable project costs were missed on client invoices.

Our Solution

Birchbark runs the claim-first loop: employees spend their own money and claim it back, approvers decide each claim with its policy flags in view, finance audits flagged and sampled claims before release, tax is extracted per line for GST/HST input tax credits and QST input tax refunds, and approved claims are paid by EFT in scheduled payment runs.

The Challenge: Reimbursing Fast Without Losing Control

With no company cards, every control happens after the money is spent. Each claim line has to pass the firm's policy, Canadian tax rules that change by province and the approval chain, and engineers on remote sites still expect to be paid within days.

Tax That Changes by Province

Ontario and the Atlantic provinces charge HST, Alberta charges GST only, British Columbia, Saskatchewan and Manitoba add a provincial sales tax that is generally not recoverable, and Quebec adds QST. The place of supply decides what can be claimed, and US sales tax cannot be claimed at all.

Receipts That Must Prove the Credit

The Input Tax Credit Information Regulations set what a receipt must show by amount band, including the supplier's GST/HST registration number, and QST refunds need the QST number. Year end was too late to find out a receipt did not qualify.

Allowances and Reimbursements Taxed Differently

A reimbursement with a receipt is generally not a taxable benefit, while an allowance is taxable unless it is reasonable. Per-kilometre rates switch band at 5,000 km a year, a trip cannot be paid as both mileage and fuel, and meals carry a 50% limit for both income tax and ITCs.

Duplicates, Delegates and Bank Changes

The same folio could be claimed by the engineer and by the project lead who booked it. Approvers go on site for weeks, and a changed bank account just before a payment run is a classic fraud signal.

Our Approach: From Canadian Expense Rules to a Clickable Platform

01

Spec and Rules Research

Mapped 8 user roles, 40 screens (28 staff web screens and 12 screens in the English and French employee mobile app) and the data model for entities, employees, receipts with OCR results and image hash, expense lines, claims, flags, delegations, payment runs, exports and rebill batches. Wrote down the rules the design follows: CRA guidance on reimbursements and allowances, reasonable per-kilometre rates, GST/HST input tax credits and QST refunds, notional ITCs under section 174 of the Excise Tax Act, the 50% meals limit, Bank of Canada exchange rates, six-year record keeping with imaged receipts, PIPEDA, PIPA, Quebec Law 25 and the Charter of the French Language.

02

Clickable Demo on a Production UI Kit

Built 5 key screens on a production dashboard kit: the dashboard with KPIs, claim pipeline against target ages and work by role, the approvals inbox with delegation and bulk approve of clean claims, claim review with tax, FX, mileage band and per diem detail per line, the finance review queue with tax at risk and a duplicates view, and payment runs with pre-release checks and CPA 005 file details. All actions run on local state.

03

What a Production Build Adds

Receipt OCR (such as Veryfi, Mindee or Amazon Textract), route distances from Google Maps or Mapbox, Bank of Canada daily rates, CPA 005 EFT files or Plooto, exports to QuickBooks Online, Sage Intacct or NetSuite, HRIS sync, single sign-on and push notifications. An audit log of every approval, override, tax correction and payment release, rates confirmed with the client's tax adviser, the employee mobile app and the remaining screens for tax recovery, exports, rebilling, policy, reports and settings.

Why It Works: Every Line Checked Before It Is Paid

Flags With the Value and the Limit

Each flag states the rule and the numbers behind it, such as a Calgary hotel at $289.00 a night against a $240.00 limit, next to the employee's justification. The inbox can show only clean claims, and bulk approve skips any claim with a blocking flag.

Tax Coded Per Line, Not at Year End

Every line shows the tax extracted, the supplier registration check and whether the ITC is full, limited to 50% or not available. The review queue totals the tax at risk on each claim, so missing numbers are chased while the receipt can still be replaced.

Duplicates Caught by the Receipt Itself

A duplicate flag matches the receipt image hash across employees, or the same merchant, amount and date, so a hotel folio claimed by two people is blocked on both claims, and the duplicates view lists every match for the finance reviewer.

Payments Released With Checks

A payment run needs a second approver before the CPA 005 file is generated, warns when a payee changed bank details in the last 48 hours, shows bank accounts masked to the last 3 digits and tracks each EFT return with its reason.

Related case studies

View all: Accounting & tax
Logo
Oceanlab

Enterprise Software Engineering - Human + AI

Languages

Locations

Global Headquarters

21 Merchant Road, 3rd Floor, Singapore 058267

Main corporate office and leadership operations

North America Office

548 Market Street, PMB 12345, San Francisco, CA 94104

Client operations and business development

India Office

402 Shivalik Shilp II, SG Highway, Ahmedabad 380015

Engineering and delivery center

© 2026 - Copyright. All Rights reserved Oceanlab