diff --git a/models/res_partner.py b/models/res_partner.py
index f339688d7cd5f9d1a221f0b2e6ce212d2d80864b..b24e165391af47c1b9b48f1f785696c53d2b6e10 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -298,7 +298,9 @@ class ScopPartner(models.Model):
         :return:
         """
         self.ensure_one()
-        return self.env["ir.sequence"].next_by_code("scop.membership.period")
+        num = self.env["ir.sequence"].next_by_code("scop.membership.period")
+        self.write({"member_number_int": num})
+        return num
 
     def create_period_adhesion_cg(self, num_adherent):
         """
@@ -500,7 +502,7 @@ class ScopPartner(models.Model):
         res = super(ScopPartner, self).scop_valid_cg()
 
         # Create period adhésions with num adherent
-        num_adherent = self.create_num_adherent()
+        num_adherent = self.member_number_int or self.create_num_adherent()
         self.create_period_adhesion_cg(num_adherent)
         self.create_period_adhesion_fede(num_adherent)
         # TODO : check pour fede CAE si coop is CAE ?