测试账户可以去官方文档里找
官方文档
https://aipboss.allinpay.com/know/devhelp/main.php?pid=38#mid=313
流程
订单提交接口(商户网站->H5收银台)
支付请求是商户向H5收银台发起的支付请求,请求数据通过该接口传递给平台,平台根据不同的手机浏览器自动选择不同支付方式,引导用户完成支付。
注意:加签的byte[]编码为UTF-8
生产接口地址:https://syb.allinpay.com/apiweb/h5unionpay/unionorder
测试接口地址:https://test.allinpaygd.com/apiweb/h5unionpay/unionorder
public Map<String,String> pay(long trxamt,String reqsn,String paytype,String body,String remark,String acct,String validtime,String notify_url,String limit_pay,
String idno,String truename,String asinfo,String sub_appid,String goods_tag,String benefitdetail,String chnlstoreid,String subbranch,String extendparams,String cusip,String fqnum) throws Exception{
HttpConnectionUtil http = new HttpConnectionUtil(SybConstants.SYB_APIURL+"/pay");
http.init();
TreeMap<String,String> params = new TreeMap<String,String>();
params.put("cusid", SybConstants.SYB_CUSID);
params.put("appid", SybConstants.SYB_APPID);
params.put("version", "11");
params.put("trxamt", String.valueOf(trxamt));
params.put("reqsn", reqsn);
params.put("paytype", paytype);
params.put("randomstr", SybUtil.getValidatecode(8));
params.put("body", body);
params.put("remark", remark);
params.put("validtime", validtime);
params.put("acct", acct);
params.put("notify_url", notify_url);
params.put("limit_pay", limit_pay);
params.put("sub_appid", sub_appid);
params.put("goods_tag", goods_tag);
params.put("benefitdetail", benefitdetail);
params.put("chnlstoreid", chnlstoreid);
params.put("subbranch", subbranch);
params.put("extendparams", extendparams);
params.put("cusip", cusip);
params.put("fqnum", fqnum);
params.put("idno", idno);
params.put("truename", truename);
params.put("asinfo", asinfo);
params.put("signtype", SybConstants.SIGN_TYPE);
String appkey = SybConstants.SIGN_TYPE.equals("RSA") ? SybConstants.SYB_RSACUSPRIKEY
: SybConstants.SYB_MD5_APPKEY;
params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE));
byte[] bys = http.postParams(params, true);
String result = new String(bys,"UTF-8");
Map<String,String> map = handleResult(result);
return map;
}
@SuppressWarnings({
"rawtypes", "unchecked" })
public static Map<String,String> handleResult(String result) throws Exception{
System.out.println("ret:"+result);
Map map = SybUtil.json2Obj(result, Map.class);
if(map == null){
throw new Exception("返回数据错误");
}
if("SUCCESS".equals(map.get("retcode"))){