protected void Page_Load(object sender, EventArgs e) { Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel("Code='weixinpay'"); if (pay == null) { Log.Add("在线支付接口 weixinpay 配置错误"); return; } Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); int order_id = RequestTool.RequestInt("order_id", 0); Lebi_Order order = B_Lebi_Order.GetModel(order_id); if (order == null) { Response.Write("订单错误"); Response.End(); return; } TenpayUtil tu = new TenpayUtil(); string sp_billno = order.Code; //当前时间 yyyyMMdd string date = DateTime.Now.ToString("yyyyMMdd"); //if (null == sp_billno) //{ // //生成订单10位序列号,此处用时间和随机数生成,商户根据自己调整,保证唯一 // sp_billno = DateTime.Now.ToString("HHmmss") + TenpayUtil.BuildRandomStr(4); //} //else //{ // sp_billno = Request["order_no"].ToString(); //} sp_billno = TenpayUtil.partner + sp_billno; RequestHandler outParams = new RequestHandler(Context); outParams.init(); string productid = sp_billno; string timeStamp = TenpayUtil.getTimestamp(); string nonceStr = TenpayUtil.getNoncestr(); RequestHandler Params = new RequestHandler(Context); Params.setParameter("appid", TenpayUtil.appid); Params.setParameter("appkey", TenpayUtil.appkey); Params.setParameter("noncestr", nonceStr); Params.setParameter("timestamp", timeStamp); Params.setParameter("productid", productid); string sign = Params.createSHA1Sign(); Params.setParameter("sign", sign); parm = "weixin://wxpay/bizpayurl?sign=" + sign + "&appid=" + TenpayUtil.appid + "&productid=" + productid + "&timeStamp=" + timeStamp + "&nonceStr=" + nonceStr; Response.Write(parm); parm = QRfromGoogle(parm); }
bool VerifyPDT(Lebi_OnlinePay pay) { string strFormValues; string strNewValues; string strResponse; string txToken = Request.QueryString["tx"].ToString(); string serverURL = "https://www.paypal.com/cgi-bin/webscr"; string query = "cmd=_notify-synch&tx=" + txToken + "&at=" + pay.UserKey; //请注意,请将PayPaypal.PDTToken设置为上文中你记录下来的身份标记 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(serverURL); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; byte[] param = HttpContext.Current.Request.BinaryRead(HttpContext.Current.Request.ContentLength); strFormValues = Encoding.ASCII.GetString(param); strNewValues = strFormValues + query; //query附加上去一起发送给paypal req.ContentLength = strNewValues.Length; StreamWriter stout = new StreamWriter(req.GetRequestStream(), Encoding.ASCII); stout.Write(strNewValues); stout.Close(); StreamReader sr = new StreamReader(req.GetResponse().GetResponseStream()); strResponse = sr.ReadToEnd(); sr.Close(); SystemLog.Add("pdt验证结果" + strResponse); if (strResponse.IndexOf("SUCCESS") == 0) { return(true); } return(false); //string res = strResponse.Substring(0, strResponse.IndexOf("\n")); //return res == "SUCCESS"; }
public WxPayConfig(Lebi_Order order) { string where = ""; if (order != null) { where = "id = " + order.OnlinePay_id + ""; } else { where = "Code='weixinpayh5'"; } Lebi_OnlinePay onlinepay = B_Lebi_OnlinePay.GetModel(where); if (onlinepay == null) { Log.Add("在线支付接口 weixinpay 配置错误"); return; } Shop.Bussiness.Site site = new Shop.Bussiness.Site(); B_BaseConfig bconfig = new B_BaseConfig(); BaseConfig SYS = bconfig.LoadConfig(); MCHID = onlinepay.UserName; KEY = onlinepay.UserKey; APPID = onlinepay.Appid; //SystemLog.Add("weixinpay-WxPayConfig" + "MCHID : " + MCHID + ",KEY : " + KEY + ",APPID : " + APPID); //APPSECRET = onlinepay.Appkey; //IP = HttpContext.Current.Request.ServerVariables.Get("Local_Addr"); NOTIFY_URL = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/weixinpayh5/payNotifyUrl.aspx"; }
static Config() { //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel("Code='alipaybatch'"); if (pay == null) { return; } //合作身份者ID,以2088开头由16位纯数字组成的字符串 partner = pay.UserName; //交易安全检验码,由数字和字母组成的32位字符串 key = pay.UserKey; //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ //字符编码格式 目前支持 gbk 或 utf-8 input_charset = "utf-8"; //签名方式,选择项:RSA、DSA、MD5 sign_type = "MD5"; }
public Config(Lebi_Order order) { //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "alipayJSDZ"); if (pay == null) { return; } //合作身份者ID,以2088开头由16位纯数字组成的字符串 partner = pay.UserName; //交易安全检验码,由数字和字母组成的32位字符串 key = pay.UserKey; //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ //字符编码格式 目前支持 gbk 或 utf-8 input_charset = "utf-8"; //签名方式,选择项:RSA、DSA、MD5 sign_type = "MD5"; }
protected void Page_Load(object sender, EventArgs e) { Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel("Code='95epay'"); if (pay == null) { Log.Add("在线支付接口 95epay 配置错误"); Response.End(); return; } Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); int order_id = RequestTool.RequestInt("order_id", 0); Lebi_Order order = B_Lebi_Order.GetModel(order_id); if (order == null) { Response.Write("订单错误"); Response.End(); return; } sorder.ord_no = order.Code; //订单编号 sorder.ord_amt = order.Money_Pay * currendy.ExchangeRate; //订单金额 sorder.ord_date = DateTime.Now.ToString("yyyyMMdd"); //交易日期时间 sorder.ver = "01"; sorder.mrch_no = pay.UserName; }
protected void Page_Load(object sender, EventArgs e) { #region 获取参数值 result = Request["result"]; pay_message = Request["pay_message"]; agent_id = Request["agent_id"]; jnet_bill_no = Request["jnet_bill_no"]; agent_bill_id = Request["agent_bill_id"]; pay_type = Request["pay_type"]; pay_amt = Request["pay_amt"]; remark = Request["remark"]; returnSign = Request["sign"]; #endregion order = B_Lebi_Order.GetModel("Code=lbsql{'" + agent_bill_id + "'}"); if (order == null) { Response.Write("系统错误"); Response.End(); return; } pay = Shop.Bussiness.Money.GetOnlinePay(order, "huifubao"); sign = GetSign(); //比较MD5签名结果 是否相等 if (sign.Equals(returnSign)) { Order.OnlinePaySuccess(agent_bill_id); Response.Write("ok"); } else { Response.Write("error"); } Response.End(); }
public int pages = 0;//1手机页面 protected void Page_Load(object sender, EventArgs e) { int order_id = RequestTool.RequestInt("order_id", 0); Lebi_Order order = B_Lebi_Order.GetModel(order_id); if (order == null) { Response.Write("订单错误"); Response.End(); return; } Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "qianhai"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } if (pay.FeeRate > 0) { order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100; } order.Site_id_pay = CurrentSite.id; B_Lebi_Order.Update(order); Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); business = pay.UserName; OrderCode = order.Code; Pid = order.Code; currency = pay.Currency_Code; terminal = pay.terminal; Money = (order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100))).ToString("0.00"); Shop.Bussiness.Site site = new Shop.Bussiness.Site(); ReturnUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/qianhai/ReturnUrl.aspx"; billing_firstName = RequestTool.RequestSafeString("billing_firstName"); billing_lastName = RequestTool.RequestSafeString("billing_lastName"); billing_email = RequestTool.RequestSafeString("billing_email"); billing_phone = RequestTool.RequestSafeString("billing_phone"); billing_country = RequestTool.RequestSafeString("billing_country"); billing_city = RequestTool.RequestSafeString("billing_city"); billing_address = RequestTool.RequestSafeString("billing_address"); billing_zip = RequestTool.RequestSafeString("billing_zip"); //account+terminal+backUrl+order_number+order_currency+order_amount+billing_firstName+billing_lastName+billing_email+secureCode scode = pay.UserName + pay.terminal + ReturnUrl + order.Code + currency + Money + billing_firstName + billing_lastName + billing_email + pay.UserKey; scode = GetSHA256(scode).ToUpper(); if (CurrentSite != null) { if (CurrentSite.IsMobile == 1) { pages = 1;//1手机端 } } }
protected void Page_Load(object sender, EventArgs e) { int order_id = RequestTool.RequestInt("order_id", 0); order = B_Lebi_Order.GetModel(order_id); if (order == null) { Response.Write("ERROR"); Response.End(); return; } Lebi_Language language = B_Lebi_Language.GetModel(order.Language_id); if (order.IsPaid == 1) { Response.Write(Language.Tag("已付款", language.Code)); Response.End(); return; } order.Site_id_pay = CurrentSite.id; order.Language_id = CurrentLanguage.id; Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "qianhai"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } if (pay.FreeFeeRate == 1) { pay.FeeRate = 0; } if (pay.FeeRate > 0) { order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100; } if (order.OnlinePay_id != pay.id) { order.OnlinePay_id = pay.id; order.OnlinePay_Code = pay.Code; order.OnlinePay = pay.Name; } B_Lebi_Order.Update(order); Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); business = pay.UserName; currency = pay.Currency_Code; Money = (order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100))).ToString("f" + currendy.DecimalLength + ""); Shop.Bussiness.Site site = new Shop.Bussiness.Site(); ReturnUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/qianhai/ReturnUrl.aspx"; //account+terminal+backUrl+order_number+order_currency+order_amount+billing_firstName+billing_lastName+billing_email+secureCode //scode = pay.UserName + "" + ReturnUrl + order.Code + pay.Currency_Code + Money + "" + "" + "" + pay.UserKey; }
/// <summary> /// 获得在线付款接口参数MODEL /// </summary> /// <param name="code"></param> /// <param name="order"></param> public static Lebi_OnlinePay GetOnlinePay(Lebi_Order order, string code) { if (order == null) { return(null); } string where = "Code='" + code + "'"; if (string.IsNullOrEmpty(order.KeyCode)) { if (order.IsSupplierCash == 0 && order.Language_id > 0) { where += " and ','+Language_ids+',' like '%," + order.Language_id + ",%'"; } } Lebi_OnlinePay pay = B_Lebi_OnlinePay.GetModel(where); string log = ""; if (pay == null) { pay = B_Lebi_OnlinePay.GetModel("Code='" + code + "'"); } if (pay == null) { log = "在线支付接口 " + code + " 配置错误"; Log.Add(log); } else { if (order.IsSupplierCash == 1) { Lebi_Supplier supplier = B_Lebi_Supplier.GetModel(order.Supplier_id); if (supplier == null) { supplier = new Lebi_Supplier(); log = "在线支付接口 " + code + " 配置错误[供应商ID:" + order.Supplier_id + "]"; Log.Add(log); return(pay); } Lebi_OnlinePay supplierpay = B_Lebi_OnlinePay.GetModel("Code='" + code + "' and Supplier_id=" + supplier.id + ""); if (supplierpay == null) { log = "在线支付接口 " + code + " 配置错误[供应商:" + supplier.SubName + ",ID:" + order.Supplier_id + "]"; Log.Add(log); return(pay); } supplierpay.TypeName = pay.TypeName; supplierpay.Url = pay.Url; supplierpay.Code = pay.Code; supplierpay.Currency_Code = pay.Currency_Code; supplierpay.Currency_id = pay.Currency_id; supplierpay.Currency_Name = pay.Currency_Name; return(supplierpay); } } return(pay); }
public Lebi_OnlinePay Getpay(int id) { Lebi_OnlinePay model = B_Lebi_OnlinePay.GetModel("Supplier_id=" + CurrentSupplier.id + " and parentid=" + id); if (model == null) { model = new Lebi_OnlinePay(); } return(model); }
public Lebi_OnlinePay GetPay(string code) { var m = onlinepays.Find(p => p.Code == code); if (m == null) { m = new Lebi_OnlinePay(); } return(m); }
/// <summary> /// 获取一个支付方式的对于供应商设置或(默认设置) /// </summary> /// <param name="pay"></param> /// <returns></returns> public Lebi_OnlinePay Getpay(Lebi_OnlinePay pay) { if (order.IsSupplierCash == 0) { return(pay); } Lebi_OnlinePay p = B_Lebi_OnlinePay.GetModel("parentid=" + pay.id + " and Supplier_id=" + order.Supplier_id + " and IsUsed=1"); return(p); }
protected void Page_Load(object sender, EventArgs e) { int order_id = RequestTool.RequestInt("order_id", 0); order = B_Lebi_Order.GetModel(order_id); if (order == null) { Response.Write("ERROR"); Response.End(); return; } Lebi_Language language = B_Lebi_Language.GetModel(order.Language_id); if (order.IsPaid == 1) { Response.Write(Language.Tag("已付款", language.Code)); Response.End(); return; } order.Site_id_pay = CurrentSite.id; order.Language_id = CurrentLanguage.id; Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "molpay"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } if (pay.FreeFeeRate == 1) { pay.FeeRate = 0; } if (pay.FeeRate > 0) { order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100; } if (order.OnlinePay_id != pay.id) { order.OnlinePay_id = pay.id; order.OnlinePay_Code = pay.Code; order.OnlinePay = pay.Name; } B_Lebi_Order.Update(order); business = pay.UserName; Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); OrderCode = order.Code; mid = pay.UserName; Money = (order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100))).ToString("f" + currendy.DecimalLength + ""); Shop.Bussiness.Site site = new Shop.Bussiness.Site(); ReturnUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/paypal/ReturnUrl.aspx"; vcode = MOLMD5.Sign(Money + pay.UserName + order.Code + pay.UserKey); }
protected void Page_Load(object sender, EventArgs e) { try { string ppTx = RequestTool.RequestSafeString("txn_id"); string ppStatus = RequestTool.RequestSafeString("payment_status"); string ppDate = RequestTool.RequestSafeString("payment_date"); string ppItem = RequestTool.RequestSafeString("item_name"); string ppPrice = RequestTool.RequestSafeString("mc_gross"); string ppitem_number = RequestTool.RequestSafeString("item_number");//存储站内订单号 Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(ppitem_number, "paypal"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); string Content = ""; Content += "txn_id:" + ppTx + "<br>"; Content += "payment_status:" + ppStatus + "<br>"; Content += "payment_date:" + ppDate + "<br>"; Content += "item_name:" + ppItem + "<br>"; Content += "mc_gross:" + ppPrice + "<br>"; Content += "ppitem_number:" + ppitem_number + "<br>"; string txToken = Request.QueryString["tx"]; //paypal流水号 if (VerifyIPN()) //验证成功 { Response.Write("OK"); Order.OnlinePaySuccess(ppitem_number); } else { if (VerifyPDT(pay)) { Response.Write("OK"); Order.OnlinePaySuccess(ppitem_number); } else { Response.Write("False"); //SystemLog.Add("paypal验证失败"); } } } catch (Exception ex) { //Response.Write("False"); SystemLog.Add("paypal验证异常" + ex.Message); } }
/** * 生成直接支付url,支付url有效期为2小时,模式二 * @param productId 商品ID * @return 模式二URL */ public static string GetPayUrl(string productId) { //Log.Info(this.GetType().ToString(), "Native pay mode 2 url is producing..."); Lebi_Order order = B_Lebi_Order.GetModel("id=" + productId); if (order == null) { return(""); } Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "weixinpay"); if (pay == null) { Log.Add("在线支付接口 weixinpay 配置错误"); return(""); } Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); if (pay.FreeFeeRate == 1) { pay.FeeRate = 0; } if (pay.FeeRate > 0) { order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100; } string order_price = (order.Money_Pay * currendy.ExchangeRate * 100 * (1 + (pay.FeeRate / 100))).ToString("0"); SystemLog.Add("weixinpay-GetPayUrl" + "productId : " + productId); WxPayData data = new WxPayData(); data.SetValue("body", "订单号:" + order.Code); //商品描述 data.SetValue("attach", ""); //附加数据 data.SetValue("out_trade_no", order.Code); data.SetValue("total_fee", order_price); //总金额 data.SetValue("time_start", DateTime.Now.ToString("yyyyMMddHHmmss")); //交易起始时间 data.SetValue("time_expire", DateTime.Now.AddMinutes(10).ToString("yyyyMMddHHmmss")); //交易结束时间 data.SetValue("goods_tag", "订单号:" + order.Code); //商品标记 data.SetValue("trade_type", "NATIVE"); //交易类型 data.SetValue("product_id", productId); //商品ID try { WxPayData result = WxPayApi.UnifiedOrder(data); //调用统一下单接口 SystemLog.Add("weixinpay-GetPayUrl" + "result : " + result); string url = result.GetValue("code_url").ToString(); //获得统一下单接口返回的二维码链接 //Log.Info(this.GetType().ToString(), "Get native pay mode 2 url : " + url); return(url); } catch (System.NullReferenceException ex) { SystemLog.Add("weixinpay-GetPayUrl" + "result : " + ex.ToString()); return(ex.ToString()); } }
/// <summary> /// 编辑在线支付 /// </summary> public void OnlinePay_Edit() { int id = RequestTool.RequestInt("id", 0); Lebi_OnlinePay parentmodel = B_Lebi_OnlinePay.GetModel(id); if (parentmodel == null) { Response.Write("{\"msg\":\"" + Tag("参数错误") + "\"}"); return; } Lebi_OnlinePay model = B_Lebi_OnlinePay.GetModel("parentid=" + parentmodel.id + " and Supplier_id=" + CurrentSupplier.id + ""); if (model == null) { model = new Lebi_OnlinePay(); } if (model.id == 0) { if (!Power("onlinepay_add", "添加在线支付")) { AjaxNoPower(); return; } } else { if (!Power("onlinepay_edit", "编辑在线支付")) { AjaxNoPower(); return; } } model.UserName = RequestTool.RequestSafeString("UserName"); model.UserKey = RequestTool.RequestSafeString("UserKey"); model.Email = RequestTool.RequestSafeString("Email"); model.Sort = RequestTool.RequestInt("Sort", 0); model.IsUsed = RequestTool.RequestInt("IsUsed", 0); model.Supplier_id = CurrentSupplier.id; model.parentid = parentmodel.id; if (model.id == 0) { B_Lebi_OnlinePay.Add(model); model.id = B_Lebi_OnlinePay.GetMaxId(); } else { B_Lebi_OnlinePay.Update(model); } Log.Add("编辑在线支付", "OnlinePay", model.id.ToString(), CurrentSupplier, id.ToString()); Response.Write("{\"msg\":\"OK\",\"id\":\"" + model.id + "\"}"); }
protected void Page_Load(object sender, EventArgs e) { int id = RequestTool.RequestInt("id", 0); parentmodel = B_Lebi_OnlinePay.GetModel(id); if (parentmodel == null) { PageError(); return; } model = B_Lebi_OnlinePay.GetModel("parentid=" + parentmodel.id + " and Supplier_id=" + CurrentSupplier.id + ""); if (model == null) { model = new Lebi_OnlinePay(); } if (model.id == 0) { if (!Power("onlinepay_add", "添加在线支付")) { WindowNoPower(); } } else { if (!Power("onlinepay_edit", "编辑在线支付")) { WindowNoPower(); } } switch (model.Code) { case "molpay": username = "******"; key = "Verify Key"; email = Tag("邮箱"); break; case "wangyinzaixian": username = "******"; key = "MD5密钥"; email = Tag("邮箱"); break; default: username = Tag("帐号"); key = Tag("KEY"); email = Tag("邮箱"); break; } }
protected void Page_Load(object sender, EventArgs e) { try { string RefId = Request.Params["RefId"]; string ResCode = Request.Params["ResCode"]; SaleOrderId = Convert.ToInt64(Request.Params["SaleOrderId"]); SaleReferenceId = Convert.ToInt64(Request.Params["SaleReferenceId"]); string OrderID = Convert.ToString(SaleOrderId); Lebi_Order order = B_Lebi_Order.GetModel("id=" + OrderID + ""); if (order == null) { Response.Write("416"); //Response.Write("系统错误"); Response.End(); return; } Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order.Code, "behpardakht"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); string Content = ""; Content += "OrderCode:" + order.Code + "<br>"; Content += "ResCode:" + ResCode + "<br>"; Content += "SaleReferenceId:" + SaleReferenceId + "<br>"; if (yanzheng(pay) == 0)//验证成功 { Response.Write("0"); Order.OnlinePaySuccess(order.Code); } else { Response.Write("416"); //SystemLog.Add("paypal验证失败"); } } catch (Exception ex) { //Response.Write("False"); SystemLog.Add("behpardakht验证异常" + ex.Message); } }
protected string remark2; //备注1 protected void Page_Load(object sender, EventArgs e) { v_oid = Request["v_oid"]; Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(v_oid, "wangyinzaixian"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } // MD5密钥要跟订单提交页相同,如Send.asp里的 key = "test" ,修改""号内 test 为您的密钥 string key = pay.UserKey; // 如果您还没有设置MD5密钥请登陆我们为您提供商户后台,地址:https://merchant3.chinabank.com.cn/ // 登陆后在上面的导航栏里可能找到“资料管理”,在资料管理的二级导航栏里有“MD5密钥设置” // 建议您设置一个16位以上的密钥或更高,密钥最多64位,但设置16位已经足够了 v_oid = Request["v_oid"]; v_pstatus = Request["v_pstatus"]; v_pstring = Request["v_pstring"]; v_pmode = Request["v_pmode"]; v_md5str = Request["v_md5str"]; v_amount = Request["v_amount"]; v_moneytype = Request["v_moneytype"]; remark1 = Request["remark1"]; remark2 = Request["remark2"]; string str = v_oid + v_pstatus + v_amount + v_moneytype + key; str = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str, "md5").ToUpper(); if (str == v_md5str) { Response.Write("ok"); //通知网银服务器验证通过,停止发送 if (v_pstatus.Equals("20")) { //支付成功 //商户系统的逻辑处理(例如判断金额,判断支付状态,更新订单状态等等)....... Order.OnlinePaySuccess("wangyinzaixian", v_oid, "", false); } } else { Response.Write("error"); //验证失败,请求重发 } }
private int yanzheng(Lebi_OnlinePay pay) { //try //{ // string result; // BPService. // BPService.PaymentGatewayImplService bpService = new BPService.PaymentGatewayImplService(); // result = bpService.bpVerifyRequest(Int16.Parse(TerminalIdTextBox.Text), // UserNameTextBox.Text, // UserPasswordTextBox.Text, // Int64.Parse(VerifyOrderIdTextBox.Text), // Int64.Parse(VerifySaleOrderIdTextBox.Text), // Int64.Parse(VerifySaleReferenceIdTextBox.Text)); // VerifyOutputLabel.Text = result; //} //catch (Exception exp) //{ // VerifyOutputLabel.Text = "Error: " + exp.Message; //} //< xs:element name = "terminalId" type = "xs:long" /> //< xs:element minOccurs = "0" name = "userName" type = "xs:string" /> //< xs:element minOccurs = "0" name = "userPassword" type = "xs:string" /> //< xs:element name = "orderId" type = "xs:long" /> //< xs:element name = "refundOrderId" type = "xs:long" /> //< xs:element name = "refundReferenceId" type = "xs:long" /> object[] args = new object[6]; args[0] = Int64.Parse(pay.terminal); args[1] = pay.UserName; args[2] = pay.UserKey; args[3] = SaleOrderId; args[4] = SaleOrderId; args[5] = SaleReferenceId; string web = "https://bpm.shaparak.ir/pgwchannel/services/pgw"; object obj = WebServiceTool.InvokeWebService(web, "PaymentGatewayImplService", "bpVerifyRequest", args, "https://bpm.shaparak.ir/pgwchannel/services/pgw?wsdl=IPaymentGateway.wsdl"); try { return(Convert.ToInt32(obj)); } catch { return(1); } // return 0; }
public string tenpay_notify = ""; //支付完成后的回调处理页面,*替换成notify_url.asp所在路径 public TenpayUtil(Lebi_Order order) { Lebi_OnlinePay onlinepay = B_Lebi_OnlinePay.GetModel("id = " + order.OnlinePay_id + ""); if (onlinepay == null) { Log.Add("在线支付接口 weixinpay 配置错误"); return; } Shop.Bussiness.Site site = new Shop.Bussiness.Site(); //B_BaseConfig bconfig = new B_BaseConfig(); //BaseConfig SYS = bconfig.LoadConfig(); mch_id = onlinepay.UserName; key = onlinepay.UserKey; appid = onlinepay.Appid; // SYS.platform_weixin_id; appkey = onlinepay.UserKey; tenpay_notify = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/weixinpay/payNotifyUrl.aspx"; }
protected void Page_Load(object sender, EventArgs e) { MerNo = System.Web.HttpContext.Current.Request.Params["MerNo"].ToString(); BillNo = System.Web.HttpContext.Current.Request.Params["BillNo"].ToString(); Amount = System.Web.HttpContext.Current.Request.Params["Amount"].ToString(); Succeed = System.Web.HttpContext.Current.Request.Params["Succeed"].ToString(); Result = System.Web.HttpContext.Current.Request.Params["Result"].ToString(); MD5info = System.Web.HttpContext.Current.Request.Params["MD5info"].ToString(); MerRemark = System.Web.HttpContext.Current.Request.Params["MerRemark"].ToString(); Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(BillNo, "95epay"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } string MD5key = pay.UserKey;//Md5加密私钥[注册时产生] string md5md5 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(MD5key, "MD5").ToUpper(); string md5src = "Amount=" + Amount + "&BillNo=" + BillNo + "&MerNo=" + MerNo + "&Succeed=" + Succeed + "&" + md5md5; string md5str = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(md5src, "MD5").ToUpper(); if (MD5info == md5str) { if (Succeed == "88") { //交易成功 Order.OnlinePaySuccess(BillNo); Response.Write("success"); } else { //交易失败 Response.Write("交易失败"); } } else { //验证失败 Response.Write("验证失败"); } }
public string tenpay_notify = "http://*****/payReturnUrl.aspx"; //支付完成后的回调处理页面; public TenpayUtil(Lebi_Order order) { /*tenpay = System.Configuration.ConfigurationSettings.AppSettings["tenpay"];*/ Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "tenpayJSDZ"); if (pay == null) { return; } Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); Shop.Bussiness.Site site = new Shop.Bussiness.Site(); B_BaseConfig bconfig = new B_BaseConfig(); BaseConfig SYS = bconfig.LoadConfig(); bargainor_id = pay.UserName; tenpay_key = pay.UserKey; tenpay_return = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/payReturnUrl.aspx"; tenpay_notify = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/payNotifyUrl.aspx"; }
/// <summary> /// 初始化支付参数信息 /// </summary> public UmsPayConfig(Lebi_OnlinePay pay) { //Lebi_OnlinePay pay = Money.GetOnlinePay(order, "yinlianqmf"); //测试 //商户号 898000093990002 终端号 99999999 // 下单地址 https://116.228.21.162:8603/merFrontMgr/orderBusinessServlet // 订单查询地址 https://116.228.21.162:8603/merFrontMgr/orderQueryServlet // 银商验签公钥 http://116.228.21.162:9149/download_qmf/spackage 下载 // 商户签名私钥 http://116.228.21.162:9149/download_qmf/spackage //正式 //下单查询地址https://mpos.quanminfu.com:6004/merFrontMgr/orderBusinessServlet //订单查询地址 https://mpos.quanminfu.com:6004/merFrontMgr/orderQueryServlet _privateKey = pay.UserKey; _publicKey = pay.Email; _orderUrl = "https://mpos.quanminfu.com:6004/merFrontMgr/orderBusinessServlet"; _queryOrderUrl = "https://mpos.quanminfu.com:6004/merFrontMgr/orderQueryServlet"; Shop.Bussiness.Site site = new Shop.Bussiness.Site(); _notifyUrl = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/yinlianqmf/notify_url.aspx";; _merId = pay.UserName; _merTermId = pay.terminal; }
public Config(Lebi_Order order) { //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "alipayWAP"); if (pay == null) { return; } //合作身份者ID,以2088开头由16位纯数字组成的字符串 partner = pay.UserName; //收款支付宝账号 seller_email = pay.Email; //交易安全检验码,由数字和字母组成的32位字符串 //如果签名方式设置为“MD5”时,请设置该参数 key = pay.UserKey; //商户的私钥 //如果签名方式设置为“0001”时,请设置该参数 private_key = @""; //支付宝的公钥 //如果签名方式设置为“0001”时,请设置该参数 public_key = @""; //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ //字符编码格式 目前支持 utf-8 input_charset = "utf-8"; //签名方式,选择项:0001(RSA)、MD5 //sign_type = "0001"; sign_type = "MD5"; //无线的产品中,签名方式为rsa时,sign_type需赋值为0001而不是RSA }
protected void Page_Load(object sender, EventArgs e) { string tranID = RequestTool.RequestString("tranID"); string orderid = RequestTool.RequestString("orderid"); Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(orderid, "molpay"); if (pay == null) { Response.Write("系统错误"); Response.End(); return; } string status = RequestTool.RequestString("status"); string domain = RequestTool.RequestString("domain"); string amount = RequestTool.RequestString("amount"); string currency = RequestTool.RequestString("currency"); string paydate = RequestTool.RequestString("paydate"); string appcode = RequestTool.RequestString("appcode"); string skey = RequestTool.RequestString("skey"); string key0 = MOLMD5.Sign(tranID + orderid + status + domain + amount + currency); string key1 = MOLMD5.Sign(paydate + domain + key0 + appcode + pay.UserKey); if (skey != key1) { status = "1"; } if (status == "00") { //验证成功 Order.OnlinePaySuccess(orderid); } else { } }
/// <summary> /// 获取一个支付方式的对于供应商设置或(默认设置) /// </summary> /// <param name="pay"></param> /// <returns></returns> public Lebi_OnlinePay Getpay(Lebi_OnlinePay pay) { if (order.IsSupplierCash == 0) { return(pay); } Lebi_Supplier supplier = B_Lebi_Supplier.GetModel(order.Supplier_id); if (supplier != null) { //供应商发货商城收款的情况 if (supplier.IsCash == 0) { return(pay); } } Lebi_OnlinePay p = B_Lebi_OnlinePay.GetModel("parentid=" + pay.id + " and Supplier_id=" + order.Supplier_id + " and IsUsed=1"); if (p != null) { if (Lang(p.Name) == "") { p.Name = pay.Name; } if (Lang(p.Description) == "") { p.Name = pay.Name; } if (p.Logo == "") { p.Logo = pay.Logo; } } return(p); }
protected void Page_Load(object sender, EventArgs e) { try { Shop.Bussiness.Site site = new Shop.Bussiness.Site(); int order_id = RequestTool.RequestInt("order_id", 0); Lebi_Order order = B_Lebi_Order.GetModel(order_id); if (order == null) { Response.Write("ERROR"); Response.End(); return; } Lebi_Language language = B_Lebi_Language.GetModel(order.Language_id); if (order.IsPaid == 1) { Response.Write(Language.Tag("已付款", language.Code)); Response.End(); return; } order.Site_id_pay = CurrentSite.id; order.Language_id = CurrentLanguage.id; Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "yinlianqmf"); if (pay == null) { Response.Write(Language.Tag("系统错误", language.Code)); Response.End(); return; } if (pay.FeeRate > 0) { order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100; } if (order.OnlinePay_id != pay.id) { order.OnlinePay_id = pay.id; order.OnlinePay_Code = pay.Code; order.OnlinePay = pay.Name; } B_Lebi_Order.Update(order); config = new UmsPayConfig(pay); Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id); //string notify_url = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/pinpay/notify_url.aspx"; Lebi_Site lebisite = B_Lebi_Site.GetModel(order.Site_id_pay); if (site == null) { returnurl = Shop.Bussiness.Site.Instance.WebPath; } else { Lebi_Language lang = B_Lebi_Language.GetModel(order.Language_id); string path = ""; if (lang != null) { path = lang.Path.TrimEnd('/'); } if (lebisite.Domain == "") { returnurl = Shop.Bussiness.Site.Instance.WebPath.TrimEnd('/') + lebisite.Path.TrimEnd('/') + path; } else { returnurl = Shop.Bussiness.Site.Instance.WebPath.TrimEnd('/') + path; } } returnurl = "http://" + RequestTool.GetRequestDomain() + returnurl.TrimEnd('/') + "/user/OrderDetails.aspx?id=" + order.id; decimal order_amount1 = order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100)); msg = Payment(config, order, order_amount1); } finally { } }
/// <summary> /// 生成充值订单 /// </summary> public void CreateMoneyOrder() { decimal money = RequestTool.RequestDecimal("RMoney", 0); if (money == 0) { Response.Write("{\"msg\":\"" + Tag("充值金额必须大于0") + "\"}"); return; } Lebi_Currency DefaultCurrency = B_Lebi_Currency.GetModel("IsDefault=1"); if (DefaultCurrency == null) { DefaultCurrency = B_Lebi_Currency.GetList("", "Sort desc").FirstOrDefault(); } int onlinepay_id = RequestTool.RequestInt("onlinepay_id"); int pay_id = RequestTool.RequestInt("Pay_id"); int paytype = RequestTool.RequestInt("paytype"); //Lebi_MoneyOrder order = new Lebi_MoneyOrder(); //order.Code = "M" + Shop.Bussiness.Order.CreateOrderCode(); //order.Money = money; //order.User_id = CurrentUser.id; //order.User_UserName = CurrentUser.UserName; //order.IsPaid = 0; //order.Currency_Code = DefaultCurrency.Code; //order.Currency_ExchangeRate = DefaultCurrency.ExchangeRate; //order.Currency_id = DefaultCurrency.id; //order.Currency_Msige = DefaultCurrency.Msige; //B_Lebi_MoneyOrder.Add(order); Lebi_Order order = new Lebi_Order(); order.Code = "M" + Shop.Bussiness.Order.CreateOrderCode(); order.Money_Order = money; order.Money_Pay = money; order.User_id = CurrentUser.id; order.User_UserName = CurrentUser.UserName; order.IsPaid = 0; order.Currency_Code = DefaultCurrency.Code; order.Currency_ExchangeRate = DefaultCurrency.ExchangeRate; order.Currency_id = DefaultCurrency.id; order.Currency_Msige = DefaultCurrency.Msige; order.Type_id_OrderType = 214; Lebi_Pay pay = B_Lebi_Pay.GetModel(pay_id); if (paytype == 0) { Lebi_OnlinePay onlinepay = B_Lebi_OnlinePay.GetModel(onlinepay_id); if (onlinepay == null) { onlinepay = new Lebi_OnlinePay(); } order.OnlinePay_id = onlinepay.id; order.OnlinePay = onlinepay.Name; pay = B_Lebi_Pay.GetModel("Code='OnlinePay'"); } if (pay == null) { pay = new Lebi_Pay(); } order.Pay_id = pay.id; order.Pay = pay.Name; order.Site_id = CurrentSite.id; order.Language_id = CurrentLanguage.id; B_Lebi_Order.Add(order); order.id = B_Lebi_Order.GetMaxId(); Response.Write("{\"msg\":\"OK\",\"id\":\"" + order.id + "\",\"code\":\"" + order.Code + "\",\"url\":\"" + URL("P_Pay", order.id + "," + order.Code) + "\"}"); }