Ejemplo n.º 1
0
        public BankPaymentResponse ProcessPayment(BankPaymentRequest bankPaymentRequest)
        {
            _logger.LogInformation($"Sending Payment Request with correlationId {bankPaymentRequest.CorrelationId} to bank ");
            var vendorBank          = _bankFactory.Create(bankPaymentRequest.MerchantDetails.MerchantId);
            var bankPaymentResponse = vendorBank.ProcessPayment(bankPaymentRequest);

            _paymentRepository.CreatePayment(GenerateRepositoryPayment(bankPaymentRequest, bankPaymentResponse), bankPaymentRequest.CorrelationId);

            return(bankPaymentResponse);
        }
Ejemplo n.º 2
0
 public Bank OpenBank(string name, params Account[] accounts) => _bankFactory.Create(name, accounts);