Skip to main content
Construction management · Canada

Ontario's rules are in the data model.

JobSite is construction-management software for Canadian builders. The 10% statutory holdback, 13% HST and Ottawa's zoning references are structures in its database rather than notes in a memo field — and the estimate, the invoices, the holdbacks, the daily logs and the client's messages all hang off one project record.

Pre-release

JobSite is pre-release and is being built with its first customer.

Prompt payment

From a proper invoice to money in the account

Ontario prompt-payment clocks, from delivery of a proper invoice
ClockWhat the Act requires
Day 0A proper invoice is delivered to the owner.
Day 28The owner must have paid the contractor.
+7 daysThe contractor must have paid its subcontractors, counted from the day it was paid. A dispute is raised by notice of non-payment and may go to adjudication.

Construction Act, R.S.O. 1990, c. C.30, Part I.1 (ss. 6.1–6.9); Part II.1 (adjudication)

Statutory holdback

The ten percent you cannot spend yet

Ontario statutory holdback, from retention to release
ClockWhat the Act requires
10%Held back from the value of work certified, on every payment.
Day 0The certificate of substantial performance is certified and published.
Day 60The lien preservation period expires. With no liens preserved, the basic holdback becomes payable.

Construction Act ss. 22, 26, 31, 32

Ontario law, not a JobSite feature

General information about Ontario's construction payment regime, not legal advice. Obligations depend on your contracts — read the longer explanation.

The numbers that are actually in the code

10%
Ontario statutory holdbackDefaulted and computed in code from the contract value or invoice total, then held and released as double-entry ledger movements.
13%
Ontario HSTComputed deterministically in code alongside contingency and margin — never by a language model.
1
Sign-in pageClient accounts land in their project portal; staff land in the builder workspace.
Who it is for

The builder, their client and their trades, on the same record

One sign-in page serves the whole platform and routes by the account's role. What each person sees is scoped to what they are entitled to see.

Builder

The workspace

Staff accounts land in the builder workspace: projects, estimates, budgets, permits, invoices and the ledger. Dense and tabular, for someone at a desk.

Client

The project portal

Each client can be invited to a portal scoped to their own project. Client accounts land there at sign-in rather than in the workspace. No verified client-portal login has happened yet, so this is what the software provides, not what anyone has done.

Trade

The trade portal

A trade-partner portal surface exists and is reached by invitation. Trade is not yet one of the roles the sign-in routes on — an account without a recognised role lands in the builder workspace — so this one is not finished.

What the software does

Described as mechanism, because there is nothing else worth saying

Every line below is a statement about the data model and the rules that govern it, checked against the code rather than against the copy that used to describe it.

The holdback is an obligation, not a memo field
Ontario's statutory holdback is modelled with a type, a percentage, an amount, a release trigger and a trigger date. Releases are triggered by substantial performance, total completion, expiry of the lien period, or by hand — each with its own date. Holds and releases post as double-entry movements against a segregated holdback account, and a database constraint refuses to let a ledger balance go negative. Amounts default to Canadian dollars.
Code owns every number in an estimate
JobSite's estimating engine is built so the language model owns scope, quantities and line descriptions while code owns the arithmetic: contingency, margin and Ontario HST at 13% are computed deterministically. Each line's confidence is derived from the estimate's own flags — a rules output, not a model's opinion of itself.
Permits, inspections and compliance items, tracked per project
Permit applications, inspections and compliance items are tracked per project against Ontario and Ottawa references, including seeded zone rules that cite City of Ottawa Zoning By-law 2008-250. Ottawa first; other municipalities are planned, not present.
Public tenders, filtered to where you actually work
Tender opportunities are ingested from the public CanadaBuys open-tender feed and filtered to Ontario and the National Capital Region, on a daily schedule.
One project row underneath all of it
Estimates, budgets, cost records, tasks, milestones, daily logs, documents, messages, permits, inspections, compliance items, invoices and holdbacks all reference the same project row. They are one record rather than separate files that have to agree.
A log that syncs twice cannot become two entries
Field capture is duplicate-safe by construction: a daily log carries a client-supplied source key with a uniqueness constraint, plus its own capture time and optional GPS. The database refuses the second write; that is a property of the schema, not a claim that the application works offline end to end, which has not been verified.
AI proposes; a person approves
Estimating, permit, cost and compliance work is proposed by governed AI jobs with a named purpose, required scopes, a prompt key and an output schema, against authorized project records only — free-text and image payloads are refused at the API boundary. The work lands in one approval queue and a person approves before anything is acted on.

The longer walkthrough · the capability directory · questions people ask

Not available today

What does not work yet, on the page where the product is described

A pre-release product has gaps. Publishing them here rather than discovering them after sign-up is the point — and a feature whose backend is unavailable must be named as unavailable in the place it is described.

Capabilities that are not available in this build, and why
CapabilityStateWhat that means
Pricing and paid plansInactive: Not publishedNo published price, no paid plan, and creating an account does not collect a payment method.
A public mailboxNeeds attention: Being provisionedNo monitored public address exists yet, so this site cannot receive a message.
Outbound and inbound emailNeeds attention: Not operatingThe send, process and mailbox routes are retired; the inbound webhook has no secret configured.
Zoning analysisInactive: Does not existPermit, inspection and compliance tracking are real. Automated zoning analysis is not, and copy claiming it has been removed.
AI bid draftingInactive: RetiredThe route returns 410 by design so it cannot emit uncited tender claims.
A model answering an AI runNeeds attention: UnverifiedNo AI provider key is present in this environment; whether a model answers depends on a platform key that has not been verified.
Passkey sign-inInactive: DisabledDisabled at the identity provider. Password, OAuth and an authenticator app (TOTP) are the sign-in paths.
Construction resources

The rules, written out, whether or not you ever use JobSite

Getting started

Create an account and set up your company

Sign-up creates an identity and an organization. It does not collect a payment method, because there is nothing to charge for yet.