跳到主要内容

H5接入农行缴费支付

1. 支付下单

通过H5支付下单API创建订单

通过 H5支付下单API 创建订单,返回支付URL简单处理后直接拉起支付

参数名称是否必填描述
outTradeNoString(32)业务订单号,业务方保证唯一
subjectString(127)商品名或订单简要描,用做账单名称
amountNumber支付金额,单位元,最小为0.01
clientIpString(32)客户端IP
paymentString(32)ABC要求返回农行缴费收银台的支付URL
...etc

通过H5收银台下单API创建订单

通过 H5收银台下单API 创建订单;返回收银台URL,用户点击收银台URL,进入收银台页面进行支付

参数名称是否必填描述
outTradeNoString(32)业务订单号,业务方保证唯一
subjectString(127)商品名或订单简要描,用做账单名称
amountNumber支付金额,单位元,最小为0.01
clientIpString(32)客户端IP
...etc
可以在 limitPayments 传入 ABC

限制使用农行缴费收银台进行支付,当然如果不传入,则在项目配置了其他支付方式的情况下用户可以选择其他支付方式,比如微信支付、支付宝付款等,

2. 跳转至农行缴费收银台

下单成功获取到URL后,控制用户端H5页面跳转至该URL:;

以下场景将会跳转失败
  1. 农行缴费收银台未开通;请联系客户或项目运营经理开通;
  2. 非农行掌银APP环境;请确认用户在农行APP环境进行支付
  3. 订单已经被主动关单;需要重新下单
  4. 订单已经过期;需要重新下单
如果是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页面