public static bool VerifyPayment(PayPalIpnParameters ipn, string verifyUrl) { bool isVerified = false; if (ipn.IsValid) { if (DnnUtils.GetDataResponseAsString(verifyUrl) == "VERIFIED") { isVerified = true; } } return(isVerified); }
public static bool VerifyPayment(PayPalIpnParameters ipn, string verifyURL) { try { bool isVerified = false; if (ipn.IsValid) { System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; HttpWebRequest PPrequest = (HttpWebRequest)WebRequest.Create(verifyURL); if ((PPrequest != null)) { PPrequest.Method = "POST"; PPrequest.ContentLength = ipn.PostString.Length; PPrequest.ContentType = "application/x-www-form-urlencoded"; StreamWriter writer = new StreamWriter(PPrequest.GetRequestStream()); writer.Write(ipn.PostString); writer.Close(); HttpWebResponse response = (HttpWebResponse)PPrequest.GetResponse(); if ((response != null)) { StreamReader reader = new StreamReader(response.GetResponseStream()); string responseString = reader.ReadToEnd(); reader.Close(); if (string.Compare(responseString, "VERIFIED", true) == 0) { isVerified = true; } } } } return(isVerified); } catch (Exception ex) { return(false); } }
public static bool VerifyPayment(PayPalIpnParameters ipn, string verifyUrl) { bool isVerified = false; if (ipn.IsValid) { if (DnnUtils.GetDataResponseAsString(verifyUrl) == "VERIFIED") isVerified = true; } return isVerified; }
/// <summary> /// This function needs to process and returned message from the bank. /// This processing may vary widely between banks. /// </summary> /// <param name="context"></param> public void ProcessRequest(HttpContext context) { var modCtrl = new NBrightBuyController(); var info = ProviderUtils.GetProviderSettings("NBrightPayPalpayment"); try { var ipn = new PayPalIpnParameters(context.Request.Form); var debugMode = info.GetXmlPropertyBool("genxml/checkbox/debug.mode"); var debugMsg = "START CALL" + DateTime.Now.ToString("s") + " </br>"; debugMsg += "returnmessage: " + context.Request.Form.Get("returnmessage") + "</br>"; if (debugMode) { info.SetXmlProperty("genxml/debugmsg", debugMsg); modCtrl.Update(info); } debugMsg += "NBrightPayPal DEBUG: " + DateTime.Now.ToString("s") + " </br>" + context.Request.Form + "<br/>"; if (Utils.IsNumeric(ipn.item_number)) { var validateUrl = info.GetXmlProperty("genxml/textbox/paymenturl") + "?" + ipn.PostString; // check the record exists debugMsg += "OrderId: " + ipn.item_number + " </br>"; var nbi = modCtrl.Get(Convert.ToInt32(ipn.item_number), "ORDER"); if (nbi != null) { var orderData = new OrderData(nbi.ItemID); if (ProviderUtils.VerifyPayment(ipn, validateUrl)) { if (debugMode) { info.SetXmlProperty("genxml/debugmsg", debugMsg); modCtrl.Update(info); } //set order status to Payed orderData.PaymentOk(); } else { if (ipn.IsValid) { info.SetXmlProperty("genxml/debugmsg", "NOT VALIDATED BY PAYPAL"); //set order status to Not verified orderData.PaymentOk("050"); } else { info.SetXmlProperty("genxml/debugmsg", "PAYMENT FAIL"); orderData.PaymentFail(); } } } else { debugMsg += "ORDER does not exists"; } if (debugMode) { info.SetXmlProperty("genxml/debugmsg", debugMsg); modCtrl.Update(info); } } } catch (Exception ex) { if (!ex.ToString().StartsWith("System.Threading.ThreadAbortException")) // we expect a thread abort from the End response. { info.SetXmlProperty("genxml/debugmsg", "NBrightPayPal ERROR: " + ex.ToString()); modCtrl.Update(info); } } }