diff --git a/datas/res_partner_federation_data.xml b/datas/res_partner_federation_data.xml
index 03c1f98abaa39c21b3f6572f5d0a587ea3b1f62c..fc7382c7e01ffb1ea97bf9a5e0acd2b92b2c966a 100644
--- a/datas/res_partner_federation_data.xml
+++ b/datas/res_partner_federation_data.xml
@@ -2,23 +2,23 @@
 <!-- Copyright 2019 Le Filament
      License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
 <odoo>
-	<data noupdate="1">
+    <data noupdate="1">
 
-		<record id="COM" model="res.partner.federation">
-			<field name="name">Fed. des scop de la communication</field>
-		</record>
+        <record id="COM" model="res.partner.federation">
+            <field name="name">Fed. des scop de la communication</field>
+        </record>
 
-		<record id="IND" model="res.partner.federation">
-			<field name="name">Fed. des scop de l'industrie</field>
-		</record>
+        <record id="IND" model="res.partner.federation">
+            <field name="name">Fed. des scop de l'industrie</field>
+        </record>
 
-		<record id="BTP" model="res.partner.federation">
-			<field name="name">Fed. des scop du BTP</field>
-		</record>
+        <record id="BTP" model="res.partner.federation">
+            <field name="name">Fed. des scop du BTP</field>
+        </record>
 
-		<record id="CAE" model="res.partner.federation">
-			<field name="name">Fed. des CAE</field>
-		</record>
+        <record id="CAE" model="res.partner.federation">
+            <field name="name">Fed. des CAE</field>
+        </record>
 
-	</data>
+    </data>
 </odoo>
diff --git a/models/__init__.py b/models/__init__.py
index fb998bbd6c9cac1231e3ec62b8d783687337e8ce..6de0dcbceccb8bfa5e655aea32276e9b93f18c99 100644
--- a/models/__init__.py
+++ b/models/__init__.py
@@ -14,4 +14,5 @@ from . import res_partner_newsletter
 from . import res_partner
 from . import res_users
 from . import scop_contribution
+from . import scop_action_rse
 from . import union_regionale
diff --git a/models/res_partner.py b/models/res_partner.py
index e324d038595cc7585ffb2be7254e280577715682..a822e75dca71ca9b17b07eaffb6181254a6dd41b 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -419,6 +419,16 @@ class ScopPartner(models.Model):
         string="Liste des Révisions",
     )
 
+    # Action RSE
+    action_rse_ids = fields.One2many(
+        comodel_name="scop.action.rse",
+        inverse_name="partner_id",
+        string="Liste des Actions RSE",
+    )
+    is_rse = fields.Boolean(
+        string="Engagement RSE", compute="_compute_is_rse", store=True, default=False
+    )
+
     # Historique
     scop_period_ids = fields.One2many(
         comodel_name="scop.period",
@@ -955,6 +965,15 @@ class ScopPartner(models.Model):
                 ):
                     partner.contact_legality = "customer"
 
+    @api.depends("action_rse_ids")
+    def _compute_is_rse(self):
+        """
+        Est on une coop RSE
+        """
+        for partner in self:
+            if len(partner.action_rse_ids) != 0:
+                partner.is_rse = True
+
     # TODO: déplacer dans adhésions ? cotisations?
     @api.depends(
         "membership_period_ids",
diff --git a/models/res_partner_lists.py b/models/res_partner_lists.py
index b5c06fbcd60ba7e49d1d7951f925404ace7e21c4..ee63c0d499fff3c375d0f06bd1dc86de35c92ee6 100644
--- a/models/res_partner_lists.py
+++ b/models/res_partner_lists.py
@@ -88,7 +88,7 @@ class ResPartnerFederation(models.Model):
     _name = "res.partner.federation"
     _description = "Fédérations"
 
-    name = fields.Char('Fédération')
+    name = fields.Char("Fédération")
 
 
 class ScopPartnerNaf(models.Model):
@@ -101,9 +101,8 @@ class ScopPartnerNaf(models.Model):
     )
     id_riga = fields.Integer("ID RIGA")
     federation_id = fields.Many2one(
-        'res.partner.federation',
-        string='Fédération',
-        ondelete='restrict')
+        "res.partner.federation", string="Fédération", ondelete="restrict"
+    )
 
 
 class ResPartnerOrganizationType(models.Model):
diff --git a/models/scop_action_rse.py b/models/scop_action_rse.py
new file mode 100644
index 0000000000000000000000000000000000000000..633c78af4b3b292273cae253d4c5e2aa55771303
--- /dev/null
+++ b/models/scop_action_rse.py
@@ -0,0 +1,60 @@
+# © 2019 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
+
+
+class ScopRevision(models.Model):
+    _name = "scop.action.rse"
+    _description = "Actions RSE engagées"
+    _order = "partner_id, action_category, action_date"
+
+    partner_id = fields.Many2one(
+        comodel_name="res.partner",
+        string="Organisme",
+        domain=[("is_company", "=", True)],
+        ondelete="cascade",
+        index=True,
+    )
+
+    action_date = fields.Date(
+        string="Début de l'action", index=True, track_visibility="onchange"
+    )
+
+    action_category = fields.Selection(
+        [
+            ("1", "1 -	La gouvernance de l’organisation"),
+            ("2", "2 -	Les droits de l’homme"),
+            ("3", "3 - Les relations et les conditions de travail"),
+            ("4", "4 -	L’environnement"),
+            ("5", "5 -	La loyauté des pratiques dans les affaires"),
+            ("6", "6 -	Les questions relatives aux consommateurs"),
+            ("7", "7 -	Les communautés et le territoire"),
+        ],
+        string="Catégorie RSE",
+        track_visibility="onchange",
+    )
+
+    action_manager = fields.Text(
+        string="Référent de l'action", track_visibility="onchange"
+    )
+
+    action_description = fields.Text(
+        string="Description de l'action", track_visibility="onchange"
+    )
+
+    action_measure = fields.Text(
+        string="Indicateurs de suivi", track_visibility="onchange"
+    )
+
+    # ------------------------------------------------------
+    # Contraintes SQL
+    # ------------------------------------------------------
+    # Unicité de l'action par organisme et par date
+    _sql_constraints = [
+        (
+            "Action RSE",
+            "unique(partner_id, action_category,action_date)",
+            "Une action RSE a déjà été enregistrée à cette date",
+        ),
+    ]
diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv
index 87c7938df975c0355835f99867b8c8f332f0792e..34e5bf77f2afb7758aac2e949f3e89adff050d1e 100644
--- a/security/ir.model.access.csv
+++ b/security/ir.model.access.csv
@@ -77,3 +77,4 @@ access_scop_membership_out_wizard,access_scop_membership_out_wizard,model_scop_m
 access_scop_status_wizard,access_scop_status_wizard,model_scop_status_wizard,base.group_user,1,1,1,1
 access_res_partner_federation,access_res_partner_federation,model_res_partner_federation,base.group_user,1,0,0,0
 admin_res_partner_federation,admin_res_partner_federation,model_res_partner_federation,cgscop_partner.group_cg_administrator,1,1,1,1
+access_action_rse_group_user,access_action_rse_group_user,model_scop_action_rse,base.group_user,1,1,1,1
diff --git a/views/res_partner.xml b/views/res_partner.xml
index 6f3f9022214d916c23063f612b99d04d12c00620..65be7ae941ff66de8c35cf35cdac673a04745fb2 100644
--- a/views/res_partner.xml
+++ b/views/res_partner.xml
@@ -982,6 +982,9 @@
 
                             <field name="is_federation_com" invisible="True" />
                             <field name="is_federation_indus" invisible="True" />
+                            <br />
+                            <field name="is_rse" />
+                            <br />
                             <field
                                 name="activity_federation_com_ids"
                                 groups="cgscop_partner.group_federation_com"
@@ -1571,6 +1574,22 @@
                             </tree>
                         </field>
                     </page>
+                    <page
+                        name='scop_rse'
+                        string="Actions RSE"
+                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', '!=', '6_suivi')]}"
+                    >
+                        <field name="action_rse_ids" widget="one2many">
+                            <tree string="Actions RSE" editable="top">
+                                <field name="action_category" required="1" />
+                                <field name="action_date" required="1" />
+                                <field name="action_manager" required="1" />
+                                <field name="action_description" required="1" />
+                                <field name="action_measure" required="1" />
+                            </tree>
+                        </field>
+                    </page>
+
                     <page
                         name='scop_xnet'
                         string="Extranet"
diff --git a/views/res_partner_cooperative.xml b/views/res_partner_cooperative.xml
index 45843d2c6b305fd4baf7afa823bd0cf09f65b14e..b240c8a6dd4975c91e5662d2cbd0905622d07127 100644
--- a/views/res_partner_cooperative.xml
+++ b/views/res_partner_cooperative.xml
@@ -145,6 +145,14 @@
                         domain="[('cae', '=', True)]"
                     />
                     <separator />
+                    <separator />
+                    <filter
+                        string="Engagement RSE"
+                        name="is_rse"
+                        domain="[('is_rse', '=', True)]"
+                    />
+                    <separator />
+
                     <group expand="0" name="group_by" string="Group By">
                        <filter
                             name="project_status"