public async Task<Transaction> AuthorizePayment(PaymentInfo payment) { var planetPaySvc = new PlanetPayService(_paymentConfig.DefaultApiKey, _paymentConfig.DefaultEncryptionKey); var cardHashGen = new CardHash(planetPaySvc) { CardNumber = payment.CreditCard.CardNumber, CardHolderName = payment.CreditCard.CardHolder, CardExpirationDate = payment.CreditCard.CardExpiration, CardCvv = payment.CreditCard.CardCvv }; var cardHash = cardHashGen.Generate(); var dealTransaction = new DealTransaction(planetPaySvc) { CardHash = cardHash, CardNumber = payment.CreditCard.CardNumber, CardHolderName = payment.CreditCard.CardHolder, CardExpirationDate = payment.CreditCard.CardExpiration, CardCvv = payment.CreditCard.CardCvv, PaymentMethod = PaymentMethod.CreditCard, Amount = payment.TotalValue }; return ConvertToTransaction(await dealTransaction.AuthorizeCardTransaction()); }
public static Transaction ConvertToTransaction(DealTransaction dealTransaction) { return new Transaction { PaymentId = Guid.NewGuid(), Status = (StatusTransaction)dealTransaction.Status, TotalValue = dealTransaction.Amount, FlagCard = dealTransaction.CardBrand, AuthorizationCode = dealTransaction.AuthorizationCode, CostTransaction = dealTransaction.Cost, DateTransaction = dealTransaction.TransactionDate, NSU = dealTransaction.Nsu, TID = dealTransaction.Tid }; }