快捷支付页面版

本API为页面版接口需表单提交。

提供了开户、绑卡和支付三合一的接口,并且提供页面让用户录入身份和卡号信息,商户不需要额外调用开户和绑卡接口, 也不需要开发页面采集用户信息,可以快速接入快捷支付功能。这种接入方式支持贷记卡支付。充值场景不支持贷记卡。

充值时:出入款方均为用户;支付时:出款方为用户,入款方为商户。

涉及到的接口包括: 快捷支付页面版接口、 线上交易查询接口 、 线上交易退款接口、 线上退款查询接口。

请求参数

  • 请求地址

https://spin.cloudpnr.com/top-online-ser/integrationPayPage

  • 公共请求参数

请求报文头HEADER - 「接口规则-参数规定-报文头」 ,请求报文体BODY - 「接口规则-参数规定-报文体」 ,响应报文体 - 「接口规则-参数规定-响应报文体」

  • 请求参数(data)
参数中文名称 参数名称 数据格式 是否必须 说明
请求流水号 req_seq_id 变长64位String 必须  
请求日期 req_date 定长8位String 必须 YYYYMMDD
产品号 product_id 变长32位String 必须  
商户号 huifu_id 变长32位String 必须  
用户号 user_huifu_id 变长32位String 可选  
订单金额 trans_amt 变长12位String 必须 订单金额,单位元,需保留小数点后两位,例如:1.00,最低传入0.01
设备信息 device_info String 必须 设备信息
网联扩展信息 nacl_info String 可选 网联扩展信息
异步通知地址 mer_notice_url 变长512位String 必须 virgo://#{http_server_url} 例:virgo://http://www.xxx.com/getResp
页面跳转地址 business_url 变长120位String 可选 前端跳转地址 virgo://#{http_server_url}
订单类型 order_type 固定1位String 可选 P:支付;R:充值, 默认:P
延时标记 is_delay_acct 固定1位String 可选 是否延时交易,1为延迟 0为不延迟
分账串 acct_split_bunch JSON 可选 请求分账串
请求类型 request_type 固定1位String 可选 P:PC页面版;M:H5页面版, 默认:P
订单有效期 time_expire 固定14位String 可选 订单失效时间 YYYYMMDDHHMMSS格式
风控信息 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 其他
  • 异步响应参数(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:失败
user_huifu_id 用户号 String N 32  
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 备注
QUICK_PAY 快捷支付
QUICK_RECHARGE 快捷充值

请求示例

java

String url = " https://spin-test.cloudpnr.com/top-online-ser/integrationPayPage";
String data = "{'req_seq_id':'20210111intepay002','req_date':'20210111','product_id':'MYPAY','huifu_id':'6666000103423237','user_huifu_id':'','trans_amt':'1.02','device_info':{'trx_device_type':'01','trx_device_ip':'127.0.0.1'},'mer_notice_url':'virgo://http://www.baidu.com','is_delay_acct':'0','acct_split_bunch':{'fee_huifu_id':'6666000103423237','fee_acct_id':'C00091082','acct_infos':[{'huifu_id':'6666000103423237','acct_id':'C00091082','div_amt':'1.02'}]},'request_type':'P', 'risk_check_info':{'riskMngInfo':{'subTradeType':'4300'}, 'ipAddr':'172.0.0.1'}}";
String sign = "JxLPBAlbKnElfoeAXNSww0a1GZf6KGgAtu2qJdLOQKX7RqxOF/ltU5OvmJAwo1An4dVHB26wTD/mA+aypijAa4jTS2Y666InO++3AYePNorTOCCHha9TAiAEDDwJc7Hnvq0K5ZM51jSuppxlP/lSuFzjv98B8Q5anGAudzroV6dscm8wtDQ4donqcnl+OmNRCYGgjWR/li0sEMQF9CTR0vP2tzRvtDQiDOJOxt/YUpTS746Scl4no83y45CLh8Gy/mIii2IxqBu35IOLl27zkgGcBqYiwWwRoUqZR9waUVel7PFyVypRZBpwD8t3ocTHxVfUUcQ4mpSpVEECb3ROQQ=="; // 加签
StringBuilder sb = new StringBuilder();
sb.append("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
sb.append("<HTML>");
sb.append(" <HEAD><TITLE>sender</TITLE></HEAD>");
sb.append(" <BODY style=\"display: none\">");
sb.append("<form name=\"submitForm\" action=\"" + url + "\" method=\"post\">");
sb.append("<input type=\"hidden\" name=\"sign\" value=\"" + sign + "\"/>");
sb.append("<input type=\"hidden\" name=\"data\" value=\"" + data + "\"/>");
sb.append("<input type=\"hidden\" name=\"signType\" value=\"RSA2\"/>");
sb.append("<input type=\"hidden\" name=\"format\" value=\"JSON\"/>");
sb.append("<input type=\"hidden\" name=\"charset\" value=\"UTF-8\"/>");
sb.append("<input type=\"hidden\" name=\"version\" value=\"1.0.0\"/>");
sb.append("<input type=\"hidden\" name=\"sysId\" value=\"TEST\"/>");
sb.append("</from>");
sb.append("<script>window.document.submitForm.submit();</script>");
sb.append(" </BODY>");
sb.append("</HTML>");
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
PrintWriter writer = response.getWriter();
writer.write(sb.toString());
writer.close();

响应示例

页面跳转