public async Task SendVerificationCodeAsync(int userId, string phoneNumber)
        {
            var verificationCode = StringUtility.RandomNumbers(length: 6);

            var record = new PhoneNumberVerificationRecord
            {
                UserId      = userId,
                Code        = verificationCode,
                Expires     = _clock.Now.UtcDateTime.AddMinutes(15),
                PhoneNumber = phoneNumber
            };

            _verificationCodeRecordRepo.Save(record);

            await _smsSender.SendVerificationCodeAsync(phoneNumber, verificationCode);
        }