商户通过本接口将订单信息上送至合利宝-跨境系统,返回商户支付信息。
| 测试请求地址 | https://cbtrxtest.helipay.com/cbtrx/rest/pay/passiveScanPay |
| 请求地址 | https://cbptrx.helipay.com/cbtrx/rest/pay/passiveScanPay |
| 提交方式 | 采用POST方法提交,requestbody传值 Content-Type=[application/json;charset=UTF-8] |
| 签名算法 | UTF-8字符编码 SHA256签名 AES加密 |
| 名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
|---|---|---|---|---|---|
| 产品编码 | productCode | String(20) | 是 | PASSIVESCAN | |
| 商户订单号 | orderNo | String(64) | 是 | p_20170302185347 | |
| 商户编号 | merchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的商户编号 |
| 订单金额 | orderAmount | Number(10.2) | 是 | 0.01 | 单位:元 |
| 用户姓名 | memberName | String(10) | 是 | 张三 | |
| 用户身份证号 | memberID | String(18) | 是 | 110101200001012999 | |
| 用户手机号 | memberMobile | String(20) | 是 | 13701234567 | |
| 商品名称 | goodsName | String(400) | 是 | Iphone7 | |
| 下单ip | orderIp | String(15) | 是 | 1.1.1.1 | |
| 币种 | currency | String(20) | 是 | CNY | |
| 授权码 | authcode | String(10) | 是 | 一组字符串(付款码) | |
| 服务器回调地址 | serverCallbackUrl | String(300) | 否 | http://www.456.com | |
| 客户端类型 | appType | String(30) | 是 | 如下说明 | ALIPAY:支付宝 WXPAY:微信 UNIONPAY:银联 |
| 成功跳转URL | successToUrl | String(30) | 否 | 如下说明 | 支付完成后,展示支付结果的页面地址 |
| 商户详情 | goodsDetail | String(255) | 否 | ||
| 平台商户编号 | platMerchantNo | String(30) | 否 | ||
| 公众号appId | appId | String(30) | 否 | ||
| 报备号 | reportId | String(20) | 否 | 123123 | 产品开通后,此值会发送到商户侧,商户可选择性上送 |
| 名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
|---|---|---|---|---|---|
| 排序参数 | index | Integer | 是 | 1 | 用于交易加密参数排序,不能重复 |
| 分账账户编号 | shareMerchantNo | String(10) | 是 | Me10000002 | |
| 分账金额 | shareAmount | Number(10.2) | 是 | 0.01 | 单位:元 所有明细分账金额相加必须等于交易金额 主账户分账金额必须大于交易手续费 |
| 名称 | 参数 | 类型 | 必填 | 示例值 | 说明 |
|---|---|---|---|---|---|
| 产品编码 | productCode | String(20) | 是 | ALIPAYSCAN | |
| 商户订单号 | orderNo | String(64) | 是 | p_20170302185347 | |
| 商户编号 | merchantNo | String(10) | 是 | Me10000002 | 合利宝-跨境系统分配的商户编号 |
| 平台流水号 | serialNumber | String(32) | 否 | 201702241400010002 | 合利宝-跨境系统生成的唯一交易流水号 |
| 响应码 | retCode | String(10) | 是 | 0000 | 0000 代表请求成功 |
| 响应信息 | retMsg | String(200) | 否 | 成功 | 响应信息 错误信息 |
| 响应时间 | current | String(20) | 是 | 2018-04-01 12:00:00 | 格式yyyy-MM-dd HH:mm:ss |
| 订单状态 | orderStatus | String(30) | 否 | INIT DOING SUCCESS FAIL |
@Test
public void testPassiveScanOrder() throws Exception {
PassiveScanPayRequestForm passiveScanPayRequestForm = new PassiveScanPayRequestForm();
passiveScanPayRequestForm.setMemberName("轩辕天赐");
passiveScanPayRequestForm.setMemberID("371521199309066919");
passiveScanPayRequestForm.setMemberMobile("18890907690");
passiveScanPayRequestForm.setMerchantNo("Me10000018");
passiveScanPayRequestForm.setOrderNo("PASSIVESCAN121");
passiveScanPayRequestForm.setProductCode("PASSIVESCAN");
passiveScanPayRequestForm.setOrderAmount(BigDecimal.valueOf(0.11));
passiveScanPayRequestForm.setAppType("WXPAY");
passiveScanPayRequestForm.setAuthcode("134505456672414141");
passiveScanPayRequestForm.setOrderIp("192.168.10.1");
passiveScanPayRequestForm.setGoodsName("测试");
payTest("/rest/pay/passiveScanPay", passiveScanPayRequestForm, PassiveScanOrderResponseForm.class);
}
| 错误码 | 错误码描述 | 解决方案 |
|---|---|---|