示例#1
0
        private TransactionResponse CommitTransactionNormal(TransactionRequest request)
        {
            string dataToSend = buildTransactionRequestString(request);

            var req = (HttpWebRequest)WebRequest.Create(singlePaymentApi);

            req.Headers.Add("X-PAYPAL-SECURITY-USERID", accountDetails.ApiUsername);
            req.Headers.Add("X-PAYPAL-SECURITY-PASSWORD", accountDetails.ApiPassword);
            req.Headers.Add("X-PAYPAL-SECURITY-SIGNATURE", accountDetails.ApiSignature);
            req.Headers.Add("X-PAYPAL-APPLICATION-ID", accountDetails.AppId);
            req.Headers.Add("X-PAYPAL-REQUEST-DATA-FORMAT", "NV");
            req.Headers.Add("X-PAYPAL-RESPONSE-DATA-FORMAT", "NV");
            req.Headers.Add("X-PAYPAL-DEVICE-IPADDRESS", "");
            req.Headers.Add("X-PAYPAL-REQUEST-SOURCE", "merchant-php-sdk-2.0.96");


            req.Method        = "POST";
            req.ContentLength = dataToSend.Length;
            req.ContentType   = "application/x-www-form-urlencoded";

            var streamWriter = new StreamWriter(req.GetRequestStream(), Encoding.ASCII);

            streamWriter.Write(dataToSend);
            streamWriter.Close();

            NameValuePairs content = null;

            using (var streamReader = new StreamReader(req.GetResponse().GetResponseStream()))
            {
                string result = streamReader.ReadToEnd();
                content = NameValuePairs.Parse(result);
            }

            return(new PayPalTransactionResponse(this, content));
        }
示例#2
0
        public override TransactionResponse CommitTransaction(TransactionRequest request)
        {
            string dataToSend = buildTransactionRequestString(request);

            var req = (HttpWebRequest)WebRequest.Create(paymentApi);

            req.Method        = "POST";
            req.ContentLength = dataToSend.Length;
            req.ContentType   = "application/x-www-form-urlencoded";

            var streamWriter = new StreamWriter(req.GetRequestStream(), Encoding.ASCII);

            streamWriter.Write(dataToSend);
            streamWriter.Close();

            NameValuePairs content = null;
            string         result  = String.Empty;

            using (var streamReader = new StreamReader(req.GetResponse().GetResponseStream()))
            {
                result  = streamReader.ReadToEnd();
                content = NameValuePairs.Parse(result);
            }

            return(new SolidTrustPayTransactionResponse(this, content, result));
        }
示例#3
0
        public void HandlePayza(string ipnResponse)
        {
            var data = NameValuePairs.Parse(ipnResponse);

            string[] args = new string[] { data["apc_2"], data["apc_3"], data["apc_4"], data["apc_5"], data["apc_6"] };

            if (AppSettings.Site.CurrencyCode.Equals(data["ap_currency"], StringComparison.OrdinalIgnoreCase) &&
                "Success".Equals(data["ap_status"], StringComparison.OrdinalIgnoreCase))
            {
                PaymentHandler.CheckIfNotDoneYet(PaymentProcessor.Payza, data["ap_referencenumber"]);
                handle(args, data["ap_referencenumber"], data["ap_totalamount"], "Payza");
            }
            else
            {
                ErrorLogger.Log("Payza IPN: Problems with response: " + ipnResponse, LogType.Payza);
            }
        }
示例#4
0
        public void HandlePayPal(string ipnResponse)
        {
            var data = NameValuePairs.Parse(ipnResponse);

            string[] args = data["invoice"].Split(PayPalButtonGenerationStrategy.ArgsDelimeter);

            if (AppSettings.Site.CurrencyCode.Equals(data["mc_currency"], StringComparison.OrdinalIgnoreCase) &&
                "Completed".Equals(data["payment_status"], StringComparison.OrdinalIgnoreCase))
            {
                PaymentHandler.CheckIfNotDoneYet(PaymentProcessor.PayPal, data["txn_id"]);
                handle(args, data["txn_id"], data["mc_gross"], "PayPal");
            }
            else
            {
                ErrorLogger.Log("PayPal IPN: Problems with response: " + ipnResponse, LogType.PayPal);
            }
        }