H5接入农行缴费支付
1. 支付下单
通过H5支付下单API创建订单
通过 H5支付下单API 创建订单,返回支付URL简单处理后直接拉起支付
| 参数名称 | 是否必填 | 描述 | |
|---|---|---|---|
| outTradeNo | 是 | String(32) | 业务订单号,业务方保证唯一 |
| subject | 是 | String(127) | 商品名或订单简要描,用做账单名称 |
| amount | 是 | Number | 支付金额,单位元,最小为0.01 |
| clientIp | 是 | String(32) | 客户端IP |
| payment | 是 | String(32) | ABC,要求返回农行缴费收银台的支付URL |
| ...etc |
通过H5收银台下单API创建订单
通过 H5收银台下单API 创建订单;返回收银台URL,用户点击收银台URL,进入收银台页面进行支付
| 参数名称 | 是否必填 | 描述 | |
|---|---|---|---|
| outTradeNo | 是 | String(32) | 业务订单号,业务方保证唯一 |
| subject | 是 | String(127) | 商品名或订单简要描,用做账单名称 |
| amount | 是 | Number | 支付金额,单位元,最小为0.01 |
| clientIp | 是 | String(32) | 客户端IP |
| ...etc |
可以在
limitPayments 传入 ABC限制使用农行缴费收银台进行支付,当然如果不传入,则在项目配置了其他支付方式的情况下用户可以选择其他支付方式,比如微信支付、支付宝付款等,
2. 跳转至农行缴费收银台
下单成 功获取到URL后,控制用户端H5页面跳转至该URL:;
以下场景将会跳转失败
- 农行缴费收银台未开通;请联系客户或项目运营经理开通;
- 非农行掌银APP环境;请确认用户在农行APP环境进行支付
- 订单已经被主动关单;需要重新下单
- 订单已经过期;需要重新下单
如果是H5收银台
由场景通控制用户前往农行收银台进行支付;跳转异常的;用户会进入场景通提供的收银台订单异常页面,用户点击返回按钮,会返回商户系统
3. 农行Server向场景通发拉取账单
透传到农行的信息
// 农行缴费支付情况下,一些特殊参数会失效,比如:limitCredit、goodsTag、goodsDetails
{
"info": {
"input1": "${payNo}",
"amtRule": "0",
"totalBillCount": 1,
"bills": [
{
"billNo": "${payNo}-01",
"billName": "${subject}",
"descDetails": [
{
"sCpt": "支付时间:",
"sVal": "请在 ${timeExpire} 前完成支付"
}
],
// ...
}
// ...
]
// ...
}
// ...
}
4 支付成功后返回
用户支付成功后,会跳转到下单传入的 returnUrl,可以是订单详情页,或者是统一的server端回调地址;
如果下单未提供returnUrl
用户将会返回场景通标准支付结果页面;页面上用户点击返回按钮,会直接关闭当前H5页面