diff --git a/models/res_partner.py b/models/res_partner.py
index d2576472ca1a4109ebef55cad4a74e5b2ca17016..e3c64fc444003b2439ccf1ed9c8b3ccb39b5aed6 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -671,7 +671,8 @@ class ScopPartner(models.Model):
             last_membership_period = self.env['scop.membership.period'].search(
                 [('partner_id', '=', partner.id),
                  ('type_id', '=', type_cg)],
-                limit=1)
+                limit=1,
+                order='start desc')
             if (last_membership_period
                     and not last_membership_period.end_reason_id
                     and last_membership_period.state == 'done'):