public PaymentResponse Post([FromBody] PaymentInformation paymentInformation)
        {
            log.Info("POST-REQUEST:" + JsonConvert.SerializeObject(paymentInformation));
            try
            {
                EncryptedPaymentInformation encryptedPaymentInformation = new EncryptedPaymentInformation();
                //Encrypt data before sending to bank
                encryptedPaymentInformation = EncryptData(paymentInformation);

                PaymentResponse response = _bankService.PaymentRequest(encryptedPaymentInformation);
                using (var context = new PaymentsStorageContext())
                {
                    var paymentRecord = new PaymentRecord()
                    {
                        CardNo     = paymentInformation.CardNo,
                        Expiry     = paymentInformation.Expiry,
                        Status     = response.Status,
                        Identifier = response.Identifier
                    };
                    context.PaymentRecords.Add(paymentRecord);
                    context.SaveChanges();
                }
                log.Info("POST-RESPONSE:" + JsonConvert.SerializeObject(response));
                return(response);
            }
            catch (Exception ex)
            {
                log.Error(ex.Message);

                return(null);
            }
        }
        public IEnumerable <PaymentRecord> Get()
        {
            var context  = new PaymentsStorageContext();
            var payments = context.PaymentRecords.AsEnumerable();

            return(payments);
        }
        public PaymentRecord Get(string id)
        {
            Guid paymentIdentifier = new Guid(id);

            var           context = new PaymentsStorageContext();
            PaymentRecord payment = context.PaymentRecords
                                    .Where(s => s.Identifier == id).FirstOrDefault();

            payment.CardNo = payment.CardNo.Replace(payment.CardNo.Substring(0, 14), "*************");
            return(payment);
        }