多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
**注意:** | ** 1、请求时间、订单生成时间、订单过期时间 一定要以系统当前时间为准,不能小于系统当前时间,格式统一为:yyyyMMddHHmmss** | | --- | --- | | **2、调起收银台界面传入的金额以元为单位,调用单支付的金额的以*分*为单位,子订单集合中的outOrderAmount 以分为单位** | #### **1、调起收银台** | 方法 | | --- | --- | | ** CashierActivity.startCashierActivity(context, order); ** | | 参数 | 说明 | | --- | --- | | context | 上下文对象 | | order | 订单信息 | order 参数说明 | 参数 | 参数说明 | 参数类型 | 是否必填 | --- | --- |---|---| | appId | 品牌ID | String| 是 | storeId | 店铺ID| String| 是 | orderName | 订单名称 | String| 是 | limitPay | 禁用支付方式 nowx(微信) ,noali(支付宝),nounion(银联) , nojycoin(通宝),notbj(通宝+),nobalance(余额) (例如:nowx \|noali\|nounion\|nojycoin\|nobalance\|notbj ) | String| 否 | version | 版本号|String | 是 | requestTime |发送请求时间 | String(yyyyMMddHHmmss格式)| 是 | signType | 加密方式| String | 是 | outOrderId | 业务订单号 | String | 是 | outOrderTime | 业务订单生成时间 | String (yyyyMMddHHmmss格式) | 是 | timeExpire | 业务订单支付过期时间 | String (yyyyMMddHHmmss格式) | 是 | outOrderAmount | 业务订单金额 | double(以元为单位) | 是 | totalFee | 支付金额 | double(以元为单位) | 是 | callbackUrl | 回调地址 | String | 是 | customid | 会员ID | String | 是 | orderList | 订单集合【orderList集合含子订单号、子订单金额、店铺id、店铺名称 ,子订单金额outOrderAmout以分为单位(例如: [{"outOrderNo":"sw20190417001013222","outOrderAmount":6000,"storeId":"4450","storeName":"商户名称2"},{"outOrderNo":"sw20190417001013332","outOrderAmount":4000,"storeId":"4450","storeName":"商户名称2"}])】 | String(json字符串) | 是 | body | 商品BODY | String| 是 | attach | 附加数据,在查询接口和支付通知中原样返回,该字段主要用于商户携带订单的自定义数据 | String| 是 | mchCreateIp | 订单生成的机器IP | String| 是 | subject | 支付宝使用 | String| 是 | prepareUrl | 支付参数加密接口地址 | String| 是 | mainIp | 接口主站地址 | String| 是 | key | 加密key | String| 是 **2、立即支付使用** | 方法 | | --- | | PayManagers.startPay(Order order,String type,boolean combination,String deductionFee, CommonParameter commonParameter,String jsonStr, HttpResultListener listener) | | 参数 | 说明 | 是否必填 | --- | --- | --- | | type | 支付类型 | 是 | order | 订单信息 | 是 | combination | 是否是组合支付 | 是 | deductionFee| 组合支付的抵扣金额(和combination 共用,当combination为true时传入抵扣的金额,为false时可以为空) | 是 | t | 订单信息(该参数为泛型 参考下面信息) | 是 | jsonStr | 支付参数加密后json字符串 | 是 | HttpResultListener | 回调 | 是 ~~~[api] <<< service参数说明: jyzz.wx //微信 jyzz.ali //支付宝 jyzz.union //银联 jyzz.balance //余额 jyzz.tbj //通宝+ jyzz.jycoin //通宝 <<< T 为泛型 可传入的参数: WeChatPayBean ---- 微信支付 AliPayBean --------- 支付宝支付 UnionPayBean ---------银联支付 JyPayBean -------- 建业支付(余额,通宝,通宝+) <<< WeChatPayBean说明 WeChatPayBean weChatPayBean = new WeChatPayBean.Builder() .setAppId(品牌ID) //必填 .setRequestTime(请求时间) //必填 .setSignType(加密类型) //必填 .setVersion(版本号) //必填 .setDeduction(是否组合通宝抵扣) //必填 .setOrderList(订单集合) //必填 .setOutOrderId(订单ID) //必填 .setOutOrderTime(订单生成的时间) //必填 .setOutOrderAmount(订单金额) //必填 .setTotalFee(支付金额) //必填 .setTimeExpire(订单过期时间) //必填 .setCallBackUrl(回调) //必填 .setMchCreateIp(订单生成的机器IP) //必填 .setBody(商品描述) //必填 .setAttach(附加数据,在查询接口和支付通知中原样返回,该字段主要用于商户携带订单的自定义数据) //必填 .build(); <<< AliPayBean 说明 AliPayBean aliPayBean = new AliPayBean.Builder() .setAppId(品牌ID) //String .setRequestTime(请求时间) //String .setSignType(加密类型) //String .setVersion(版本号) //String .setDeduction(是否组合通宝抵扣) 单支付:0 多支付:1 //String .setOrderList(订单集合) //String .setOutOrderId(订单号) //String .setOutOrderTime(订单时间) //String .setOutOrderAmount(订单金额) //String .setTotalFee(支付金额) //String .setTimeExpire(过期时间) //String .setCallBackUrl(回调地址) //String .setBody(商品描述) //String .setSubject(商品的标题/交易标题/订单标题/订单关键字等 )//String .build(); <<< UnionPayBean 说明 UnionPayBean unionPayBean = new UnionPayBean.Builder() .setAppId(品牌ID) //String .setRequestTime(请求时间) //String .setSignType(加密类型) //String .setVersion(版本号) //String .setDeduction(是否组合通宝抵扣) 单支付:0 多支付:1 //String .setOrderList(订单集合) //String .setOutOrderId(订单号) //String .setOutOrderTime(订单时间) //String .setOutOrderAmount(订单金额) //String .setTotalFee(支付金额) //String .setTimeExpire(过期时间) //String .setCallBackUrl(回调地址) //String .build(); <<< JyPayBean 说明 JyPayBean jyPayBean = new JyPayBean.Builder() .setAppId(品牌ID) //String .setRequestTime(请求时间) //String .setSignType(加密类型) //String .setVersion(版本号) //String .setDeduction(是否组合通宝抵扣) 单支付:0 多支付:1 //String .setOrderList(订单集合) //String .setOutOrderId(订单号) //String .setOutOrderTime(订单时间) //String .setOutOrderAmount(订单金额) //String .setTotalFee(支付金额) //String .setTimeExpire(过期时间) //String .setCallBackUrl(回调地址) //String .setCustomid(会员编号) .setPayPwd(密码) .build(); <<< HttpResultListener参数说明: //开始请求 public abstract void onRequestStart(FutureTask future); //支付成功 public abstract void onRequestSuccess(String result); //支付失败 public abstract void onRequestFailure(String errorCode,String errorMessage); //支付取消 public void onRequestCancel(String msg){ } //请求结束 public abstract void onRequestComplete(); ~~~ 3、支付列表 ~~~[api] get:PayManagers.payAttachFeatures().getPayList(bean,listener()) *bean:PaymentListBean=默认值#信息 listener:HttpResultListener#回调 <<< PaymentListBean 参数说明: PaymentListBean bean = new PaymentListBean.Builder() .setAppId(品牌ID) //String .setRequestTime(请求时间(格式:yyyyMMddHHmmss)) //String .setVersion(版本号) //String .setCustomid(会员编号) //String .setStoreId(店铺ID) //String .setTotalFee(支付金额) //String 单位:分 .setLimitPay(禁用支付方式(nowx|noali|nounion|nojycoin|nobalance|notbj)) //String .build(); ~~~