copilotBC Sign in

Built for BC

Inspection-ready, by design.

Every screen in copilotBC was built against the actual BC regulations that govern driving instructors — Motor Vehicle Act Regulations Division 27, the Personal Information Protection Act, and the Electronic Transactions Act. This page is the short version. The long version is the codebase.

MVAR Div 27 PIPA ETA s.11 Hosted in Toronto

copilotBC's forms and records are based on official ICBC and BC government forms and are designed to align with the regulations described here. They are not official ICBC documents and copilotBC is independent and not endorsed by ICBC. Official forms and requirements can change before we update ours, so please confirm each export against the current official version before you rely on it. See our Terms of Service.

01 — Records

Records aligned with MVAR Division 27, captured by default.

BC requires driving instructors to keep a complete record of every lesson for six years. copilotBC captures the fields MVAR Division 27 called for at the time of writing — so you don't have to remember what it asks for — though you should always confirm against the current regulation.

Student identity
Name, driver's licence or learner permit number, date of birth, mailing address, phone.
Per-lesson detail
Date, start time, end time, duration, subject covered, lesson type, fee charged — all in 24-hour clock.
Instructor identity on every record
Your ICBC instructor licence number is stamped on every printed record automatically.
Night-driving flag
Tracked per-lesson and surfaced on the printed record and the GLP practice driving log.
Six-year retention notice
Printed on every Student Training Record export, with the instructor attestation block ready to sign.
One-tap inspection export
A Student Training Record (based on MVAR 27.06*) and a consent form (based on ICBC DTC205*) generate directly from the data you already entered.

02 — Privacy

Your students' data stays in Canada.

BC's Personal Information Protection Act (PIPA) sets the privacy bar for everyone collecting personal information in the province. We treat the bar as the floor, not the ceiling.

Where

Toronto, Canada.

All student data lives in Google Cloud Firestore's northamerica-northeast2 region. Backups stay within the same region. Nothing routes through US infrastructure.

Who

Only you. Per-user isolation.

Every query is gated server-side by your authenticated user ID. There is no shared database, and we do not access your students' files in the course of normal operations.

How

HTTPS everywhere. Field-level validation.

Strict Content-Security-Policy, HSTS, and server-side validators on every field. The Firestore rules — not the app code — are the final gatekeeper.

Rights

Access, correction, deletion.

PIPA gives individuals a right of access (s.23) and correction (s.24). Every student dossier is exportable as JSON from Settings. Email our privacy contact for anything outside the in-app flow.

03 — Signatures

Electronic signatures the way BC accepts them.

BC's Electronic Transactions Act (s.11) treats a standard electronic signature — identity, intent, link to the record, timestamp — as equivalent to ink, with limited exceptions. copilotBC implements the full pattern.

  1. 1

    Identity

    Instructor signs as their authenticated Firebase user. Student types their full name, fuzzy-matched against the record we already hold.

  2. 2

    Intent

    Two explicit consent boxes — accuracy of the report, consent to electronic storage. Neither is pre-checked.

  3. 3

    Link to record

    The signature is written straight into that lesson's record. The instant it's signed, the record locks at the server — it can't be edited, un-signed, or deleted — so the signature stays bound to exactly what was signed.

  4. 4

    Timestamp

    The signing time is recorded by the server, not the device — clock-tampering on the phone doesn't change the signature.

Cross-device signing works the same way: the student scans a QR on their own phone, the consent flow runs in their browser, and the signature comes back to your record through a server-enforced 10-minute, single-use window. Photographed QR codes from a coffee shop wall can't replay.

Honest scope

What copilotBC doesn't (yet) do.

We'd rather be specific about gaps than vague about coverage. Here's what we're up-front about:

  • MV2910 Declaration of Completion — only required for GLP-approved schools. We capture the underlying lesson data; the paper form is filled separately for now.
  • Multi-instructor school mode — copilotBC is solo-instructor for v1. Schools with shared records will get a dedicated workspace tier later.

Built once. Organised for every inspection.

copilotBC is independent and not affiliated with or endorsed by ICBC. Its forms are based on official ICBC/BC government forms but aren't official ICBC documents, and we can't guarantee any export is fully compliant — confirm each one against the current official version. See our Terms of Service.