汇付聚合支付解决方案扫码支付接口代码详解

下面是扫码支付接口代码:

JAVA代码示例:
首先将需要收集的参数都写成json格式的字符串。
String valueObj = “{
“version”: “10”,
“cmd_id”: “123”, //扫码支付的交易指令ID具体可以参见对方的接口文档
“mer_cust_id”: “123123123123”,//入驻商户id
“user_cust_id”: “321321321321321”,//入驻商户下级商户ID
“order_id”: “1234567”,//订单编号
“order_date”: “20170829”,
“trans_amt”: “0.03”,
“bg_ret_url”: “http://192.168.0.74:8001/npayCallBack/asyncHandle.json”,
“mer_priv”: “*1erwer.868@”,
“ret_url”: “”,
“extension”: “u”,
“div_detail”: “[{‘divCustId’:‘123123123123’,‘divAcctId’:‘45841’,‘divAmt’:‘6.92’,‘divFreezeFg’:‘01’},{‘divCustId’:‘321321321321’,‘divAcctId’:‘12345’,‘divAmt’:‘0.03’,‘divFreezeFg’:‘00’}]”,//分账串信息
“device_info”: “测试测qq”,
“goods_desc”: “分账串,有冻结”,
“goods_type”: “试测试试qq”,
“oper_user_id”: “试试qq”,
“order_expire_time”: “9900”,
“pay_type”: “04”,
“request_type”: “01”
}”;

String testUrl = “http://192.168.3.170:8083/npay/merchantRequest”;//地址可以询问对方运营
String checkValue = sign(valueObj);
String cmdId = “209”;
String merCustId = “123123123123”;//入驻商户id
String version = “10”;
httpServletResponse.setContentType(“application/x-www-form-urlencoded; charset=UTF-8”);
PrintWriter out = httpServletResponse.getWriter();
out.println();
out.println("");
out.println("");
out.println(" sender");
out.println(" ");
out.println("

");
out.println("");
out.println("");
out.println("");
out.println("");
out.println("");
out.println(“”);
out.println(" “);
out.println(”");
out.flush();
out.close();

成功响应:
{
“cmd_id”: “123”,
“resp_code”: “123000”,
“resp_desc”: “交易成功”,
“mer_cust_id” : “123123123123”,
“order_date”: “20180327”,
“order_id”: “10000000001”,

}

失败响应:
{
“cmd_id”: “123”,
“resp_code”: “123003”,
“resp_desc”: “交易失败”,
“mer_cust_id” : “123123123123”,
“order_date”: “20180327”,
“order_id”: “10000000001”,

}
加签方法:
private static String sign(String valueObj) {
// 加签用pfx文件
String pfxFileName = “888888-汇付测试商户.pfx”;
// 加签用密码
String pfxFilePwd = “888888”;
// 进行base64转换
String base64RequestParams = Base64.encodeBase64String(valueObj.getBytes(Charset.forName(“utf-8”)));
// 加签
SignResult signResult = CFCASignature.signature("/app/etc/product/" + pfxFileName, pfxFilePwd,base64RequestParams, “utf-8”);
if (“000”.equals(signResult.getCode())) {
return signResult.getSign();
} else {
return “加签失败”;
}
}
好了,今天就记录到这里,相关的报错信息在接口文档中也有,根据提示调试吧。

你可能感兴趣的:(汇付聚合支付解决方案扫码支付接口代码详解)