Retenue de garantie — cas DGFiP n°26 (BT-21 ABU / BT-22)
Bridge ropi_fr_einvoicing_retention_guarantee — licence OPL-1 — 50,00 €.
Pourquoi
Sur les marchés BTP et prestations avec clause de réserve, il faut inscrire sur la facture l'existence et le contenu de la retenue de garantie. Odoo CE 18.0 stock ne porte pas les champs correspondants sur sale.order ni account.move, ce qui bloque l'export UBL BT-21 (code sujet ABU) et BT-22 (clause).
Comment le module corrige
- Ajoute sur
sale.orderetaccount.moveles champs bridgehas_retenue(booléen) etretenue_clause_note(texte libre). - Export UBL :
#ABU#vial10n_fr_pdp/ubl_21_fr. - Export CII :
IncludedNote/SubjectCode = ABU(fichierdata/cii_22_retention_note_export.xml, xpathlocal-name()). - Export Factur-X : chemin CII (même builder).
pre_init_hook: bloque l'installation si les champs upstreaml10n_fr_has_retention_guarantee/l10n_fr_retention_clause_notesont déjà présents.
Suivi upstream
- Commit Odoo : 95b63ccd3b54 — [IMP] l10n_fr_account: retention guarantee (cas 26) EDI export.
- Branche interne :
18.0-cas26-retention-guarantee(forkrpinset/odoo) ; bridge RoPi commit26431e2. - Campagne multirepo :
cas26-retention-guarantee.
Migration avant désinstallation
Les noms de champs sont différents (bridge has_retenue / retenue_clause_note vs upstream l10n_fr_has_retention_guarantee / l10n_fr_retention_clause_note). Un script de migration est obligatoire avant désinstallation pour transférer la donnée vers les colonnes upstream.
Install & test
- DB Docker :
fe_cas26/fe_cas26_ropi. - Tests : upstream
--test-tags=/TestL10nFrRetentionExport; bridge--test-tags=+cas26_retention,+l10n_fr_edi_retention. - Prix : 50,00 € OPL-1 — apps.odoo.com.