diff --git a/onadata/libs/serializers/user_profile_serializer.py b/onadata/libs/serializers/user_profile_serializer.py index 68693b4c0a..3b14f72094 100644 --- a/onadata/libs/serializers/user_profile_serializer.py +++ b/onadata/libs/serializers/user_profile_serializer.py @@ -288,15 +288,16 @@ def create(self, validated_data): _(f"User account {username} already exists") ) from e - try: - validate_password("" if password is None else password, user=new_user) - - except ValidationError as e: - # Delete created user object if created - # to allow re-registration - if new_user: - new_user.delete() - raise serializers.ValidationError({"password": e.messages}) + if password is not None: + try: + validate_password(password, user=new_user) + + except ValidationError as e: + # Delete created user object if created + # to allow re-registration + if new_user: + new_user.delete() + raise serializers.ValidationError({"password": e.messages}) new_user.is_active = True new_user.first_name = params.get("first_name")