diff --git a/__manifest__.py b/__manifest__.py
index 6f52d77de3177c914c6b47dedddcc43f3a4aac74..c6726c800521543a1c2adcb260cae8f3bb1d844f 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -17,6 +17,8 @@
# datas
# views
"views/company_share_line.xml",
+ # next line used for debugging
+ # "views/financial_contract_external.xml",
"views/financial_contract_guarantee.xml",
"views/financial_contract_guarantee_commission.xml",
"views/financial_contract_guarantee_line.xml",
diff --git a/models/__init__.py b/models/__init__.py
index 6f20943b8a5672001a82a3ea0dac3b4eacb7ce84..4fe71596173b9c7abcd2e2aa865977e97f6aa846 100644
--- a/models/__init__.py
+++ b/models/__init__.py
@@ -10,3 +10,4 @@ from . import mutual_guarantee_fund_line
from . import res_company
from . import res_config_settings
from . import res_partner
+from . import financial_contract_external
diff --git a/models/financial_contract_external.py b/models/financial_contract_external.py
new file mode 100644
index 0000000000000000000000000000000000000000..9545cb5e82b8bc4339a354b74d77eb17f11d1c43
--- /dev/null
+++ b/models/financial_contract_external.py
@@ -0,0 +1,24 @@
+# © 2024 Le Filament (<http://www.le-filament.com>)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from odoo import fields, models, api
+
+
+class FinancialContractExternal(models.Model):
+ _inherit = "financial.contract.external"
+
+ # there should be a single guarantee but we do not ensure this
+ # useful for debugging
+ guarantee_ids = fields.One2many(
+ string="Garanties",
+ comodel_name="financial.contract.guarantee",
+ inverse_name="external_loan_id"
+ )
+
+ # only used for debugging
+ guarantee_count = fields.Integer("Nombre de garanties liées", compute="_compute_guarantee_count")
+
+ @api.depends("guarantee_ids")
+ def _compute_guarantee_count(self):
+ for i in self:
+ i.guarantee_count = len(i.guarantee_ids)
diff --git a/views/financial_contract_external.xml b/views/financial_contract_external.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4138e164e84d7754ea7d5f86e84812157ac61320
--- /dev/null
+++ b/views/financial_contract_external.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" ?>
+<!-- Copyright 2024 Le Filament
+ License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
+<odoo>
+
+ <!-- Form -->
+ <record model="ir.ui.view" id="financial_contract_external_form_view_inherit">
+ <field name="name">financial.contract.external.form.inherit</field>
+ <field name="model">financial.contract.external</field>
+ <field name="inherit_id" ref="financial_contract_external.financial_contract_external_form_view"/>
+ <field name="arch" type="xml">
+ <xpath expr="//field[@name='comment']/.." position="after">
+ <group>
+ <field name="guarantee_ids"/>
+ </group>
+ </xpath>
+ </field>
+ </record>
+
+ <!-- Tree -->
+ <record model="ir.ui.view" id="financial_contract_external_tree_view_inherit">
+ <field name="name">financial.contract.external.list.inherit</field>
+ <field name="model">financial.contract.external</field>
+ <field name="inherit_id" ref="financial_contract_external.financial_contract_external_tree_view"/>
+ <field name="arch" type="xml">
+ <xpath expr="//field[@name='number']" position="after">
+ <field name="guarantee_count" optional="hide"/>
+ </xpath>
+ </field>
+ </record>
+
+</odoo>