refactored customer validations