Construction Subcontractor Compliance — subcontract agreements, dated eligibility checks, payment withholding and certificates — a payment cannot go through without valid proof.
Overview
Construction Subcontracting — DYONYSOS compliance base
Free base, for Odoo 19 Community. It keeps subcontracting agreements, eligibility checks, certificates and payments — and it prevents a payment from being validated when the proof is missing or has expired.
The real problem. A company checks its subcontractor once, at signing, files the certificate in a binder, and pays for two years without re-checking. On inspection day, it is the main contractor who is liable for its subcontractor's debts, and the evidence it produces expired eighteen months ago.
What the module does. A check carries a date, a source, a result and a validity date. After that day it is worthless: the next payment is refused, with the reason written out — check missing, expired on such-and-such date, or unusable result. An override remains possible, but never silently: it requires a written reason, records the name of the person taking it and the date, and is logged in the payment's chatter.
What the base module does not do — by design. It knows no country. The withholding rate, the re-verification frequency and the list of required documents come from the country modules:
Belgium — the so-called “30bis” withholding obligation, declaration of works, on-site attendance register (dyo_soustraitance_be);
United Kingdom — Construction Industry Scheme, deduction on the labor portion only (dyo_soustraitance_uk);
Germany — withholding on construction work payments and exemption certificate (dyo_soustraitance_de).
What the base covers
Projects — location, country, project owner, amount, dates.
Subcontracts — main contractor, subcontractor, project, scope, amount, dates, with amounts paid and held back calculated.
Verifications — date, source, result, validity date, owner. An expired verification is worth nothing.
Certificates — configurable types (with or without country), validity period, attachment. A type marked as mandatory blocks payment until a valid certificate covers it.
Payments — gross amount, withholding base, rate, calculated withholding, net. Validation is refused without valid proof, with the reason stated in plain language.
A scheduled action that uses an Odoo activity to flag verifications nearing their due date, only once per verification. It ships inactive: it is up to you to switch it on once your lead times are set.
What the module does not do
No automatic connection to public databases: the verification is entered manually, with its source and reference. No accounting — the withholding is calculated and tracked, while its journal entry belongs to the accounting module. No site management or scheduling.
Specifications
| Price | Free |
|---|---|
| License | LGPL-3 |
| Odoo series | 19.0: published on the Odoo Apps Store; 20.0: published on the Odoo Apps Store |
| Version | 1.1.0 |
| Edition | Odoo Community / on-premise |
| Technical name | dyo_soustraitance |
| Domain | Construction and real estate |
Price excluding VAT as displayed on the Odoo Apps Store; purchase and installation are done on the Store or through your Omnifloo instance.