手机网页支付¶
本API为后台版接口,用于商户进行移动端的网银支付及充值,用户付款银行卡需要预先在银行网银或柜面开通在线支付功能才可进行支付,form_html字段返回银行提供的html,由商户自行展示,同时可以承接普通消费和分期消费交易。
涉及到的接口包括: 手机网页支付接口、 线上交易查询接口 、 线上交易退款接口、 线上退款查询接口。
请求参数¶
- 请求地址
https://spin.cloudpnr.com/top-online-ser/wapPay
- 公共请求参数
请求报文头HEADER - 「接口规则-参数规定-报文头」 ,请求报文体BODY - 「接口规则-参数规定-报文体」 ,响应报文体 - 「接口规则-参数规定-响应报文体」
- 请求参数(data)
参数中文名称 | 参数名称 | 数据格式 | 是否必须 | 说明 |
---|---|---|---|---|
请求流水号 | req_seq_id | 变长64位String | 必须 | |
请求日期 | req_date | 定长8位String | 必须 | YYYYMMDD |
商户号 | huifu_id | 变长32位String | 必须 | |
银行卡号 | card_no | 变长19位String | 必须 | |
异步通知地址 | mer_notice_url | 变长512位String | 必须 | virgo://#{http_server_url} 例:virgo://http://www.xxx.com/getResp |
页面跳转地址 | business_url | 变长512位String | 必须 | 支付成功后,前端跳转地址 例:http://www.xxx.com/getResp 银行必填 |
失败页面跳转地址 | business_fail_url | 变长512位String | 可选 | 支付失败时,页面跳转至商户该URL(不带交易信息,仅跳转)银行选填 |
订单金额 | trans_amt | 变长12位String | 必须 | 订单金额,单位元,需保留小数点后两位,例如:1.00,最低传入0.01 |
订单有效期 | time_expire | 固定14位String | 可选 | 订单失效时间 YYYYMMDDHHMMSS格式 |
分期期数 | instalments_num | 固定2位String | 可选 | 03;06;12;24,不传不分期 |
分账串 | acct_split_bunch | JSON | 可选 | 请求分账串 |
网联扩展信息 | extend_pay | String | 必须 | 网联扩展信息 |
设备信息 | device_info | String | 必须 | 设备信息 |
延时标记 | is_delay_acct | 固定1位String | 可选 | 是否延时交易,1为延迟 0为不延迟 |
风控信息 | risk_check_info | 变长4000位String | 必须 | jsonstring,风控信息 |
商户私有域 | mer_priv | 变长1024位String | 可选 |
设备信息¶
参数 | 中文名 | 类型 | 必填 | 最大长度 | 说明 |
---|---|---|---|---|---|
trx_device_type | 设备类型 | String | Y | 2 | 01:手机,02:平板,03:手表,04:PC |
trx_device_ip | 交易设备IP | String | Y | 45 | 用于标识交易设备IP地址,目前暂传IPv4格式 |
trx_device_mac | 交易设备MAC | String | N | 12 | 去掉特殊的连接符号,如冒号、连接符 |
trx_device_imei | 交易设备IMEI | String | N | 15 | |
trx_device_imsi | 交易设备IMSI | String | N | 15 | |
trx_device_icc_id | 交易设备ICCID | String | N | 20 | |
trx_device_wifi_mac | 交易设备WIFIMAC | String | N | 12 | |
trx_device_gps | 交易设备GPS | String | N | 23 |
网联扩展信息¶
参数 | 中文名 | 类型 | 必填 | 最大长度 | 说明 |
---|---|---|---|---|---|
pyer_trx_trm_tp | 付款方交易终端类型 | String | N | 2 | 01:电脑,02:手机,03:平板设备,04:可穿戴设备,05数字电视,06条码支付受理终端,99其他 |
pyer_trx_trm_no | 付款方交易终端编码 | String | N | 32 | |
pyee_acct_id | 收款方账户编号 | String | N | 34 | |
pyee_nm | 收款方账户名称 | String | N | 60 | 不能包含特殊字符 |
pyee_acct_tp | 收款方账户类型 | String | N | 2 | 03:个人支付账户;04:单位支付账户 |
pyee_trx_trm_tp | 收款方交易终端类型 | String | N | 2 | 01:电脑,02:手机,03:平板设备,04:可穿戴设备,05数字电视,06条码支付受理终端,99其他 |
pyee_trx_trm_no | 收款方交易终端编码 | String | N | 32 | |
mer_type | 商户类型 | String | N | 2 | 01:法人,02:其他组织,03:个体工商户,04:自然人 |
mer_id_type | 商户证件类型 | String | N | 2 | 商户证件类型 |
mer_id_no | 商户证件编码 | String | N | 32 | |
mer_cat_code | 商户行业类别 | String | N | 4 | 商户行业类别 |
goods_short_name | 商品简称 | String | N | 40 | 不能包含特殊字符 |
biz_tp | 业务种类 | String | N | 6 | 业务种类 |
商户证件类型¶
meridType | 备注 |
---|---|
01 | 身份证 |
02 | 军官证 |
03 | 护照 |
04 | 户口簿 |
05 | 士兵证 |
06 | 港澳通行证 |
07 | 台湾通行证 |
08 | 临时身份证 |
09 | 外国人居留证 |
10 | 警官证 |
11 | 营业执照 |
12 | 组织机构代码证 |
13 | 税务登记证 |
14 | 统一社会信用代码证 |
99 | 其他 |
响应参数¶
- 同步响应参数(data)
参数 | 中文名 | 类型 | 必填 | 最大长度 | 说明 |
---|---|---|---|---|---|
sub_resp_code | 返回码 | String | Y | 8 | 业务返回码 |
sub_resp_desc | 返回描述 | String | Y | 512 | 业务返回描述 |
req_seq_id | 请求流水号 | String | Y | 64 | |
req_date | 请求日期 | String | Y | 8 | |
hf_seq_id | 汇付流水号 | String | N | 128 | |
product_id | 产品号 | String | Y | 32 | |
huifu_id | 商户号 | String | Y | 32 | |
mer_priv | 商户私有域 | String | N | 1024 | |
form_encoding | 页面字符集 | String | N | UTF-8、GBK等等 | |
form_html | 银行提交页面html | String | N | 2048 | |
bank_order_no | 银行订单流水号 | String | N | 64 | |
bank_code | 通道返回码 | String | N | 65 | |
bank_message | 通道返回描述 | String | N | 256 |
- 异步响应参数(resp_data)
参数 | 中文名 | 类型 | 必填 | 最大长度 | 说明 |
---|---|---|---|---|---|
sub_resp_code | 返回码 | String | Y | 8 | 业务返回码 |
sub_resp_desc | 返回描述 | String | Y | 512 | 业务返回描述 |
req_seq_id | 请求流水号 | String | Y | 64 | |
req_date | 请求日期 | String | Y | 8 | |
hf_seq_id | 汇付流水号 | String | N | 128 | |
product_id | 产品号 | String | Y | 32 | |
huifu_id | 商户号 | String | Y | 32 | |
mer_priv | 商户私有域 | String | N | 1024 | |
trans_amt | 订单金额 | String | N | 12 | |
trans_stat | 交易状态 | String | N | 1 | P:处理中,S:成功,F:失败 |
bank_id | 银行代号 | String | N | 8 | |
debit_flag | 借贷标识 | String | N | 1 | D:借记;C:贷记 |
acct_split_bunch | 分账串 | JSON | N | 返回分账串 | |
fee_amt | 手续费 | String | N | 12 | |
is_delay_acct | 是否延时分账 | String | N | 1 | 0:实时;1:延时 |
is_div | 是否分账交易 | String | N | 1 | 0:非分账交易;1:是分账交易 |
fee_flag | 手续费扣款标志 | String | N | 1 | 1:外扣;2:内扣 |
bank_code | 通道返回码 | String | N | 8 | |
bank_message | 通道返回描述 | String | N | 128 | |
trans_type | 交易类型 | String | Y | 交易类型 |
交易类型¶
transType | 备注 |
---|---|
WAP_PAY | 手机网页支付 |
WAP_PAY_INSTALLMENT | 手机网页支付(分期) |
请求示例¶
{
"sign": "fjQseLBzYoKa03Ke10CtWSCSSRBrvP9HYAfR+8QaArOhHGRgprILcdG8gUiP5Gt0lsAaXnTMePWvw/xpqP5A2EqUyWuj0PEdnKRmaDf/Ri88DH3C1Q5cyuAFg7K8GOc+Yrr4jtlAI4UOSyoGgnjd6LYSLuKxaiudQT8IAxzgt/tsOK757s6wBll/59VPOAnB+W3HoWzHY72f2H8bw88ZFDSDkfIocsRUByII50bPR31Zx9GvabBZxMIzf7tuHW2GY1Ou8Sf8I3DlzqwvNedsMHVfzLxaH66TgpzxSG0XhHBNjlnB6ro57MlJCP+huDbNu9UBfewgvihj1mwW0IO0mQ==",
"sign_type": "RSA2",
"sys_id": "TEST",
"data": "{\"req_seq_id\":\"20201221wap0005\",\"req_date\":\"20201221\",\"huifu_id\":\"6666000103124174\",\"card_no\":\"6226********0577\",\"trans_amt\":\"200.00\",\"instalments_num\":\"03\",\"mer_notice_url\":\"virgo://https://www.spin.com\",\"business_url\":\"virgo://aaab\",\"device_info\":\"{\\\"trx_device_ip\\\":\\\"172.0.0.1\\\",\\\"trx_device_type\\\":\\\"01\\\"}\"}"
}
响应示例¶
{
"data": "{\"bank_order_no\":\"20210201155211o2glc0\",\"form_encoding\":\"UTF-8\",\"form_html\":\"<html><head><meta http-equiv=\\\"Content-Type\\\" content=\\\"text/html; charset=UTF-8\\\"/></head><body><form id = \\\"pay_form\\\" action=\\\"https://gateway.95516.com/gateway/api/frontTransReq.do\\\" method=\\\"post\\\"><input type=\\\"hidden\\\" name=\\\"bizType\\\" id=\\\"bizType\\\" value=\\\"000201\\\"/><input type=\\\"hidden\\\" name=\\\"orderId\\\" id=\\\"orderId\\\" value=\\\"20210201155211o2glc0\\\"/><input type=\\\"hidden\\\" name=\\\"backUrl\\\" id=\\\"backUrl\\\" value=\\\"https://pnrpay-sit.cloudpnr.com/pnrpay/outer/bank/income/asyn/W1\\\"/><input type=\\\"hidden\\\" name=\\\"signature\\\" id=\\\"signature\\\" value=\\\"ob4EUHrqKz3EloEwzRpUnyYDoNwGwhMEJWAq2cnldKppQ4Ecn2zsB2ioh6FCbmfIYx5VMHAVemxKmHQOgV8KxFmjA2ow5f/adLcMZYjO9m9o42fJgzM1H7MRQkzVNL3YjEpIRicwH3Zjvc3BIFbDZb4/vyvH6ur5FFgk97Jm2v5D9uUwbBEvu00JjeNKxIq1rgW92dgLl0I0kDxboe9yAldtn671CIM3xIuVxWKj/HHdODRMhVmVpi7MGNIkXSeYH0CNvw61HXeGmZ2EJvfJZr7OM88TjGau9dJSCmtRjA11quAYb8gse07XcsGKkaYXvHPd8SmOneO9O2/telwoLA==\\\"/><input type=\\\"hidden\\\" name=\\\"merName\\\" id=\\\"merName\\\" value=\\\"(特约)Adamall-汇分期\\\"/><input type=\\\"hidden\\\" name=\\\"txnType\\\" id=\\\"txnType\\\" value=\\\"01\\\"/><input type=\\\"hidden\\\" name=\\\"channelType\\\" id=\\\"channelType\\\" value=\\\"08\\\"/><input type=\\\"hidden\\\" name=\\\"ctrlRule\\\" id=\\\"ctrlRule\\\" value=\\\"00010000000000000000000000000000\\\"/><input type=\\\"hidden\\\" name=\\\"accessType\\\" id=\\\"accessType\\\" value=\\\"0\\\"/><input type=\\\"hidden\\\" name=\\\"txnTime\\\" id=\\\"txnTime\\\" value=\\\"20210201155211\\\"/><input type=\\\"hidden\\\" name=\\\"riskRateInfo\\\" id=\\\"riskRateInfo\\\" value=\\\"{imei=null&macAddr=nu:ll&deviceType=1&sourceIP=172.0.0.1lbs=null}\\\"/><input type=\\\"hidden\\\" name=\\\"txnSubType\\\" id=\\\"txnSubType\\\" value=\\\"03\\\"/><input type=\\\"hidden\\\" name=\\\"accNo\\\" id=\\\"accNo\\\" value=\\\"6226880292910577\\\"/><input type=\\\"hidden\\\" name=\\\"instalTransInfo\\\" id=\\\"instalTransInfo\\\" value=\\\"{numberOfInstallments=03&instalRate=003500&mchntFeeSubsidy=003500}\\\"/><input type=\\\"hidden\\\" name=\\\"frontUrl\\\" id=\\\"frontUrl\\\" value=\\\"https://pnrpay-sit.cloudpnr.com/pnrpay/outer/bank/income/return/W1\\\"/><input type=\\\"hidden\\\" name=\\\"certId\\\" id=\\\"certId\\\" value=\\\"81663363089\\\"/><input type=\\\"hidden\\\" name=\\\"encoding\\\" id=\\\"encoding\\\" value=\\\"UTF-8\\\"/><input type=\\\"hidden\\\" name=\\\"version\\\" id=\\\"version\\\" value=\\\"5.1.0\\\"/><input type=\\\"hidden\\\" name=\\\"merAbbr\\\" id=\\\"merAbbr\\\" value=\\\"Adamall\\\"/><input type=\\\"hidden\\\" name=\\\"reserved\\\" id=\\\"reserved\\\" value=\\\"{cardNumberLock=1}\\\"/><input type=\\\"hidden\\\" name=\\\"merId\\\" id=\\\"merId\\\" value=\\\"823290048164293\\\"/><input type=\\\"hidden\\\" name=\\\"merCatCode\\\" id=\\\"merCatCode\\\" value=\\\"5331\\\"/><input type=\\\"hidden\\\" name=\\\"currencyCode\\\" id=\\\"currencyCode\\\" value=\\\"156\\\"/><input type=\\\"hidden\\\" name=\\\"txnAmt\\\" id=\\\"txnAmt\\\" value=\\\"20000\\\"/><input type=\\\"hidden\\\" name=\\\"signMethod\\\" id=\\\"signMethod\\\" value=\\\"01\\\"/></form><script type=\\\"text/javascript\\\">document.all.pay_form.submit();</script></body></html>\",\"hf_seq_id\":\"0047default210201155211P220c0a855d100000\",\"huifu_id\":\"6666000103124174\",\"product_id\":\"HUIFENQI\",\"req_date\":\"20201221\",\"req_seq_id\":\"20201221wap0005\",\"sub_resp_code\":\"00000100\",\"sub_resp_desc\":\"交易正在处理中\",\"version\":\"1.0.0\"}",
"resp_code": "10000",
"resp_desc": "成功调用",
"sign": "f2rfZ2eY+7DPK4cHkxtPasxG5sMgmwGMCU28cv88U6vSzwpTDrUQgpESDfCT+drt+HQDOPHrA8g/wGYV5HwHAnRsiANF7jBGk/xQSfx6hD7f2my/493azFKARru3+5bX0ZPqc0LbhWSd412TMejX05s+7zdDWt2ys4lY7oxWIbXSFdEBJjah2y9drwvNU+rZGPktMgeyRokVMFVtp33C5HePWsKFoi0zGLptHpjyKKIkNO1Y6KoKXyTxjOxU1I3SR/3CC0L/j+CTrXHLvapudC2qt77LoCV070QUcZEkXAsQQT8Uh5KOWRSWU0mtQG/yliqYHAkAQ7odYDS+7amxHA=="
}