public async Task <string> GenerateBankAccountTransferOtp(decimal amount, string comment, string phoneNumber)
        {
            var activityProperty = new Dictionary <string, string>();

            activityProperty.Add("Amount", amount.ToString());
            activityProperty.Add("Comment", comment);

            var otp = RandomStringGeneratorUtil.GenerateOtp();

            var otpSession = new OtpSession
            {
                User              = await GetCurrentUserAsync(),
                Id                = otp,
                ActionProperty    = activityProperty,
                PhoneNumberSentTo = phoneNumber
            };

            _otpRepository.Insert(otpSession);

            return(otp.ToString());
        }