public Transaction TransferMoney(decimal sum, string from, string to)
        {
            var cardFrom = GetCard(from);
            var cardTo   = GetCard(to);

            _businessLogicService.ValidateTransfer(cardFrom, cardTo, sum);

            var fromTransaction = new Transaction
            {
                Card           = cardFrom,
                CardFromNumber = cardFrom.CardNumber,
                CardToNumber   = cardTo.CardNumber,
                Sum            = sum
            };

            var toTransaction = new Transaction
            {
                Card           = cardTo,
                DateTime       = fromTransaction.DateTime,
                CardFromNumber = cardFrom.CardNumber,
                CardToNumber   = cardTo.CardNumber,
                Sum            = _businessLogicService.GetConvertSum(sum, cardFrom.Currency, cardTo.Currency)
            };

            _transactionRepository.Add(fromTransaction);
            _transactionRepository.Add(toTransaction);
            _transactionRepository.Save();

            return(fromTransaction);
        }