The user can have different types of credentials. (Password, OTP)
To set one of the the types you need an extra call. This is also happening with the keycloak buildin usermodel.
The addUser method is „just“ for registering a record with your external storage and returning a reference back to Keycloak. Updating the attributes of this reference object (UserModel) is done with the default mechanisms for updating a user entity.