diff --git a/beat/web/accounts/management/commands/postpone_users_validation.py b/beat/web/accounts/management/commands/postpone_users_validation.py
index 3cf31ef2307d94e6d31546d04a9be218153868f0..646ba48d9196d43e58843d0c054f8f2f0e251b32 100644
--- a/beat/web/accounts/management/commands/postpone_users_validation.py
+++ b/beat/web/accounts/management/commands/postpone_users_validation.py
@@ -75,33 +75,22 @@ class Command(BaseCommand):
         postpone_count = 0
         now = datetime.datetime.now()
 
-        for invalid_profile in invalid_userprofiles_new_users:
-            user = invalid_profile.user
-            expiration_date_delta = datetime.timedelta(
-                days=settings.ACCOUNT_ACTIVATION_DAYS
-            )
-            if user.profile.registration_date + expiration_date_delta <= now:
-                count += 1
-                user.delete()
-                invalid_profile.delete()
-                SupervisionTrack.objects.filter(
-                    supervision_key=invalid_profile.supervision_key
-                ).delete()
-                RegistrationProfile.objects.filter(user=invalid_profile.user).delete()
+        expiration_date_delta_new_users = datetime.timedelta(
+            days=settings.ACCOUNT_ACTIVATION_DAYS
+        )
 
-        for invalid_profile in invalid_userprofiles_waiting_validation:
-            user = invalid_profile.user
-            expiration_date_delta = datetime.timedelta(
-                days=settings.ACCOUNT_ACTIVATION_DAYS_FROM_SUPERVISOR
-            )
-            if user.profile.registration_date + expiration_date_delta <= now:
-                count += 1
-                user.delete()
-                invalid_profile.delete()
-                SupervisionTrack.objects.filter(
-                    supervision_key=invalid_profile.supervision_key
-                ).delete()
-                RegistrationProfile.objects.filter(user=invalid_profile.user).delete()
+        expiration_date_delta_waiting_validation = datetime.timedelta(
+            days=settings.ACCOUNT_ACTIVATION_DAYS_FROM_SUPERVISOR
+        )
+
+        count += self.check_invalid_profiles(
+            invalid_userprofiles_new_users, expiration_date_delta_new_users, now
+        )
+        count += self.check_invalid_profiles(
+            invalid_userprofiles_waiting_validation,
+            expiration_date_delta_waiting_validation,
+            now,
+        )
 
         supervisiontracks = SupervisionTrack.objects.all()
         expiration_date_delta = datetime.timedelta(
@@ -140,6 +129,25 @@ class Command(BaseCommand):
             )
         )
 
+    def check_invalid_profiles(self, invalid_profiles_list, expiration_date_delta, now):
+        """
+        Override this method if you want to customize data inputs or
+        """
+        count_updated_users = 0
+        for invalid_profile in invalid_profiles_list:
+            user = invalid_profile.user
+
+            if user.profile.registration_date + expiration_date_delta <= now:
+                count_updated_users += 1
+                user.delete()
+                invalid_profile.delete()
+                SupervisionTrack.objects.filter(
+                    supervision_key=invalid_profile.supervision_key
+                ).delete()
+                RegistrationProfile.objects.filter(user=invalid_profile.user).delete()
+
+        return count_updated_users
+
     def get_input_data(self, message, default=None):
         """
         Override this method if you want to customize data inputs or