Skip to Content

Bill 96 — Francization of Québec Businesses: 6-Month Headcount Assessment, OQLF File, Committee and Minutes (Community)

Quebec Bill 96 francisation headcount register, free edition — counts the persons employed in Quebec over the six-month period that triggers registration with the Office quebecois de la langue francaise, then keeps the francisation file with every deadline computed from the event dates: registration, attestation, linguistic analysis, francisation programme, certificate. Francisation committee with half its members representing workers and mandates capped at two years, minutes register, tamper-proof event log. Every threshold and delay is a dated, sourced, editable record; an empty one blocks the finding instead of counting as zero. No hr dependency: the headcount works on Community with no HR module installed.

0.00 € 0.00 €

Free
Cette application n'est pas vendue ici : utilisez les boutons Odoo Apps Store ou Omnifloo ci-dessous.
Terms and Conditions
30-day money-back guarantee
Shipping: 2-3 Business Days

Quebec Bill 96 francisation headcount register, free edition — counts the persons employed in Quebec over the six-month period that triggers registration with the Office quebecois de la langue francaise, then keeps the francisation file with every deadline computed from the event dates: registration, attestation, linguistic analysis, francisation programme, certificate. Francisation committee with half its members representing workers and mandates capped at two years, minutes register, tamper-proof event log. Every threshold and delay is a dated, sourced, editable record; an empty one blocks the finding instead of counting as zero. No hr dependency: the headcount works on Community with no HR module installed.

View on the Odoo Apps StoreTry it on Omnifloo

Overview

Loi 96 — the headcount that triggers everything, and that nobody knows how to keep

The Charter of the French Language does not tie the registration obligation to headcount on a given day, but to headcount maintained over a period: “enterprises employing 25 or more persons in Québec for a period of 6 months must register with the Office québécois de la langue française no later than 6 months after the end of that period” (Charter, s. 139 — Office web page, consulted on 09/14/2026).

That sentence is what makes the subject difficult. It is not enough to know how many people the company employs today: the count must have been kept on an ongoing basis, reading by reading. A company that goes from 24 to 26 people in June and drops back in August is not in the same position as one that stays at 26 all year, and no one can tell after the fact without having kept the count. That is exactly what this module keeps.

Also searched as: Odoo Bill 96 (loi 96), Quebec business francization, OQLF Odoo, Charter of the French Language software, francization committee, OQLF registration certificate (attestation d'inscription), francization certificate, Bill 96 compliance Odoo.

The headcount finding

A period, one headcount record per month, one headcount per record, and the comment stating which counting rule the company adopted. The module compares each record with the configured threshold and writes down what it counts: how many records reach the threshold, how many fall below it, and whether the linked file records a registration with the Office.

It observes; it does not conclude. It never writes "your company is in breach": the legal characterization belongs to the Office and to the company's advisors, not to a management module.

No dependency on the Employees app. The headcount works on Community without any HR module — the common case of a Québec SME that only has Odoo Invoicing. When the Employees app is present, a button suggests its figure; it is a suggestion, never a substitution.

The francization file, with its calculated deadlines

The company enters only dated facts: the day it registered, the day the certificate arrived, the day the Office requested a program. All due dates are calculated from them — analysis within 3 months of the certificate, program within 3 months of the request, implementation report every 12 months, extension request no later than 3 months before expiry, three-year report after the certificate. What can be calculated is not re-entered, and a re-entered due date is a wrong due date six months later.

The francization committee and its minutes

Members, their role, those who represent workers, and the start and end dates of their term. The module counts the share of workers' representatives and displays it; it does, however, refuse a term longer than the configured maximum — the term is renewable, so you record a renewal, not a five-year term.

The meeting register records the three facts that matter: the meeting took place, the minutes were signed, and they were sent to management and to the Office. A transmission cannot be recorded before the signature.

No regulatory value is hard-coded

Thresholds (25, 100, 4 or 6 members) and deadlines (6 months, 3 months, 12 months, 2 years, 3 years, 5 years) are dated records, each with the URL of its primary source, the date it was consulted and its caveat. They can be corrected on screen without touching the code.

And what was not found is written down as such: the official counting method for “persons employed in Québec” — part-time, seasonal and loaned staff — could not be checked against a primary source. The module ships none. An empty value does not mean zero: it blocks the finding, because a threshold read as zero would be crossed by every company, including those with no employees at all.

The log cannot be rewritten

Finding closed, date recorded in the file, committee change, minutes sent: each leaves a dated, signed line. A record rule prevents everyone, the francization officer included, from modifying or deleting it. A log that can be corrected after the fact proves nothing.

The Office offers no programming interface

Verified on 09/14/2026: registration and filings are done by hand on the OQLF Portal. This module keeps the file, calculates the deadlines and records what has been filed; it files nothing on your behalf, and says so on screen rather than letting you find out.

What the module does not do

No inventory of work documents and signage to be francized, no tracking of the program by measures and timeline, no report generation, no deadline alerts, no documents prepared for a public tender, no lookup of the public list of certified companies. These features are grouped in the dyo_loi96_qc module.

Specifications

PriceFree
LicenseLGPL-3
Odoo series19.0: published on the Odoo Apps Store; 20.0: published on the Odoo Apps Store
Version1.0.0
EditionOdoo Community / on-premise
Technical namedyo_loi96_qc_lite
DomainHuman resources, payroll and fleet
Premium versiondyo_loi96_qc

Price excluding VAT as displayed on the Odoo Apps Store; purchase and installation are done on the Store or through your Omnifloo instance.