Exemplo n.º 1
0
        public PaymentResultModel ProcessVoid(BasicRequestModel requestModel)
        {
            var result = new PaymentResultModel();

            var paymentData = (HelcimBasicRequestModel)requestModel;

            var values = GetBasicData(paymentData);

            values["transactionType"] = "void";

            values["transactionId"] = paymentData.TransactionId;

            var data = BasicRequest(values);

            if (data != null)
            {
                result.Success = true;
                result.Message = "Process void success. ";
                result.Data    = data;
            }
            else
            {
                result.Message = "Process void failed. ";
            }

            return(result);
        }
Exemplo n.º 2
0
        public PaymentResultModel ProcessRefund(BasicRequestModel requestModel)
        {
            var result = new PaymentResultModel
            {
                Message = "Process refund failed. "
            };

            var paymentData = (HelcimBasicRequestModel)requestModel;

            var values = GetBasicData(paymentData);

            values["transactionType"] = "refund";
            values["terminalId"]      = paymentData.TerminalId;
            values["test"]            = paymentData.Test ? "1" : "0";
            values["amount"]          = paymentData.Amount.ToString("0.00");

            if (paymentData.CreditCard != null)
            {
                var creditCard = (HelcimCreditCardRequestModel)paymentData.CreditCard;
                values["cardHolderName"] = creditCard.CardHolderName;
                values["cardNumber"]     = creditCard.cardNumber;
                values["cardExpiry"]     = creditCard.cardExpiry;
                values["cardCVV"]        = creditCard.cardCVV;

                var data = BasicRequest(values);
                if (data != null)
                {
                    result.Success = true;
                    result.Message = "Process refund success. ";
                    result.Data    = data;
                }
            }

            return(result);
        }
Exemplo n.º 3
0
        public Result ProcessPayment(BasicRequestModel requestModel)
        {
            Result result = new Result();

            var paymentData = (HelcimBasicRequestModel)requestModel;

            var values = GetBasicData(paymentData);

            values["transactionType"] = "purchase";
            values["terminalId"]      = paymentData.TerminalId;
            //values["test"] = paymentData.Test ? "1" : "0";
            values["amount"] = paymentData.Amount.ToString("0.00");

            if (paymentData.CreditCard != null)
            {
                var creditCard = (HelcimCreditCardRequestModel)paymentData.CreditCard;
                values["cardHolderName"]       = creditCard.CardHolderName;
                values["cardNumber"]           = creditCard.CardNumber;
                values["cardExpiry"]           = creditCard.CardExpiry;
                values["cardCVV"]              = creditCard.CardCVV;
                values["cardHolderAddress"]    = creditCard.CardHolderAddress;
                values["cardHolderPostalCode"] = creditCard.CardHolderPostalCode;
            }
            else
            {
                values["cardToken"] = paymentData.CardToken;
                values["cardF4L4"]  = paymentData.CardF4L4;
                values["comments"]  = paymentData.Comments;
            }

            var xmlDocument = BasicRequest(values);

            if (xmlDocument != null)
            {
                var helcimResult  = GetHelcimResult(xmlDocument);
                var paymentResult = (PaymentResultModel)helcimResult;
                paymentResult.PaymentType = PaymentType.Purchase;
                paymentResult.Currency    = paymentData.Currency;
                result = paymentResult;

                if (helcimResult.Response == "1" && helcimResult.ResponseMessage == "APPROVED")
                {
                    paymentResult.Approved = true;
                    result.Success         = true;
                    result.Message         = "Process payment success. ";
                }
                else
                {
                    result.Message = "Process payment failed ";
                }
            }
            else
            {
                result.Message = "Process payment failed ";
            }

            return(result);
        }
Exemplo n.º 4
0
        public PaymentResultModel ProcessPayment(BasicRequestModel requestModel)
        {
            var result = new PaymentResultModel();

            var paymentData = (StripeBasicRequestModel)requestModel;
            var tokenId     = paymentData.TokenId;

            if (string.IsNullOrWhiteSpace(tokenId))
            {
                var card = new CreditCardOptions
                {
                    Number   = paymentData.CreditCard.cardNumber,
                    ExpYear  = paymentData.CreditCard.ExpiryYear,
                    ExpMonth = paymentData.CreditCard.ExpiryMonth,
                    Cvc      = paymentData.CreditCard.cardCVV
                };

                tokenId = GetTokenId(null, card).Result;
            }

            var options = new RequestOptions
            {
                ApiKey = Keys.PrivateKey
            };

            var myCharge = new ChargeCreateOptions
            {
                Amount      = (long)(paymentData.Amount * 100),
                Currency    = paymentData.Currency.ToString().ToLower(),
                Description = paymentData.Description,
                Source      = tokenId
            };

            var chargeService = new ChargeService();
            var stripeCharge  = chargeService.Create(myCharge, options);

            result = new PaymentResultModel
            {
                Success        = true,
                Message        = "Payment success. ",
                Approved       = stripeCharge.Status == "succeeded",
                AuthCode       = stripeCharge.AuthorizationCode,
                CardToken      = tokenId,
                FailureCode    = stripeCharge.FailureCode,
                FailureMessage = stripeCharge.FailureMessage,
                TransactionId  = stripeCharge.Id,
                Data           = stripeCharge
            };

            return(result);
        }
Exemplo n.º 5
0
        public PaymentResultModel ProcessPayment(BasicRequestModel requestModel)
        {
            PaymentResultModel result = new PaymentResultModel();

            var paymentData = (HelcimBasicRequestModel)requestModel;

            var values = GetBasicData(paymentData);

            values["transactionType"] = "purchase";
            values["terminalId"]      = paymentData.TerminalId;
            values["test"]            = paymentData.Test ? "1" : "0";
            values["amount"]          = paymentData.Amount.ToString("0.00");

            if (paymentData.CreditCard != null)
            {
                var creditCard = (HelcimCreditCardRequestModel)paymentData.CreditCard;
                values["cardHolderName"]       = creditCard.CardHolderName;
                values["cardNumber"]           = creditCard.cardNumber;
                values["cardExpiry"]           = creditCard.cardExpiry;
                values["cardCVV"]              = creditCard.cardCVV;
                values["cardHolderAddress"]    = creditCard.cardHolderAddress;
                values["cardHolderPostalCode"] = creditCard.cardHolderPostalCode;
            }
            else
            {
                values["cardToken"] = paymentData.CardToken;
                values["cardF4L4"]  = paymentData.CardF4L4;
                values["comments"]  = paymentData.Comments;
            }


            var data = BasicRequest(values);

            if (data != null)
            {
                result.Success = true;
                result.Message = "Process success. ";
                result.Data    = data;
            }
            else
            {
                result.Message = "Process failed ";
            }

            return(result);
        }
Exemplo n.º 6
0
 public PaymentResultModel ProcessVoid(BasicRequestModel requestModel)
 {
     throw new NotImplementedException();
 }