コード例 #1
0
        public async Task <Transaction> AuthorizePayment(Payment payment)
        {
            var paymentService = new PaymentService(_config.DefaultApiKey, _config.DefaultEncryptionKey);

            var cardHashGen = new CardHash(paymentService)
            {
                CardNumber         = payment.CreditCard.CardNumber,
                CardHolderName     = payment.CreditCard.CardName,
                CardExpirationDate = payment.CreditCard.Expiration,
                CardCvv            = payment.CreditCard.CVV
            };

            var cardHash = cardHashGen.Generate();

            var transaction = new CrossCutting.Models.Transaction(paymentService)
            {
                CardHash           = cardHash,
                CardNumber         = payment.CreditCard.CardNumber,
                CardHolderName     = payment.CreditCard.CardName,
                CardExpirationDate = payment.CreditCard.Expiration,
                CardCvv            = payment.CreditCard.CVV,
                PaymentMethod      = CrossCutting.Enumerables.PaymentMethod.CreditCard,
                Amount             = payment.Price
            };

            return(MapTransaction(await transaction.AuthorizeCardTransaction()));
        }
        public async Task <Transacao> AutorizarPagamento(Models.Pagamento pagamento)
        {
            var nerdsPagSvc = new NerdsPagService(_pagamentoConfig.DefaultApiKey,
                                                  _pagamentoConfig.DefaultEncryptionKey);

            var cardHashGen = new CardHash(nerdsPagSvc)
            {
                CardNumber         = pagamento.CartaoCredito.NumeroCartao,
                CardHolderName     = pagamento.CartaoCredito.NomeCartao,
                CardExpirationDate = pagamento.CartaoCredito.MesAnoVencimento,
                CardCvv            = pagamento.CartaoCredito.CVV
            };

            var cardHash = cardHashGen.Generate();

            var transacao = new Transaction(nerdsPagSvc)
            {
                CardHash           = cardHash,
                CardNumber         = pagamento.CartaoCredito.NumeroCartao,
                CardHolderName     = pagamento.CartaoCredito.NomeCartao,
                CardExpirationDate = pagamento.CartaoCredito.MesAnoVencimento,
                CardCvv            = pagamento.CartaoCredito.CVV,
                PaymentMethod      = PaymentMethod.CreditCard,
                Amount             = pagamento.Valor
            };

            return(ParaTransacao(await transacao.AuthorizeCardTransaction()));
        }
コード例 #3
0
        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());
        }
コード例 #4
0
        public static string GetCardHash()
        {
            var creditcard = new CardHash();

            creditcard.CardHolderName     = "Jose da Silva";
            creditcard.CardNumber         = "5433229077370451";
            creditcard.CardExpirationDate = "1038";
            creditcard.CardCvv            = "018";

            return(creditcard.Generate());
        }
コード例 #5
0
        public static string GetCardHash()
        {
            var creditcard = new CardHash();

            creditcard.CardHolderName = "Jose da Silva";
            creditcard.CardNumber = "5433229077370451";
            creditcard.CardExpirationDate = "1016";
            creditcard.CardCvv = "018";

            return creditcard.Generate();
        }
コード例 #6
0
        public static void Main(string[] args)
        {
            var service = new PagarMeService("API_KEY", "ENCRYPTION_KEY");

            CardHash card_hash = new CardHash(service);

            card_hash.CardHolderName     = "Customer Teste";
            card_hash.CardNumber         = "4111111111111111";
            card_hash.CardExpirationDate = "1122";
            card_hash.CardCvv            = "123";

            try {
                String hash = card_hash.Generate();
                Console.WriteLine(hash);
            } catch (Exception e) {
                Console.WriteLine(e.Message);
            }
        }
コード例 #7
0
        public void RefuseReasonNull()
        {
            var transaction = new Transaction();

            transaction.Amount = 10000;
            CardHash card = new CardHash()
            {
                CardNumber         = "4242424242424242",
                CardHolderName     = "Aardvark Silva",
                CardExpirationDate = "0140",
                CardCvv            = "123"
            };

            transaction.CardHash = card.Generate();
            transaction.Customer = new Customer()
            {
                Name           = "John Appleseed",
                Email          = "*****@*****.**",
                DocumentNumber = "11111111111"
            };
            transaction.Save();
            Assert.Null(transaction.RefuseReason);
        }
コード例 #8
0
        public void ChargeWithCaptureMethodEMV()
        {
            Type    t            = typeof(Transaction);
            dynamic dTransaction = Activator.CreateInstance(t, null);

            dTransaction.Amount = 10000;
            CardHash card = new CardHash()
            {
                CardNumber         = "4242424242424242",
                CardHolderName     = "Aardvark Silva",
                CardExpirationDate = "0140",
                CardCvv            = "123"
            };

            dTransaction.CardHash = card.Generate();
            dTransaction.acquirers_configuration_id = "ac_cj7nrwwjb057txv6et3k5fd8c";
            dTransaction.capture_method             = "emv";
            dTransaction.card_track_2  = "4242424242424242%3D51046070000091611111";
            dTransaction.card_emv_data = "9A031708119C01009F02060000000001009F10200FA501A030F8000000000000000000000F0000000000000000000000000000009F1A0200769F1E0830303030303030309F2608DF91B6A4D449C9819F3303E0F0E89F360202889F370411859D5F9F2701809F34034203005F2A0209868202580095056280046000";
            dTransaction.Save();

            Assert.IsNotNull(dTransaction.CardEmvResponse);
        }
コード例 #9
0
        public void ChargeWithCaptureMethodEMV()
        {
            Type    t            = typeof(Transaction);
            dynamic dTransaction = Activator.CreateInstance(t, null);

            dTransaction.Amount = 10000;
            CardHash card = new CardHash()
            {
                CardNumber         = "4242424242424242",
                CardHolderName     = "Aardvark Silva",
                CardExpirationDate = "0117",
                CardCvv            = "176"
            };

            dTransaction.CardHash       = card.Generate();
            dTransaction.capture_method = "emv";
            dTransaction.card_track_2   = "thequickbrownfox";
            dTransaction.card_emv_data  = "jumpsoverthelazydog";

            dTransaction.Save();

            Assert.IsNotNull(dTransaction.CardEmvResponse);
        }
コード例 #10
0
        public void ChargeWithCaptureMethodEMV()
        {
            Type t = typeof(Transaction);
            dynamic dTransaction = Activator.CreateInstance(t, null);
            dTransaction.Amount = 10000;
            CardHash card = new CardHash()
            {
                CardNumber = "4242424242424242",
                CardHolderName = "Aardvark Silva",
                CardExpirationDate = "0117",
                CardCvv = "176"

            };

            dTransaction.CardHash = card.Generate();
            dTransaction.capture_method = "emv";
            dTransaction.card_track_2 = "thequickbrownfox";
            dTransaction.card_emv_data = "jumpsoverthelazydog";

            dTransaction.Save();

            Assert.IsNotNull(dTransaction.CardEmvResponse);
        }