易宝支付接口

易宝源程序中的相关代码:

支付页面:

string p2_Order; string p3_Amt; string p4_Cur; string p5_Pid; string p6_Pcat; string p7_Pdesc; string p8_Url; string p9_SAF; string pa_MP; string pd_FrpId; string pr_NeedResponse; // 设置 Response编码格式为GB2312 Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); // 商户订单号,选填. //若不为"",提交的订单号必须在自身账户交易中唯一;为""时,易宝支付会自动生成随机的商户订单号. p2_Order = Request.Form["p2_Order"]; // 支付金额,必填. //单位:元,精确到分. p3_Amt = Request.Form["p3_Amt"]; //交易币种,固定值"CNY". p4_Cur = "CNY"; //商品名称 //用于支付时显示在易宝支付网关左侧的订单产品信息. p5_Pid = Request.Form["p5_Pid"]; //商品种类 p6_Pcat = Request.Form["p6_Pcat"]; //商品描述 p7_Pdesc = Request.Form["p7_Pdesc"]; //商户接收支付成功数据的地址,支付成功后易宝支付会向该地址发送两次成功通知. p8_Url = Request.Form["p8_Url"]; //送货地址 //为“1”: 需要用户将送货地址留在易宝支付系统;为“0”: 不需要,默认为 ”0”. p9_SAF = "0"; //商户扩展信息 //商户可以任意填写1K 的字符串,支付成功时将原样返回. pa_MP = Request.Form["pa_MP"]; //银行编码 //默认为"",到易宝支付网关.若不需显示易宝支付的页面,直接跳转到各银行、神州行支付、骏网一卡通等支付页面,该字段可依照附录:银行列表设置参数值. pd_FrpId = Request.Form["pd_FrpId"]; //应答机制 //默认为"1": 需要应答机制; pr_NeedResponse = "1"; string url = Buy.CreateBuyUrl(p2_Order, p3_Amt, p4_Cur, p5_Pid, p6_Pcat, p7_Pdesc, p8_Url, p9_SAF, pa_MP, pd_FrpId, pr_NeedResponse); Response.Redirect(url);

 

接收返回数据页面:

if (!IsPostBack) { // 校验返回数据包 BuyCallbackResult result = Buy.VerifyCallback(FormatQueryString.GetQueryString("p1_MerId"),FormatQueryString.GetQueryString("r0_Cmd"), FormatQueryString.GetQueryString("r1_Code"), FormatQueryString.GetQueryString("r2_TrxId"), FormatQueryString.GetQueryString("r3_Amt"), FormatQueryString.GetQueryString("r4_Cur"), FormatQueryString.GetQueryString("r5_Pid"), FormatQueryString.GetQueryString("r6_Order"), FormatQueryString.GetQueryString("r7_Uid"), FormatQueryString.GetQueryString("r8_MP"), FormatQueryString.GetQueryString("r9_BType"), FormatQueryString.GetQueryString("rp_PayDate"), FormatQueryString.GetQueryString("hmac")); if (string.IsNullOrEmpty(result.ErrMsg)) { //在接收到支付结果通知后,判断是否进行过业务逻辑处理,不要重复进行业务逻辑处理 if (result.R1_Code == "1") { if (result.R9_BType == "1") { // callback方式:浏览器重定向 Response.Write("支付成功!
商品ID:" + result.R5_Pid + "
商户订单号:" + result.R6_Order + "
支付金额:" + result.R3_Amt + "
易宝支付交易流水号:" + result.R2_TrxId + "
"); /*这里,你可以修改自己网站上订单信息后,跳转到自定义返回到相关页面。*/ } else if (result.R9_BType == "2") { // * 如果是服务器返回则需要回应一个特定字符串'SUCCESS',且在'SUCCESS'之前不可以有任何其他字符输出,保证首先输出的是'SUCCESS'字符串 //这里需要修改自己网站订单信息,下面这句不要动 Response.Write("SUCCESS"); } } else { Response.Write("支付失败!"); } } else { Response.Write("交易签名无效!"); } }

FormatQueryString.GetQueryString("r6_Order") 订单号

FormatQueryString.GetQueryString("r3_Amt") 订单价

 

如果对那些封装好的方法不满意,可以到易宝文件包中的“com.yeepay.bank源码”里面去修改相应的参数。

易宝原封装的 商户密匙、密码、请求地址等 都是在config文件里头读取。可以自行修改。

 

打开 com.yeepay.bank 文件夹下的解决方案,com.yeepay.utils.Buy -- Buy.cs

这些都是固定的,改成public--编译--到项目中引用。 然后到支付页面就可以自己添加了。

 

易宝接口C#08版下载:

 http://download.csdn.net/source/3247282

你可能感兴趣的:(.net,string,url,callback,浏览器,服务器,c#)