NAV Navbar
Logo
java

介绍

账管家 为新金融行业提供“水电煤”基础服务。

业务和技术接口规范概述

接口规范概述

  1. 当参数为可选项时,form表单和赋值长度为零字符串中应包含该参数,且赋值长度为零。
  2. 接口的所有参数值不应该包含特殊字符,如:"&“、”-“和”‘“等。
  3. 参数编码为UTF-8字符集,对于中文、URL和Json字符串,提交参数时应做URLEncode处理,接口接收返回参数时应做URLDecode处理。
  4. 金额单位为元,精确到分,如:1200.00,359.14。
  5. 日期为定长8的字符串,格式为YYYYMMDD,如20140802。

订单类接口规范

通过商户号、订单号和订单日期来标识订单的唯一性。

重复订单规范

由于网络的不稳定性等原因,短期内相同订单的交易应答返回给商户订单系统时,有可能会出现以下两种情况:
1. 先完成的订单后送达商户
2. 对于同一笔订单收到两次交易结果

为此,本平台处理原则如下:
1) 只要商户收到订单交易成功的应答,再次收到订单交易失败的应答,通常情况下,商户的订单系统也不会对此订单做任何处理。即保持该订单成功状态;T+1取现接口,会以T+1日银行端最终返回结果为准返回给商户订单系统,需要商户订单系统根据交易结果更新订单状态。
2) 商户的订单系统对于某笔订单已经收到成功应答,有可能后续再次收到该笔订单的成功应答,此时商户只需要回应本平台收到成功即可。

接口调用规范

生产地址 测试地址
https://finance.chinapnr.com/asharp/merchantRequest http://mertest.chinapnr.com/asharp/merchantRequest
  1. 请求参数规范
    数据提交使用POST格式

  2. 接口调用方式
    本平台接口有两种调用方式:
    1) 页面调用方式
    商户以构造form表单的方式,通过用户的浏览器重定向到本平台接口,本平台完成交易后,将交易结果回送给商户订单系统,如企业用户开户采用这种方式。
    2) 后台调用方式
    即后台HttpPost请求方式,商户后台构造HttpPost请求,调用本平台接口。本平台完成交易后,将交易结果回送给商户订单系统,如个人用户开户采用这种方式。

  3. 调用接口过程
    说明:为保证接口的安全性,各接口所列有的请求参数和返回参数如无个别说明,以下数据体都需要参与签名:
    1) 按照接口的参数列表
    2) 按参数的值(非参数名)
    3) 按从上到下的顺序进行字符串相加所得
    4) 如参数为可选项并且为空,则该参数值不参与签名

  4. 举例说明
    将请求参数按顺序拼接成字符串
    假设有如下一组数据:
    version=10
    cmd_id=101
    mer_cust_id=6000123456
    user_name=张三
    bg_ret_url=http://mertest.chinapnr.com/asharp
    按version+cmd_id+mer_cust_id+bg_ret_url的顺序拼接后的字符串结果为:
    101016000123456http://mertest.chinapnr.com/asharp

第一步:将调用签名函数生成check_value 使用第一步拼接的字符串101016000123456http://mertest.chinapnr.com/asharp进行MD5加密后,与加密服务器通信,生成check_value。
假设获得的签名的值为: A170E66B00D344F8CEA68C3A84F0ED2207805147793F806CBD3D3E166B57F511ABEB7D5D7A725ECEFDC640FDC2F7102CD8D470CB0BE18A3B4ADE870689D7FCBD4CA55DD5C2E1D6BFC3F30514B0813D8E680708B44A1C1637780CA0D998EF22C10B7E4B8954F304F226BB50F091A60C939F7C4DB513261FC47667757550C7911E

第二步:将请求参数和check_value以POST方式发送 获得签名后,将参数中包含中文和URL的字段user_name和bg_ret_url使用UTF-8字符集URLEncode后,将所有数据,以POST方式发送给本平台,即完成了一次接口请求。

接口应答接收规范

  1. 验证规范 商户收到接口应答后,要进行验证签名的处理,以验证数据的合法性。
    验证过程如下:
    1) 将指定的返回参数按顺序拼接成字符串
    2) 调用验证签名函数验证check_value

  2. 接口应答方式
    本平台交易应答通过同步和异步两种方式应答给商户。
    1) 同步应答:
    对应不同的两种调用方式,同步应答有两种形式:
    1.1) 同步页面应答方式
    需要商户提供页面应答地址,本平台的交易应答数据以表单形式POST方式提交至商户页面应答地址;
    商户如未提供页面返回地址,本平台会将交易结果以HTML页面格式应答至用户浏览器。如企业用户开户采用这种方式。
    1.2) 同步后台应答方式
    不需要商户提供应答地址,本平台会将交易应答参数以Json格式通过HttpResponse方式应答商户请求。如个人用户开户采用这种方式。
    2) 异步应答:
    必须商户提供后台应答地址,本平台的交易应答数据以表单形式POST方式提交至商户后台应答地址。
    2.1) URL应使用UTF-8字符集URLEncode编码后传入
    2.2) URL中请不要包含特殊字符
    2.3) 必须是外网地址

  3. 对异步返回方式的应答规则
    为了表示商户订单系统已经收到交易应答,商户必须在对异步返回应答时输出一段特殊的字符串,组成规则为:固定字符串RECV_ORD_ID_加上交易应答中某一指定字段,一般为该交易的订单号order_id。
    有些接口没有商户订单号,请查看具体的接口说明,说明中会指定,如:个人用户开户接口的指定字段为order_id。
    例如:商户收到一笔订单号为990000034的异步返回的交易应答,则应在响应时输出RECV_ORD_ID_990000034的字符串。本平台将搜索商户交易接收页面的前1024字节,只有搜索到该字符串,才能确认商户已经收到该笔订单的交易返回应答,否则,本平台认为商户未收到该笔订单的交易应答。

  4. 举例说明(以余额查询接口返回的数据为例):
    第一步:将指定的返回参数按顺序拼接成字符串
    假设返回数据如下:
    {"cmd_id":"302","resp_code":"302000","resp_desc":""交易成功","mer_cust_id":"6000123456,””user_cust_id”:”6000123455”,”balance”:”5.00”,”cash_balance”:”5.00”,”acct_balance”:”10.00”,”freeze_balance”:”5.00”,“bg_ret_url”:“http%3A%2F%2Fmertest.chinapnr.com%2Fasharp”,"check_value":"B170E66B00D344F8CEA68C3A84F0ED2207805147793F806CBD3D3E166B57F511ABEB7D5D7A725ECEFDC640FDC2F7102CD8D470CB0BE18A3B4ADE870689D7FCBD4CA55DD5C2E1D6BFC3F30514B0813D8E680708B44A1C1637780CA0D998EF22C10B7E4B8954F304F226BB50F091A60C939F7C4DB513261FC47667757550C7911E"}
    首先将参数中的中文和URL解码:
    bg_ret_url= http://mertest.chinapnr.com/asharpcmd_id+resp_code+mer_cust_id+user_cust_id+balance+cash_balance+acct_balance+freeze_balance+bg_ret_url的顺序拼接后的结果为: 302302000600012345660001234555.005.0010.005.00http://mertest.chinapnr.com/asharp
    第二步:调用验证签名函数验证check_value
    将第一步拼接的字符串: 302302000600012345660001234555.005.0010.005.00http://mertest.chinapnr.com/asharp进行MD5加密后,和接口返回的check_value传入验证签名函数进行验证。

  5. 重复订单处理 商户收到的应答无论时间先后,还是通过同步或者异步的方式,都应被等同处理。商户有可能收到同一笔订单的多次交易应答,后续的处理步骤列示如下:

商户网站订单状态 从本平台接收到应答的订单状态 商户网站的交易应答接收程序应采取的处理步骤
失败 失败 无需修改商户订单系统数据库;提示持卡人交易失败
成功 成功 无需修改商户订单系统数据库;提示持卡人交易成功
失败 成功 需要修改商户订单系统数据库;提示持卡人交易成功
已受理 成功 需要修改商户订单系统数据库;提示持卡人交易成功
已受理 失败 需要修改商户订单系统数据库;提示持卡人交易失败
成功 失败 T+1取现特殊场景,需要修改商户订单系统数据库;提示持卡人订单交易失败

接口类型

根据接口应答时交易状态的不同,将接口归类为四个类型:

  1. 同步接口
     该类型的接口同步应答的交易状态为终态,无异步应答。

  2. 同步+异步接口
     该类型的接口同步应答的交易状态为终态,异步应答的交易状态与同步应答一致。

  3. 异步接口
     该类型的接口同步应答的交易状态,正常时为中间态,异常时为终态;异步应答的交易状态皆为终态。

  4. 混合接口
     该类型的接口同步应答的交易状态会根据具体交易类型的不同而不同,正常时会有中间态或终态,异常时为终态;异步应答的交易状态皆为终态。

接口列表

接口编号 接口名称 接口操作方法
101 个人用户开户 POST
102 企业用户开户 POST
116 前台快捷绑卡 POST
112 后台快捷绑卡 POST
117 前台代扣绑卡 POST
109 后台代扣绑卡 POST
104 取现绑卡 POST
105 解绑快捷/代扣卡 POST
108 删除取现卡 POST
110 短信发送 POST
114 二级商户号录入 POST
118 人脸支付绑定 POST
201 充值/支付 POST
206 快捷支付 POST
207 直接代扣 POST
212 支付宝服务窗支付 POST
211 微信公众号支付 POST
208 扫码支付 POST
209 交易退款 POST
202 取现 POST
203 转账 POST
214 代发 POST
213 人脸支付 POST
302 余额查询 POST
306 交易状态查询 POST
303 充值支付对账 POST
304 取现对账 POST
305 转账对账 POST
204 产品录入 POST

用户管理类

个人用户开户

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "101"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "101",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "101",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于在本平台系统下为个人用户开设专属账户

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

同步+异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为101
商户唯一标识号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
用户姓名 user_name 变长50位String 必须 用户的真实姓名,中文应使用UTF-8字符集URLEncode编码后传入
身份证号 cert_id 定长18位String 必须 用户的身份证号
手机号 user_mobile 定长11位String 必须 用户的手机号
邮箱 user_email 变长40位String 可选 用户的电子邮箱
短信验证码 sms_code 定长6位String 可选 与user_mobile对应的短信验证码,测试环境调试时可以使用666666通过验证。
短信验证码日期 sms_order_date 定长8位String 可选 与sms_code对应的验证码发送订单日期
短信验证码订单号 sms_order_id 变长20位String 可选 与sms_code对应的验证码发送订单号
商户后台应答地址 bg_ret_url 变长128位String 必须 后台异步通知接收地址
商户私有域 mer_priv 变长128位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数 若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”: “111111111111”} 二级商户号由汇付生成,详见二级商户号录入接口
签名 check_value 定长256位String 必须 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+cert_id+user_mobile+user_email+sms_code+sms_order_date+sms_order_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为101
应答返回码 resp_code 定长6位String 必须 101000–调用成功,其他见返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户唯一标识号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
用户唯一标识号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
子账户号 acct_id 变长16位String 必须 由汇付生成,用户的默认子账户号
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+ 10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 后台异步通知接收地址
商户私有域 mer_priv 变长128位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数 若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”: “111111111111”} 二级商户号由汇付生成,详见二级商户号录入接口
签名 check_value 定长256位String 必须 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+user_cust_id+acct_id+platform_seq_id+fee_amt+fee_acct_id+bg_ret_url+mer_priv+extension

企业用户开户

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "102"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "102",
  "resp_code": "102000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "102",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于在本平台系统下为企业用户开设专属账户

调用方式

页面调用

应答方式

同步页面应答(中间态/异常)、异步应答(终态)

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为102
商户唯一标识号 mer_cust_id 变长16位String 必须 由汇付生成,商户的唯一标识号
企业开户申请号 apply_id 变长20的String 必须 由商户提供,申请企业开户的唯一标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 定长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
操作类型 operate_type 定长8位String 必须 00090000:新增00090001:修改
企业证照类型 corp_license_type 定长8位String 必须 01030100:普通营业执照企业01030101:三证合一企业
企业类型 corp_type 定长8位String 必须 01030000:普通企业
企业名称 corp_name 变长50位String 必须 企业的公司全称,中文应使用UTF-8字符集URLEncode编码后传入
营业执照注册号 business_code 变长30位String 可选 企业的营业执照注册号
组织机构代码 institution_code 定长9位String 可选 企业的组织机构代码证
税务登记证号 tax_code 变长30位String 可选 企业的税务登记号
统一社会信用代码 social_credit_code 定长18位String 可选 企业的统一社会信用代码
证照起始日期 license_start_date 定长8位String 必须 企业的营业证照起始日期,精确到年月日
证照结束日期 license_end_date 定长8位String 必须 企业的营业证照结束日期,精确到年月日,99991231表示永久
企业经营地址 corp_business_address 变长250位字符串 必须 企业的经营地址,中文应使用UTF-8字符集URLEncode编码后传入
企业注册地址 corp_reg_address 变长250位字符串 必须 企业的注册地址,中文应使用UTF-8字符集URLEncode编码后传入
企业固定电话 corp_fixed_telephone 变长15位字符串 必须 企业的固定电话
经营范围 business_scope 变长600位字符串 必须 企业的经营范围,中文应使用UTF-8字符集URLEncode编码后传入
控股股东(实际控制人) controlling_shareholder 变长600位字符串 必须 企业的控股股东,中文应使用UTF-8字符集URLEncode编码后传入
法定代表人姓名 legal_name 变长50位String 必须 企业的法人姓名,中文应使用UTF-8字符集URLEncode编码后传入
法人证件类型 legal_cert_type 定长8位String 必须 01020100:身份证01020101:护照01020102:军官证01020104:回乡证01020106:台胞证01020107:其他
法人证件号码 legal_cert_id 变长20位String 必须 法人的证件号码,与证件类型对应
法人证件起始日期 legal_cert_start_date 定长8位String 必须 法定代表人的证件起始日期,精确到年月日
法人证件结束日期 legal_cert_end_date 定长8位String 必须 法定代表人的证件结束日期,精确到年月日,99991231表示永久
法定代表人手机号码 legal_mobile 定长11位String 必须 法定代表人的手机号码
企业联系人姓名 contact_name 变长50位String 必须 企业联系人的姓名,中文应使用UTF-8字符集URLEncode编码后传入
联系人手机号 contact_mobile 定长11为String 必须 联系人的手机号码
联系人邮箱 contact_email 变长40位String 必须 联系人的邮箱地址
开户银行账户名 bank_acct_name 变长40位String 必须 企业开户银行账户名,需与企业名称保持一致,中文应使用UTF-8字符集URLEncode编码后传入
开户银行 bank_id 变长8位String 必须 具体见附件一:充值/取现支持银行列表及代号
开户银行账号 bank_acct_no 变长32位String 必须 企业开户银行账号
开户银行支行名称 bank_branch 变长100位String 必须 企业开户银行的支行名称,中文应使用UTF-8字符集URLEncode编码后传入
开户银行省份 bank_prov 变长4位String 必须 银行卡开户省份,具体见附件二
开户银行地区 bank_area 定长4位String 必须 银行卡开户地区,具体见附件二
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
页面返回URL ret_url 变长128位String 可选 交易完成后,本平台系统把交易结果通过页面方式,发送到该地址上。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: version+cmd_id+mer_cust_id+apply_id+order_date+order_id+operate_type+corp_license_type+corp_type+business_code+institution_code+tax_code+social_credit_code+license_start_date+license_end_date+corp_fixed_telephone+legal_cert_type+legal_cert_id+legal_mobile+legal_cert_start_date+legal_cert_end_date+contact_mobile+contact_email+bank_id+bank_acct_no+bank_prov+bank_area+bg_ret_url+ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为102
应答返回码 resp_code 定长6位String 必须 102000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
企业开户申请号 apply_id 变长20位String 必须 由商户提供,申请企业开户的唯一标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 定长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
商户唯一标识号 mer_cust_id 变长16位String 必须 由汇付生成,商户的唯一标识号
用户唯一标识号 user_cust_id 变长16位String 可选 由汇付生成,用户的唯一标识号
子账户号 acct_id 变长9位String 可选 由汇付生成,用户的默认子账户号
企业名称 corp_name 变长50位String 必须 企业的全称,中文应使用UTF-8字符集URLEncode编码后传入
审核状态 audit_status 定长8位String 必须 02000101:待审核02000102:审核中02000103:待资料修改02000104:审核通过02000105:审核不通过
审核状态描述 audit_desc 变长120位String 可选 针对审核状态的详细说明
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
页面返回URL ret_url 变长128位String 可选 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
返参扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+apply_id+order_date+order_id+mer_cust_id+user_cust_id+acct_id+audit_status+bg_ret_url+ret_url+mer_priv+extension

前台快捷绑卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "116"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "116",
  "resp_code": "116000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "116",
  "resp_code": "116003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

前台快捷绑卡

调用方式

页面调用

应答方式

同步页面应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为116
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
客户用户名 user_name 变长50位String 必须 用户的真实姓名
身份证号 cert_id 定长18位String 必须 用户身份证号,目前仅支持身份证
银行预留手机号 card_mobile 变长11位String 必须 本次快捷绑卡待绑定的银行卡,在银行开户时的预留手机号,变长11位数字
开户银行代号 bank_id 变长8位String 必须 具体见附件二:代扣充值支持银行列表
银行卡号 card_no 变长32位String 必须 待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D–借记,储蓄卡C–贷记,信用卡
银行卡开户省份 card_prov 定长4位String 可选 银行卡开户省份
银行卡开户地区 card_area 定长4位String 可选 银行卡开户地区
商户后台应答地址 bg_ret_url 变长128位的String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含“附件三:BgRetUrl中禁止的字符串列表”的字符串3)必须是外网地址
页面返回URL ret_url 变长128位String 可选 交易完成后,本平台系统把交易结果通过页面方式,发送到该地址上。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位的String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
页面类型 page_type 定长2位String 可选 桌面端样式页面:00移动端样式页面:10默认桌面端样式
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+cert_id+card_mobile+bank_id+card_no+dc_flag+card_prov+card_area+bg_ret_url+ret_url+mer_priv+extension+page_type

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为“116”
应答返回码 resp_code 定长6位String 必须 116000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
已开户标识 reg_flag 定长8位String 必须 00000000:新开户00000001:已开户
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识,成功时必返
用户账户号 acct_id 变长8位String 可选 用户账户号新开户且成功时必返
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+reg_flag+user_cust_id+acct_id+order_date+order_id+platform_seq_id+fee_amt+fee_acct_id+mer_priv

后台快捷绑卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "112"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "112",
  "resp_code": "112000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "112",
  "resp_code": "112003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

为未开户的用户开户的同时绑定快捷卡,或为已开户的用户绑定快捷卡

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为11
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为112
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,商户的唯一性标识条件可选:如用户已经开户,可选填该参数,如填写,接口会以该参数来辨识用户,不再匹配客户用户名和身份证号的正确性,但依然会校验参数格式;如不填写,接口会以客户用户名及身份证号匹配客户;如果用户未开户,请不填该参数
客户用户名 user_name 变长50位String 可选 用户的真实姓名条件可选,条件参考用户客户号描述
身份证号 cert_id 定长18位String 可选 用户身份证号,目前仅支持身份证条件可选,条件参考用户客户号描述
银行预留手机号 card_mobile 变长11位String 必须 本次快捷绑卡待绑定的银行卡,在银行开户时的预留手机号,变长11位数字
开户银行代号 bank_id 变长8位String 必须 具体见附件一:代扣充值支持银行列表
银行卡号 card_no 变长32位String 必须 待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D–借记,储蓄卡C–贷记,信用卡注:本接口暂仅支持借记卡
银行卡开户省份 card_prov 定长4位String 可选 银行卡开户省份
银行卡开户地区 card_area 定长4位String 可选 银行卡开户地区
阶段标志 step_flag 定长2位String 必须 01:验卡阶段02:验证短信阶段
绑卡请求流水 bind_trans_id 变长20位String 必须 标志一个绑卡请求,商户下判断唯一,只能是数字和字母
短信验证码 sms_code 定长6位String 可选 银行预留手机号对应的短信验证码,验证短信阶段必须
商户后台应答地址 bg_ret_url 变长128位的String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位的String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+user_cust_id+cert_id+bank_id+card_no+card_mobile+dc_flag+card_prov+card_area+step_flag+bind_trans_id+sms_code+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 每一种消息类型代表一种交易,此处为“112”
应答返回码 resp_code 定长6位String 112000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 由汇付生成,商户的唯一性标识
已开户标识 reg_flag 定长8位String 必须 00000000:新开户00000001:已开户
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识,成功时必返
用户账户号 acct_id 变长8位String 可选 用户账户号新开户且成功时必返
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+reg_flag+user_cust_id+acct_id+order_date+order_id+platform_seq_id+fee_amt+fee_acct_id+mer_priv

前台代扣绑卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "117"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "117",
  "resp_code": "117000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "117",
  "resp_code": "117003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

前台代扣绑卡

调用方式

页面调用

应答方式

同步页面应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为117
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
产品编号 product_id 变长20位String 可选 对应产品录入中产品ID
产品订单号 product_order_id 变长20位String 可选 由商户的系统生成,本次签约的产品订单号,产品订单号保证唯一
开户名 user_name 变长50位String 必须 用户的真实姓名
身份证号 cert_id 定长18位String 必须 用户身份证号
开户银行代号 bank_id 变长8位String 必须 具体见附件二:代扣充值支持银行列表
银行卡号 card_no 变长32位String 必须 待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D–借记,储蓄卡C–贷记,信用卡注:本接口暂仅支持借记卡
银行预留手机号 card_mobile 变长11位String 必须 银行开户时的预留手机号
银行卡开户省份 card_prov 定长4位String 可选 银行卡开户省份
银行卡开户地区 card_area 定长4位String 可选 银行卡开户地区
页面返回URL ret_url 变长128位String 可选 交易完成后,本平台系统把交易结果通过页面方式,发送到该地址上。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户后台应答地址 bg_ret_url 变长128位的String 必须 后台异步通知商户开户结果
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
扩展域 extension 变长512位的String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
页面类型 page_type 定长2位String 可选 桌面端样式页面:00移动端样式页面:10默认桌面端样式
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+product_id+product_order_id+cert_id+bank_id+card_no+dc_flag+card_mobile+card_prov+card_area+ret_url+bg_ret_url+mer_priv+extension+page_type

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为117
应答返回码 resp_code 定长6位String 必须 117000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
用户账户号 acct_id 变长8位String 可选 用户账户号
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
开户标识 reg_flag 定长8位String 必须 00000000:新开户00000001:已开户
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
页面返回URL ret_url 变长128位String 可选 交易完成后,本平台系统把交易结果通过页面方式,发送到该地址上
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
扩展域 extension 变长512位的String 可选 用于扩展请求参数
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+acct_id+order_date+order_id+platform_seq_id+reg_flag+fee_amt+fee_acct_id+ret_url_bg_ret_url+mer_priv+extension

后台代扣绑卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "11"));
    nvps.add(new BasicNameValuePair("cmd_id", "109"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "109",
  "resp_code": "109000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "109",
  "resp_code": "109003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于代扣卡绑定和代扣订单签约,可支持多张代扣卡绑定,若绑定签约成功,即同时为用户开设专属账户

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为11
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为109
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
产品编号 product_id 变长20位String 必须 对应产品录入中产品ID
产品订单号 product_order_id 变长20位String 必须 由商户的系统生成,本次签约的产品订单号,产品订单号保证唯一
开户名 user_name 变长50位String 必须 用户的真实姓名
身份证号 cert_id 定长18位String 必须 用户身份证号
开户银行代号 bank_id 变长8位String 必须 具体见附件一:代扣充值支持银行列表
银行卡号 card_no 变长32位String 必须 待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D–借记,储蓄卡C–贷记,信用卡注:本接口暂仅支持借记卡
银行预留手机号 card_mobile 变长11位String 必须 银行开户时的预留手机号
银行卡开户省份 card_prov 定长4位String 可选 银行卡开户省份,具体见附件二
银行卡开户地区 card_area 定长4位String 可选 银行卡开户地区,具体见附件二
阶段标志 step_flag 定长2位String 必须 01:验卡阶段;02:验证短信阶段
短信验证码 sms_code 定长6位String 可选 与本次绑卡时的银行预留手机号对应的短信验证码
绑卡请求流水 bind_trans_id 定长20位String 必须 标志一个绑卡请求,商户下判断唯一,只能是数字和字母
商户后台应答地址 bg_ret_url 变长128位的String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
扩展域 extension 变长512位的String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+product_id+product_order_id+cert_id+bank_id+card_no+dc_flag+card_mobile+card_prov+card_area+step_flag+sms_code+bind_trans_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为109
应答返回码 resp_code 定长6位String 必须 109000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
用户账户号 acct_id 变长8位String 可选 用户账户号
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
产品编号 product_id 变长20位String 必须 对应订单录入中产品ID
产品订单号 product_order_id 变长20位String 必须 本次签约的产品订单号
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
开户标识 reg_flag 定长8位String 必须 00000000:新开户00000001:已开户
开户银行代号 bank_id 变长8位String 必须 对应产品录入中产品ID
银行卡号 card_no 变长32位String 必须 待绑定的银行卡卡号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位的String 必须 后台异步通知商户开户结果
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
扩展域 extension 变长512位的String 可选 用于扩展请求参数
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+acct_id+order_date+order_id+product_id+product_order_id+platform_seq_id+reg_flag+bank_id+card_no+fee_amt+fee_acct_id+bg_ret_url+mer_priv+extension

取现绑卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "104"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "104",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "104",
  "resp_code": "104003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于绑定取现银行卡,以便用于用户取现

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

混合

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为104
商户唯一标识号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户唯一标识号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
银行代号 bank_id 变长8位String 必须 具体见附件一:取现支持银行列表
银行卡号 card_no 变长32位String 必须 本次取现绑卡待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D–借记,储蓄卡C–贷记,信用卡注:本接口暂仅支持借记卡
银行卡开户省份 card_prov 定长4位String 可选 本次取现绑卡待绑定的银行卡开户省份,具体见附件二
银行卡开户地区 card_area 定长4位String 可选 本次取现绑卡待绑定的银行卡开户地区,具体见附件二
是否默认取现卡 is_default 定长8位String 必须 00000000:非默认取现卡00000001:默认取现卡用户首次绑卡时,无论传任何值,绑定成功后都会设置为默认取现卡;用户已有默认取现卡时,新绑定默认取现卡会替换掉原有默认取现卡
后台返回地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果,注意:1)URL应使用UTF-8字符集URLEncode编码后传入;2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长128位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+bank_id+card_no+dc_flag+card_prov+card_area+is_default+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为104
应答返回码 resp_code 定长6位String 必须 104000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户唯一标识号 mer_cust_id 定长16位 必须 由汇付生成,商户的唯一性标识
用户唯一标识号 user_cust_id 定长16位 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 可选 组成规则:8位本平台日期+10位系统流水号
银行代号 bank_id 变长8位String 必须 具体见附件一:取现支持银行列表
银行卡号 card_no 变长32位String 必须 本次取现绑卡待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D–借记,储蓄卡C–贷记,信用卡注:本接口暂仅支持借记卡
银行卡开户省份 card_prov 定长4位String 可选 本次取现绑卡待绑定的银行卡开户省份,具体见附件二绑定对公账户时必选
银行卡开户地区 card_area 定长4位String 可选 本次取现绑卡待绑定的银行卡开户地区,具体见附件二绑定对公账户时必选
是否默认取现卡 is_default 定长8位String 必须 00000000:非默认取现卡00000001:默认取现卡用户首次绑卡时,无论传任何值,绑定成功后都会设置为默认取现卡;用户已有默认取现卡时,新绑定默认取现卡会替换掉原有默认取现卡
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
后台返回地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长128位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+bank_id+card_no+dc_flag+card_prov+card_area+is_default+fee_amt+fee_acct_id+bg_ret_url+mer_priv+extension

解绑快捷/代扣卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "105"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "105",
  "resp_code": "105000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "105",
  "resp_code": "105003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于解绑快捷或代扣卡

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

混合

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本 version 固定2位String 必须 目前固定为10
接口标识 cmd_id 固定3位String 必须 每一种消息类型代表一种交易,此处为105
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
银行代码 bank_id 定长8位String 必须 具体见附件一:快捷充值支持银行列表
银行卡号 card_no 变长32位String 必须 银行卡号
银行卡预留手机号 card_mobile 变长11位String 必须 银行卡预留手机号
短信验证码日期 sms_order_date 定长8位String 可选 与sms_code对应的验证码发送订单日期
短信验证码订单号 sms_order_id 变长20位String 可选 与sms_code对应的验证码发送订单号
短信验证码 sms_code 定长6位String 可选 短信验证码,测试环境调试时可以使用666666通过验证。
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+bank_id+card_no+card_mobile+sms_code+sms_order_date+sms_order_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
接口标识 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为105
应答返回码 resp_code 定长6位String 必须 105000–调用成功,其他见:返回码表
应答描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
银行代码 bank_id 定长8位String 必须 具体见附件一:快捷充值支持银行列表
银行卡号 card_no 变长32位String 必须 银行卡号
银行卡预留手机号 card_mobile 变长11位String 必须 银行卡预留手机号
短信验证码日期 sms_order_date 定长8位String 可选 与sms_code对应的验证码发送订单日期
短信验证码订单号 sms_order_id 变长20位String 可选 与sms_code对应的验证码发送订单号
短信验证码 sms_code 定长6位String 必须 短信验证码
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
返参扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+bank_id+card_no+card_mobile+sms_code+sms_order_date+sms_order_id+bg_ret_url+mer_priv+extension

删除取现卡

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "108"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "108",
  "resp_code": "108000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "108",
  "resp_code": "108003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于个人用户、企业用户和商户删除非默认取现卡

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 固定为10,如版本升级,能向前兼容
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为108
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
开户银行卡号 card_no 变长32位String 必须 本次删除取现卡待删除的银行卡号,不可为用户默认取现卡
商户后台应答地址 bg_ret_url 变长128位的String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长128位的String 必须 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
入参扩展域 extension 变长512位的String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+card_no+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为108
应答返回码 resp_code 定长6位String 必须 108000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 可选 组成规则:8位本平台日期+10位系统流水号
开户银行卡号 card_no 变长32位String 必须 本次删除取现卡待删除的银行卡号,不可为用户默认取现卡
商户后台应答地址 bg_ret_url 变长128位的String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长128位的String 必须 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
入参扩展域 extension 变长512位的String 可选 用于扩展请求参数
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+card_no+bg_ret_url+ mer_priv+ extension

短信验证码发送

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "110"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "110",
  "resp_code": "110000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "110",
  "resp_code": "110003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于个人用户开户、解绑快捷卡、快捷充值和后台快捷绑卡接口发送短信验证码

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 固定为10,如版本升级,能向前兼容
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为110
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识注:快捷充值短信发送必传
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
业务类型 business_type 定长3位String 必须 101:用户开户105:解绑快捷卡113:后台快捷绑卡201:快捷充值
用户手机号 user_mobile 定长11位String 必须 待接收短信验证码的手机号
签名 check_value 定长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+business_type+user_mobile

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位Sring 必须 每一种消息类型代表一种交易,此处为110
返回码 resp_code 定长6位String 必须 110000–调用成功,其他见:返回码表
结果描述 resp_desc 变长String 必须 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
业务类型 business_type 定长3位String 必须 101:用户开户105:解绑快捷卡201:快捷充值
用户手机号 user_mobile 定长11位String 必须 待接收短信验证码的手机号
签名 check_value 定长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+business_type+user_mobile

二级商户录入

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "114"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "114",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "114",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

二级商户录入

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

同步+异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 目前固定为10
消息类型 cmd_id 定长3位String 每一种消息类型代表一种交易,此处为“114”
订单日期 order_date 定长8位String 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 由商户生成,必须保证唯一,20位内数字或字母的组合
商户客户号 mer_cust_id 定长16位String 由汇付生成,商户的唯一性标识
二级商户名 sub_mer_cust_name 变长50位String 二级商户名称,中文应使用UTF-8字符集URLEncode编码后传入
商户后台应答地址 bg_ret_url 变长128位的String 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位的String 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
入参扩展域 extension 变长512位的String 用于扩展请求参数
签名 check_value 变长256位的String 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+cert_id+card_mobile+bank_id+card_no+dc_flag+card_prov+card_area+bg_ret_url+ret_url+mer_priv+extension+page_type

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 每一种消息类型代表一种交易,此处为“114”
应答返回码 resp_code 定长6位String 114000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 由汇付生成,商户的唯一性标识
二级商户号 sub_mer_cust_id 变长20位String 二级商户号,20位内数字或字母的组合,录入成功(返回码:114000)时必返
订单日期 order_date 定长8位String 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 由商户生成,必须保证唯一,20位内数字或字母的组合
平台流水号 platform_seq_id 定长18位String 组成规则:8位本平台日期+10位系统流水号,录入成功(返回码:114000)时必返
商户私有域 mer_priv 变长120位的String 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
签名 check_value 变长256位的String 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+sub_mer_cust_id+order_date+order_id+platform_seq_id+mer_priv

人脸支付绑定

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "118"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "118",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "118",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

人脸绑定接口,用于后续人脸支付

调用方式

后台调用

应答方式

同步页面应答、异步应答

接口类型

同步接口

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为118
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
人脸认证流水 realme_seq_id 变长20位String 必须 人脸公安验证流水
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含“附件三:BgRetUrl中禁止的字符串列表”的字符串3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.9.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+realme_seq_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为118
应答返回码 resp_code 定长6位String 必须 118000–调用成功,其他见附件四:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+mer_priv

交易类

充值/支付

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "201"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "201",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "201",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

接口功能说明:用于网银充值/支付,免注册网银支付、快捷支付和代扣支付

调用方式

应答方式

接口类型

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为201
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识交易类型为免注册网银支付时,非必传
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
交易类型 trans_type 定长8位String 必须 02020100:充值02020101:支付02020102:免注册网银支付02020103:非消费金融代扣支付个人用户支持支付和免注册网银支付交易
充值类型 recharge_type 定长8位String 必须 02020000:个人网银02020001:企业网银02020002:快捷02020003:代扣02020006:二段式快捷交易类型为免注册网银支付时,充值类型仅支持个人网银和企业网银
阶段标志 step_flag 定长2位String 可选 01:快捷支付请求02:快捷支付确认充值类型为二段式快捷时必填
业务请求流水 biz_trans_id 变长20位String 可选 标志一个二段式快捷请求,商户下判断唯一,只能是数字和字母充值类型为二段式快捷时必填
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
开户银行代号 bank_id 变长8位String 可选 个人/企业网银充值必传快捷/代扣充值非必传,可为空
借贷标记 dc_flag 定长1位String 可选 个人/企业网银充值必传快捷/代扣充值非必传,可为空D–借记C–贷记
短信验证码 sms_code 定长6位String 可选 与快捷绑卡时的银行预留手机号对应的短信验证码
短信验证码日期 sms_order_date 变长8位String 可选 快捷充值使用,与sms_code对应的验证码订单日期
短信验证码订单号 sms_order_id 变长20位String 可选 快捷充值使用,与sms_code对应的验证码订单号
代扣签约流水 sign_seq_id 变长18位String 可选 代扣签约订单唯一标识,代扣充值必传,其他充值不需传
入账客户号 in_cust_id 定长16位String 可选 业务类型为支付时必传,且入账客户号不能是充值客户本人,多条分账可不传
分账账户串 div_detail 变长String 可选 业务类型为支付时必传,分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入数据格式:[{“in_cust_id”:“6666000000123456”,“div_acct_id”:“000001”,“div_amt”:“1.00”},{“in_cust_id”:“6666000000123457”,“div_acct_id”:“000002”,“div_amt”:“1.00”}]分账串金额之和需等于充值金额支持多条分账指令
分账入账客户号 in_cust_id 定长16位String 可选 div_detail参数下的二级参数分账入账客户号
分账账户号 div_acct_id 变长9位String 可选 div_detail参数下的二级参数分账账户号
分账金额 div_amt 变长14位String 可选 div_detail参数下的二级参数分账金额,保留两位小数
商户前台应答地址 ret_url 变长128位String 可选 网银充值/支付必传交易完成后,本平台系统把交易结果通过页面方式,发送到该地址上注意:1)URL应使用UTF-8字符集URLEncode编码后传入;2)URL中请不要包含特殊字符3)必须是外网地址
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
银行卡号 card_no 变长32位String 可选 代扣支付使用的卡号,不传时默认使用最新绑定的代扣卡
交易场景 trans_scene 定长3位 可选 交易类型为免注册网银支付时,必传001:投资理财002:实物买卖/租赁003:虚拟物品购买/购买服务004:缴费005:还款006:账户充值
交易场景小类 trans_scene_sub 定长6位 可选 交易类型为免注册网银支付时,必传001001:定期001002:活期002001:数码及家用电器002002:家具建材002003:生活用品(含:服饰、美容、箱包、玩具、图书/音像、食品等)002004:珠宝/古玩/贵金属/邮币卡002005:医药003001:游戏点卡003002:电话费003003:储值卡003004:服务(含:旅游、美容、按摩、入场消费的美食团购等)004001:公共事业004002:手机话费004003:教育004004:房屋租赁/物业费005001:到期还款005002:提前还款005003:预期还款005004:活期赎回006001:其他
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+trans_type+recharge_type+step_flag+biz_trans_id+trans_amt+bank_id+dc_flag+sms_code+sms_order_date+sms_order_id+sign_seq_id+in_cust_id+div_detail+ret_url+bg_ret_url+mer_priv+extension+card_no+trans_scene+trans_scene_sub

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为201
应答返回码 resp_code 定长6位String 必须 201000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识交易类型为免注册网银支付时,非必传
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
业务类型 trans_type 定长8位String 必须 02020100:充值02020101:支付02020102:免注册支付个人用户仅支持支付交易
充值类型 recharge_type 定长8位String 必须 02020000:个人网银02020001:企业网银02020002:快捷02020003:代扣02020006:二段式快捷交易类型为免注册支付时,充值类型只支持个人网银和企业网银
阶段标志 step_flag 定长2位String 可选 01:快捷支付请求02:快捷支付确认
业务请求流水 biz_trans_id 变长20位String 可选 标志一个二段式快捷请求,商户下判断唯一,只能是数字和字母
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
开户银行代号 bank_id 变长8位String 可选 个人/企业网银充值必传快捷/代扣充值非必传,可为空
借贷标记 dc_flag 定长1位String 可选 个人/企业网银充值必传快捷/代扣充值非必传,可为空D–借记C–贷记
短信验证码 sms_code 定长6位String 可选 与快捷绑卡时的银行预留手机号对应的短信验证码
短信验证码日期 sms_order_date 定长8位String 可选 快捷充值使用,与sms_code对应的验证码订单日期
短信验证码订单号 sms_order_id 变长20位String 可选 快捷充值使用,与sms_code对应的验证码订单号
代扣签约流水号 sign_seq_id 变长18位String 可选 代扣签约订单唯一标识,代扣充值必传,其他充值不需传
入账客户号 in_cust_id 定长16位String 可选 业务类型为支付时必传,且入账客户号不能是充值客户本人
分账账户串 div_detail 变长String 可选 业务类型为支付时必传,分账账户必须是入账客户的账户数据格式:[{“div_acct_id”:“000001”,“div_amt”:“1.00”},{“div_acct_id”:“000002”,“div_amt”:“2.00”}]分账串金额之和需等于充值金额支持多条分账指令
分账账户号 div_acct_id 变长9位String 可选 div_detai参数下的二级参数分账账户号
分账金额 div_amt 变长14位String 可选 div_detai参数下的二级参数分账金额,保留两位小数
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户前台应答地址 ret_url 变长128位String 可选 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+trans_type+recharge_type+step_flag+biz_trans_id+trans_amt+bank_id+dc_flag+sms_code+sms_order_date+sms_order_id+sign_seq_id+in_cust_id+div_detail+fee_amt+fee_cust_id+fee_acct_id+ret_url+bg_ret_url+mer_priv+extension

快捷支付

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "206"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "206",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "206",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

包括开户、绑卡和快捷支付功能

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为206
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,商户的唯一性标识条件可选:如用户已经开户,可选填该参数,如填写,接口会以该参数来辨识用户,不再匹配客户用户名和身份证号的正确性,但依然会校验参数格式;如不填写,接口会以客户用户名及身份证号匹配客户;如果用户未开户,请不填该参数
客户用户名 user_name 变长50位String 可选 用户的真实姓名条件可选,条件参考用户客户号描述
身份证号 cert_id 定长18位String 可选 用户身份证号,目前仅支持身份证条件可选,条件参考用户客户号描述
银行预留手机号 card_mobile 变长11位String 必须 本次快捷绑卡待绑定的银行卡,在银行开户时的预留手机号,变长11位数字
开户银行代号 bank_id 变长8位String 必须 具体见附件一:代扣充值支持银行列表
银行卡号 card_no 变长32位String 必须 待绑定的银行卡号
借贷标记 dc_flag 定长1位String 必须 D—借记,储蓄卡C—贷记,信用卡
贷记卡CVV2 cvv2 定长3位 可选 当dc_flag为C时,必传cvv2
贷记卡有效期 valid_date 定长4位 可选 当dc_flag为C时,必传cvv2
银行卡开户省份 card_prov 定长4位String 可选 银行卡开户省份
银行卡开户地区 card_area 定长4位String 可选 银行卡开户地区
阶段标志 step_flag 定长2位String 必选 01:验卡阶段02:验证短信阶段
业务请求流水 biz_trans_id 变长20位String 必选 标志一个快捷支付请求,商户下判断唯一,只能是数字和字母
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 必须 入账客户号不能是充值客户本人
分账账户串 div_detail 变长String 必须 分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入数据格式:[{“div_acct_id”:“000001”,“div_amt”:“1.00”},{“div_acct_id”:“000002”,“div_amt”:“2.00”}]分账串金额之和需等于充值金额支持多条分账指令
分账账户号 div_acct_id 变长9位String 可选 div_detail参数下的二级参数分账账户号
分账金额 div_amt 变长14位String 可选 div_detail参数下的二级参数分账金额,保留两位小数
短信验证码 sms_code 定长6位String 可选 银行预留手机号对应的短信验证码,调用接口验卡阶段获取,调用接口验证短信阶段此参数必填
商户后台应答地址 bg_ret_url 变长128位的String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位的String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+user_cust_id+cert_id+card_mobile+bank_id+card_no+dc_flag+cvv2+valid_date+card_prov+card_area+step_flag+biz_trans_id+trans_amt+in_cust_id+div_detail+sms_code+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为“206”
应答返回码 resp_code 定长6位String 必须 206000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识,成功时必返
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
用户账户号 acct_id 变长8位String 可选 用户账户号新开户且成功时必返
订单日期 order_date 定长8位String 必须 格式为“yyyyMMdd”
订单号 order_id 变长20位String 必须 由商户的系统生成,订单号和订单日期保证唯一
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
验卡手续费金额 verify_fee_amt 变长14位String 可选 验卡手续费金额,格式为###.00
验卡手续费子账户号 verify_fee_acct_id 变长9位String 可选 验卡手续费扣款子账户号
支付手续费金额 pay_fee_amt 变长14位String 可选 支付手续费金额,格式为###.00
支付手续费子账户号 pay_fee_acct_id 变长9位String 可选 支付验卡手续费扣款子账户号
商户私有域 mer_priv 变长120位的String 可选 为商户的自定义字段
签名 check_value 变长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+trans_amt+acct_id+order_date+order_id+platform_seq_id+verify_fee_amt+verify_fee_acct_id+pay_fee_amt+pay_fee_acct_id+mer_priv

直接代扣

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "207"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "207",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "207",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

使用四要素进行直接进行代扣功能

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为207
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
付款方姓名 user_name 变长50位String 必须 用户的真实姓名,中文应使用UTF-8字符集URLEncode编码后传入
付款方证件类型 cert_type 定长8位String 必须 01020100:身份证01020101:护照01020102:军官证01020104:回乡证01020106:台胞证01020107:其他目前仅支持身份证
付款方证件号 cert_id 变长20位String 必须 付款方证件号码,与证件类型对应
付款方银行预留手机号 card_mobile 变长11位String 必须 付款方银行预留手机号,变长11位数字
付款方银行卡号 card_no 变长32位String 必须 付款方银行卡号,变长32位数字
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
银行账户类型 card_type 定长8位String 必须 01050001:对公账户01050000:对私账户目前仅支持对私
入款方账户号 in_cust_acct_id 变长9位String 必须 入款方账户号
入款方用户号 in_cust_id 定长16位String 必须 入款方客户号,不能是出款方客户号
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含“附件三:BgRetUrl中禁止的字符串列表”的字符串3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+cert_type+cert_id+card_mobile+card_no+trans_amt+cardType+in_cust_acct_id+in_cust_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为“207”
应答返回码 resp_code 定长6位String 必须 207000–调用成功,其他见返回码附件表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+platform_seq_id+fee_amt+fee_cust_id+fee_acct_id+mer_priv

支付宝服务窗支付

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "212"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "212",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "212",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

支付宝服务窗支付

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为212
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
支付宝用户账号 alipay_logon_id 变长100位String 可选 买家支付宝账号,和alipay_id不能同时空
支付宝用户ID alipay_id 变长100位String 可选 买家的支付宝用户ID,和alipay_logon_id不能同时空
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 必须 入账客户号不能是充值客户本人
分账账户串 div_detail 变长String 必须 分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入数据格式:[{“div_acct_id”:“000001”,“div_amt”:“1.00”},{“div_acct_id”:“000002”,“div_amt”:“2.00”}]分账串金额之和需等于充值金额支持多条分账指令
分账账户号 div_acct_id 变长9位String 必须 div_detail参数下的二级参数分账账户号
分账金额 div_amt 变长14位String 必须 div_detail参数下的二级参数分账金额,保留两位小数
业务请求流水 biz_trans_id 变长16位String 必选 标志一个支付请求,商户下判断唯一,只能是数字和字母
商品描述 goods_desc 变长127位String 必选 商户对于该交易的描述,UTF-8字符集URLEncode编码后传入,只校验长度
页面跳转地址 call_back_url 变长225位String 可选 用于支付结束页面跳转用注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)需送绝对路径
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+alipay_logon_id+alipay_id+trans_amt+in_cust_id+div_detail+biz_trans_id+call_back_url+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为212
应答返回码 resp_code 定长6位String 必须 212000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
业务请求流水 biz_trans_id 变长16位String 必选 标志一个支付请求,商户下判断唯一,只能是数字和字母
支付明细 pay_info 变长500位String 必选 用于唤起支付宝
支付链接 pay_url 变长64位String 必选 直接用此链接请求支付宝支付
用户标识 user_label 变长128位String 必选 用户标志,支付宝是用户名
借贷标识 dc_flag 定长1位String 可选 D–借记,储蓄卡C–贷记,信用卡
现金券 cash_coupon 变长14位String 可选 现金券金额
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+fee_amt+fee_cust_id+fee_acct_id+biz_trans_id+pay_info+pay_url+user_label+dc_flag+cash_coupon+bg_ret_url+mer_priv+extension

微信公众号支付

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "211"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "211",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "211",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

微信公众号支付

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为211
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
商家公众号 open_id 定长128位String 必须 微信用户关注商家公众号的openid
商家APPID app_id 定长32位String 必须 商户app的appid
商品标签 good_tag 变长32位String 可选 商品标记,优惠标志等,包含中文请使用UTF-8字符集URLEncode编码后传入
原生态标记 raw_flag 变长8位String 必须 原生态:00000001非原生态:00000000
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 必须 入账客户号不能是客户本人
分账账户串 div_detail 变长String 必须 分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入数据格式:[{“div_acct_id”:“000001”,“div_amt”:“1.00”},{“div_acct_id”:“000002”,“div_amt”:“2.00”}]分账串金额之和需等于充值金额支持多条分账指令
分账账户号 div_acct_id 变长9位String 必须 div_detail参数下的二级参数分账账户号
分账金额 div_amt 变长14位String 必须 div_detail参数下的二级参数分账金额,保留两位小数
业务请求流水 biz_trans_id 变长16位String 必选 标志一个支付请求,商户下判断唯一,只能是数字和字母
商品描述 goods_desc 变长127位String 必选 商户对于该交易的描述,UTF-8字符集URLEncode编码后传入,只校验长度
页面跳转地址 call_back_url 变长225位String 可选 用于支付结束页面跳转用注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)需送绝对路径
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+open_id+app_id+raw_flag+trans_amt+in_cust_id+div_detail+biz_trans_id+call_back_url+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为211
应答返回码 resp_code 定长6位String 必须 211000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
业务请求流水 biz_trans_id 变长16位String 必选 标志一个支付请求,商户下判断唯一,只能是数字和字母
支付明细 pay_info 变长600位String 可选 json格式字符串,作用于原生态js支付时的参数
动态口令 token_id 变长256位String 必选 用于后续接口调用中使用
借贷标识 dc_flag 定长1位String 可选 D–借记,储蓄卡C–贷记,信用卡
现金券 cash_coupon 变长14位String 可选 现金券金额
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+fee_amt+fee_cust_id+fee_acct_id+biz_trans_id+pay_info+token_id+dc_flag+cash_coupon+bg_ret_url+mer_priv+extension

扫码支付

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "208"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "208",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "208",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

扫码支付生成二维码订单接口

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为208
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
扫码支付渠道 qr_pay_channel 定长8位String 必须 二维码微信:02020400二维码支付宝:02020401二维码银联:02020402
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 必须 业务类型为支付时必传,且入账客户号不能是充值客户本人
分账账户串 div_detail 变长String 必须 业务类型为支付时必传,分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入数据格式:[{“div_acct_id”:“000001”,“div_amt”:“1.00”},{“div_acct_id”:“000002”,“div_amt”:“2.00”}]分账串金额之和需等于充值金额支持多条分账指令
分账账户号 div_acct_id 变长9位String 必须 div_detail参数下的二级参数分账账户号
分账金额 div_amt 变长14位String 必须 div_detail参数下的二级参数分账金额,保留两位小数
业务请求流水 biz_trans_id 变长16位String 必选 标志一个支付请求,商户下判断唯一,只能是数字和字母
商品描述 goods_desc 变长127位String 必选 商户对于该交易的描述,UTF-8字符集URLEncode编码后传入,只校验长度
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.9.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+qr_pay_channel+trans_amt+in_cust_id+div_detail+biz_trans_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为208
应答返回码 resp_code 定长6位String 必须 208000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
二维码url qr_code_url 变长64位String 必须 二维码url,返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
业务请求流水 biz_trans_id 变长16位String 必选 标志一个支付请求,商户下判断唯一,只能是数字和字母
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+qr_code_url+platform_seq_id+fee_amt+fee_cust_id+fee_acct_id+biz_trans_id+bg_ret_url+mer_priv+extension

交易退款

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "209"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "209",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "209",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用户交易完成后,可用于申请退款

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为209
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
交易类型 trans_type 定长8位String 必须 02020005:二维码
原业务请求流水 biz_trans_id 变长20位String 必须 标志一个支付请求,商户下判断唯一,只能是数字和字母
退款金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
出账客户号 out_cust_id 定长16位String 必须 原交易的入账客户号
出账账户号 out_acct_id 变长9位String 必须 原交易的入账客户号下的账户
手续费客户号 fee_cust_id 定长16位String 可选 暂不支持
手续费账户号 fee_acct_id 变长9位String 可选 暂不支持
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含“附件三:BgRetUrl中禁止的字符串列表”的字符串3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.9.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+trans_type+biz_trans_id+trans_amt+out_cust_id+out_acct_id+fee_cust_id+fee_acct_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为209
应答返回码 resp_code 定长6位String 必须 209000–调用成功,其他见附件四:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
原业务请求流水 biz_trans_id 变长20位String 必须 标志一个支付请求,商户下判断唯一,只能是数字和字母
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+biz_trans_id+platform_seq_id+mer_priv

取现

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "202"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "202",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "202",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于本平台下用户取现

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为202
商户客户号 mer_cust_id 变长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 变长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
取现银行卡号 card_no 变长32位String 可选 本次取现的银行卡卡号
手续费/服务费内外扣标记 cash_deduct_type 定长8位String 必须 02030100:内扣02030101:外扣目前只支持内扣
商户收取服务费金额 serv_fee_amt 变长14位String 可选 商户收取用户的服务费金额,格式为###.00
商户收取服务费子账户号 serv_fee_acct_id 变长9位String 可选 服务费非空时为必填,商户用来收取服务费的子账户号
手续费收取对象 fee_obj 定长8位String 可选 用户商户指定取现手续费的收取对象,优先级别高于商户配置的收取对象02050200:向商户收取02050201:向用户收取
手续费收取子账户 fee_acct_id 变长9位String 可选 向商户收取时,必填向用户收取时,可忽略
取现方式 cash_type 定长8位String 必须 02030000:T+0取现02030010:T+1取现可传的取现通道范围小于等于商户配置的取现通道
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 定长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+trans_amt+card_no+cash_deduct_type+serv_fee_amt+serv_fee_acct_id+fee_obj+fee_acct_id+cash_type+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为202
返回码 resp_code 变长String 必须 202000–调用成功,其他见:返回码表
结果描述 resp_desc 变长String 必须 返回码对应的中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 变长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 变长16位String 必须 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
平台流水ID platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
实际到账金额 real_trans_amt 变长14位String 可选 取现成功实际到账金额,各种原因导致取现失败则不传
取现银行卡号 card_no 变长32位String 可选 本次取现的银行卡卡号
手续费/服务费内外扣标记 cash_deduct_type 定长8位String 可选 02030100:内扣02030101:外扣目前只支持内扣
开户银行代号 bank_id 变长8位String 可选 具体见附件一:取现支持银行列表
商户收取服务费金额 serv_fee_amt 变长14位String 可选 商户收取用户的服务费金额,格式为###.00
商户子账户号 serv_fee_acct_id 变长9位String 可选 服务费非空时为必填,商户用来收取服务费的子账户号
手续费金额 fee_amt 变长14位String 必须 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 变长16位String 必须 手续费扣款客户号
手续费扣款子账户号 fee_acct_id 变长9位String 必须 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 定长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+trans_amt+real_trans_amt+card_no+cash_deduct_type+bank_id+serv_fee_amt+serv_fee_acct_id+fee_amt+fee_cust_id+fee_acct_id+bg_ret_url+mer_priv+extension

转账

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "203"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "203",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "203",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于商户平台下商户转用户、用户转商户和商户子账户间的转账

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

同步+异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为203
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
转账类型 transfer_type 定长8位String 必须 02040000:商户转用户02040001:企业用户转商户02040002:企业用户与个人用户间转账02040003:商户子账户间转账
出账客户号 out_cust_id 定长16位String 必须 转账出账方的客户号,出账客户不可为个人用户
出账账户号 out_acct_id 变长9位String 必须 转账出账方的账户号
入账客户号 in_cust_id 定长16位String 必须 转账入账方的客户号
入账账户号 in_acct_id 变长9位String 必须 转账入账方的账户号
转账金额 transfer_amt 变长14位String 必须 转账金额,格式为###.00
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
入参扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.13.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+transfer_type+out_cust_id+out_acct_id+in_cust_id+in_acct_id+transfer_amt+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
接口标识 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为203
应答返回码 resp_code 定长6位String 必须 203000–调用成功,其他见:返回码表
应答描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
转账类型 transfer_type 定长8位String 必须 02040000:商户转用户02040001:企业用户转商户02040002:企业用户与个人用户间转账02040003:商户子账户间转账
出账客户号 out_cust_id 定长16位String 必须 转账出账方的客户号,出账客户不可为个人用户
出账账户号 out_acct_id 变长9位String 必须 转账出账方的账户号
入账客户号 in_cust_id 定长16位String 必须 转账入账方的客户号
入账账户号 in_acct_id 变长9位String 必须 转账入账方的账户号
转账金额 transfer_amt 变长14位String 必须 转账金额,格式为###.00
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
入参扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+transfer_type+out_cust_id+out_acct_id+in_cust_id+in_acct_id+transfer_amt+bg_ret_url+mer_priv+extension

代发

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "214"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "214",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "214",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

单笔代发接口

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为214
商户客户号 mer_cust_id 变长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
代发出账子账户 acct_id 变长9位String 必须 商户的子账户
银行账户类型 card_type 定长8位String 必须 01050001:对公账户01050000:对私账户目前仅支持对私
代发类型 agency_pay_type 定长8位String 必须 02080000:T+0代发目前仅支持T+0
银行代号 bank_id 变长8位String 必须 具体见附件一:支持银行列表
银行卡号 card_no 变长32位String 必须 本次快捷绑卡待绑定的银行卡号,变长32位数字
银行卡开户省份 card_prov 定长4位String 可选 对私非必传,对公必传
银行卡开户地区 card_area 定长4位String 可选 对私非必传,对公必传
持卡方户名 user_name 变长50位String 必须 用户的真实姓名,中文应使用UTF-8字符集URLEncode编码后传入
持卡方证件类型 cert_type 定长8位String 必须 01020100:身份证01020101:护照01020102:军官证01020104:回乡证01020106:台胞证01020107:其他银行账户类型为对私时必传
持卡方证件号 cert_id 变长30位String 必须 用户证件号码银行账户类型为对私时必传
企业证照号 corp_code 变长30位String 可选 银行账户类型为对公时必传
手续费收取子账户 fee_acct_id 变长9位String 可选 如果不传,则按商户配置的子账户收取手续费
代发用途 purpose 变长512位String 必须 代发用途
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+trans_amt+acct_id+card_type+agency_pay_type+bank_id+card_no+card_prov+card_area+cert_type+cert_id+corp_code+fee_acct_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为213
返回码 resp_code 定长6位String 必须 213000–调用成功,其他见:返回码表
返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 可选 组成规则:8位本平台日期+10位系统流水号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费收取子账户 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长128位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+platform_seq_id+trans_amt+fee_amt+fee_acct_id+bg_ret_url+mer_priv+extension

人脸支付

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "213"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "213",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "213",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用户刷脸支付接口

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为213
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
人脸图片 image 变长String 必须 人脸图片Base64加密后字符串
图片类型 image_type 变长String 必须 人脸图片类型
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 可选 为空则默认入账客户号为商户客户号
入账账户号 in_acct_id 长9位String 可选 为空则入账账户号为入账客户号的默认子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含“附件三:BgRetUrl中禁止的字符串列表”的字符串3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
扩展域 extension 变长512位String 可选 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”:“111111111111”}二级商户号由汇付生成,详见4.2.9.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+trans_amt+in_cust_id+in_acct_id+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为213
应答返回码 resp_code 定长6位String 必须 213000–调用成功,其他见附件四:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
银行代号 bank_id 变长8位String 可选 具体见附件一:支持银行列表
支付卡号 card_no_encrypt 变长30位String 可选 支付卡号,格式:6228****1234
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
扩展域 extension 变长512位String 可选 暂时返回人脸分数,例如:45
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id+trans_amt+bank_id+card_no_encrypt+fee_amt+fee_cust_id+fee_acct_id+extension+mer_priv

反扫支付接口

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "213"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "217",
  "resp_code": "217000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "217",
  "resp_code": "217003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

反扫支付

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

参数中文名称 参数名称 数据格式 必须 说明
版本号 version 定长2位String 必须 固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为217
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
扫码支付渠道 qr_pay_channel 定长8位String 必须 二维码微信:02020406 二维码支付宝:02020407 二维码银联:02020408
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 可选 业务类型为支付时必传,且入账客户号不能是充值客户本人
分账账户串 div_detail 变长String 必须 业务类型为支付时必传,分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入 数据格式: [{“div_acct_id”:“000001”,“div_amt”:“1.00”}] 分账串金额之和需等于充值金额 支持最多1条分账指令
分账账户号 div_acct_id 变长9位String 可选 div_detail参数下的二级参数 分账账户号
分账金额 div_amt 变长14位String 可选 div_detail参数下的二级参数 分账金额,保留两位小数
二维码信息 auth_code 变长128位String 必选 扫码设备读出的条形码或者二维码信息, UTF-8字符集URLEncode编码后传入,只校验长度
借贷标识 dc_flag 定长1位String 可选 默认借记卡D,本期只支持及借记卡
商品描述 good_desc 变长127位String 必选 商户对于该交易的描述, UTF-8字符集URLEncode编码后传入,只校验长度
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。 注意: 1) URL应使用UTF-8字符集URLEncode编码后传入 2)URL中请不要包含特殊字符 3) 必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。 注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数 若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”: “111111111111”} 二级商户号由汇付生成,详见4.2.9.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+qr_pay_channel+trans_amt+in_cust_id+div_detail+auth_code+dc_flag+bg_ret_url+mer_priv+extension

返回参数列表:

参数中文名称 参数名称 数据格式 必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为217
应答返回码 resp_code 定长6位String 必须 217000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。 注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id +fee_amt+fee_cust_id+fee_acct_id+bg_ret_url+mer_priv+extension

H5支付接口

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "213"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "217",
  "resp_code": "217000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "217",
  "resp_code": "217003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

H5支付(目前只支持微信)

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

异步

请求参数列表

参数中文名称 参数名称 数据格式 必须 说明
版本号 version 定长2位String 必须 固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为218
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
扫码支付渠道 qr_pay_channel 定长8位String 必须 微信H5支付:02020409 暂时只支持微信H5支付
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
入账客户号 in_cust_id 定长16位String 可选 业务类型为支付时必传,且入账客户号不能是充值客户本人
分账账户串 div_detail 变长String 必须 业务类型为支付时必传,分账账户必须是入账客户的账户,分账串使用UTF-8字符集URLEncode编码后传入 数据格式: [{“div_acct_id”:“000001”,“div_amt”:“1.00”}] 分账串金额之和需等于充值金额 支持最多1条分账指令
分账账户号 div_acct_id 变长9位String 可选 div_detail参数下的二级参数 分账账户号
分账金额 div_amt 变长14位String 可选 div_detail参数下的二级参数 分账金额,保留两位小数
借贷标识 dc_flag 定长1位String 可选 默认借记卡D,本期只支持及借记卡
公众账号ID app_id 变长128位String 可选 微信分配的公众账号ID(企业号corpid即为此appId),微信支付要求必填
设备信息 device_info 定长8位String 必须 苹果APP:1 安卓APP:2 IOS手机网站: 3 ANDROID手机网站:4
应用信息 app_info 变长64位String 必须 苹果APP:IOS应用唯一标识 安卓APP:APP包名 WAP:网站首页URL,须保证公网能正常访问到 使用UTF-8字符集URLEncode编码后传入
应用名 app_name 变长64位String 必须 APP:app的名字 WAP:网站名字 使用UTF-8字符集URLEncode编码后传入
商品描述 good_desc 必须
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。 注意: 1) URL应使用UTF-8字符集URLEncode编码后传入 2)URL中请不要包含特殊字符 3) 必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。 注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数 若需要进行二级商户号验证,则必传,格式:{“sub_mer_cust_id”: “111111111111”} 二级商户号由汇付生成,详见4.2.9.二级商户号录入接口
签名 check_value 变长256位String 必须 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+order_date+order_id+qr_pay_channel+trans_amt+ in_cust_id+div_detail+dc_flag+app_id+device_info+bg_ret_url+mer_priv+extension

返回参数列表

参数中文名称 参数名称 数据格式 必须 说明
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为218
应答返回码 resp_code 定长6位String 必须 218000–调用成功,其他见:返回码表
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 可选 由汇付生成,用户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费子账户号 fee_acct_id 变长9位String 可选 手续费扣款子账户号
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文。
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。 注意:如参数中包含中文,应对参数进行Base64加密后再使用。
扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。
消息类型 cmd_id 变长String 必须 每一种消息类型代表一种交易,此处为218

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+order_date+order_id+platform_seq_id +trans_type+trans_amt+bind_fee_amt+bind_fee_acct_id+trans_fee_amt+trans_fee_acct_id+pay_channel_code+bg_ret_url+mer_priv+extension

查询类

余额查询

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "302"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "302",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "302",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

供商户查询其用户在本平台专属账户的可用余额

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为302
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+ mer_cust_id+user_cust_id

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为302
返回码 resp_code 变长String 必须 302000–调用成功,其他见:返回码表
结果描述 resp_desc 变长String 必须 返回码对应的中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
用户客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
可用余额 balance 变长14位String 可选 账户可以转账的余额
可取现余额 cash_balance 变长14位String 可选 账户可以取现的余额
账户余额 acct_balance 变长14位String 可选 账户户资金余额,该余额能真正反映账户的资金量
冻结余额 freeze_balance 变长14位String 可选 冻结余额
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+user_cust_id+balance+cash_balance+acct_balance+freeze_balanace

交易状态查询

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "306"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "306",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "306",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

供商户查询某笔交易的状态,支持两段式交易状态查询

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为306
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位的String 可选 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位的String 可选 由商户生成,必须保证唯一,20位内的字母或数字组合
交易流水号 biz_trans_id 变长20位String 可选 订单号跟交易流水至少传一个。如果传此参数,则表示查询两段式交易(发短信阶段跟验短信阶段)结果
交易查询类型 trans_type 定长8位String 必须 05000100:充值/支付05000101:取现05000102:转账05000103:扫码支付05000104:退款05000105:微信公众号支付05000106:支付宝统一下单支付
交易查询子类型 sub_trans_type 定长8位String 可选 预留字段,可不传
签名 check_value 定长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+biz_trans_id+trans_type+sub_trans_type

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为306
返回码 resp_code 变长String 可选 306000–调用成功,其他见:返回码表
结果描述 resp_desc 变长String 可选 返回码对应的中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位的String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位的String 可选 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位的String 可选 由商户生成,必须保证唯一,20位内的字母或数字组合
交易流水号 biz_trans_id 变长20位String 可选 请求参数交易流水号
交易查询类型 trans_type 定长8位String 必须 请求参数交易查询类型
交易查询子类型 sub_trans_type 定长8位String 可选 请求参数交易查询子类型
两段式交易明细 result_list 变长512位String 可选 [{trans_stat:”02000002”,platform_seq_id:”201712111111111111”,trans_amt:”1.00”,fee_amt:”0.01”,fee_acct_id:”1111”,trans_resp_code:”201000”,trans_resp_desc:”交易成功”}]
交易状态 trans_stat 定长8位String 必须 交易状态02000001:已受理02000002:成功02000003:失败02000005:处理中02000006:部分成功(充值成功,支付失败)
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
交易金额 trans_amt 定长14位的String 必须 交易金额,格式为###.00
手续费 fee_amt 定长14位的String 可选 手续费金额,格式为###.00
手续费收取账户 fee_acct_id 变长9位String 可选 手续费收取子账户
交易返回码 trans_resp_code 定长6位String 可选 交易接口的返回码,详见返回码表
交易返回描述 trans_resp_desc 变长String 可选 交易返回码对应的中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
签名 check_value 定长256位的String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+biz_trans_id+trans_type+sub_trans_type

充值支付对账

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "303"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "303",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "303",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

充值/支付对账

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为303
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
开始日期 begin_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
结束日期 end_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
当前页号 page_num 变长String 必须 查询数据的所在页号,>0的整数
每页记录数 page_size 变长4位String 必须 每页记录数,>0且<=1000的整数
交易类型 trans_type 定长8位String 可选 02020100:充值02020101:支付
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+begin_date+end_date+page_num+page_size+trans_type

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为303
应答返回码 resp_code 定长6位String 必须 303000–调用成功
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
开始日期 begin_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
结束日期 end_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
当前页号 page_num 变长String 必须 查询数据的所在页号,>0的整数
每页记录数 page_size 变长4位String 必须 每页记录数,>0且<=1000的整数
记录总条数 total_num 变长String 可选 记录总条数
对账结果串 result_list 变长String 可选 [{“order_date”:“20161129”,“order_id”:“201611292010001”,“platform_seq_id”:“2016112910000085”,“out_cust_id”:“6000010000000015”,“in_cust_id”:“6000010000000025”,“trans_type”:“02020101”,“recharge_type”:“02020002”,“bank_id”:“01030000”,“trans_amt”:“12.23”,“real_trans_amt”:“12.00”,“fee_amt”:“0.23”,“fee_cust_id”:“6000010000000001”,“fee_acct_id”:“888”,“trans_stat”:“02000002”}]
商户订单日期 order_date 定长8位String 必须 格式为YYYYMMDD
商户订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
出账客户号 out_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识,业务类型为充值时,出账客户是充值客户
入账客户号 in_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识,业务类型为充值时,入账客户是充值客户
业务类型 trans_type 定长8位String 必须 02020100:充值02020101:支付
充值类型 recharge_type 定长8位String 必须 02020000:个人网银充值02020001:企业网银充值02020002:快捷充值02020003:代扣充值
充值银行代号 bank_id 变长8位String 必须 8位银行代号
支付金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费扣款账户号 fee_acct_id 变长9位String 可选 手续费扣款账户号
交易状态 trans_stat 定长8位String 必须 02000001:已受理02000002:成功02000003:失败02000005:处理中
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+begin_date+end_date+page_num+page_size+total_num

取现对账

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "304"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "304",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "304",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

取现对账

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为304
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
开始日期 begin_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
结束日期 end_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
当前页号 page_num 变长String 必须 查询数据的所在页号,>0的整数
每页记录数 page_size 变长4位String 必须 每页记录数,>0且<=1000的整数
取现类型 cash_type 定长8位String 可选 02030000:T002030010:T1
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+begin_date+end_date+page_num+page_size+cash_type

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为304
应答返回码 resp_code 定长6位String 必须 304000–调用成功
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
开始日期 begin_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
结束日期 end_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
当前页号 page_num 变长String 必须 查询数据的所在页号,>0的整数
每页记录数 page_size 变长4位String 必须 每页记录数,>0且<=1000的整数
记录总条数 total_num 变长String 可选 记录总条数
对账结果串 result_list 变长String 可选 [{“order_date”:“20161129”,“order_id”:“201611292010001”,“platform_seq_id”:“2016112910000085”,“user_cust_id”:“6000010000000015”,“cash_type”:“02020101”,“bank_id”:“01030000”,“card_no”:“62626468151546551”,“trans_amt”:“12.23”,“real_trans_amt”:“12.00”,“in_cust_id”:“6000010000000015”,“fee_amt”:“0.23”,“fee_cust_id”:“6000010000000001”,“fee_acct_id”:“888”,“trans_stat”:“02000002”}]
商户订单日期 order_date 定长8位String 必须 格式为YYYYMMDD
商户订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
取现客户号 user_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
取现类型 cash_type 定长8位String 必须 02030000:T002030010:T1
银行代号 bank_id 变长8位String 必须 8位银行代号
银行卡号 card_no 变长32位String 必须 银行卡号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
实际出账金额 real_trans_amt 变长14位String 可选 实际出账金额,交易成功时必须,格式为###.00
手续费金额 fee_amt 变长14位String 可选 手续费金额,格式为###.00
手续费扣款客户号 fee_cust_id 定长16位String 可选 手续费扣款客户号
手续费扣款账户号 fee_acct_id 变长9位String 可选 手续费扣款账户号
商户收取服务费金额 serv_fee_amt 变长14位String 可选 商户收取用户的服务费金额,格式为###.00
商户子账户号 serv_fee_acct_id 变长9位String 可选 服务费非空时为必填,商户用来收取服务费的子账户号
交易状态 trans_stat 定长8位String 必须 02000001:已受理02000002:成功02000003:失败
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+begin_date+end_date+page_num+page_size+total_num

转账对账

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "305"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "305",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "305",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

前台快捷绑卡

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为305
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
开始日期 begin_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
结束日期 end_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
当前页号 page_num 变长String 必须 查询数据的所在页号,>0的整数
每页记录数 page_size 变长4位String 必须 每页记录数,>0且<=1000的整数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+begin_date+end_date+page_num+page_size

返回参数列表

中文名 参数名 数据格式 是否必须 说明
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为305
应答返回码 resp_code 定长6位String 必须 305000–调用成功
应答返回描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
开始日期 begin_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
结束日期 end_date 定长8位String 必须 格式为YYYYMMDD,开始日期和结束日期跨度不能大于90天
当前页号 page_num 变长String 必须 查询数据的所在页号,>0的整数
每页记录数 page_size 变长4位String 必须 每页记录数,>0且<=1000的整数
记录总条数 total_num 变长String 可选 记录总条数
对账结果串 result_list 变长String 可选 [{“order_date”:“20161129”,“order_id”:“201611292010001”,“platform_seq_id”:“2016112910000085”,“out_cust_id”:“6000010000000015”,“out_acct_id”:“777”,“in_cust_id”:“6000010000000025”,“in_acct_id”:“888”,“trans_amt”:“12.23”,“trans_stat”:“02000002”}]
商户订单日期 order_date 定长8位String 必须 格式为YYYYMMDD
商户订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
本平台交易唯一标识号 platform_seq_id 定长18位String 必须 组成规则:8位本平台日期+10位系统流水号
出账客户号 out_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识,充值交易时,出账客户就是充值客户
出账账户号 out_acct_id 变长9位String 必须 出账账户号
入款客户号 in_cust_id 定长16位String 必须 由汇付生成,用户的唯一性标识
入账账户号 in_acct_id 变长9位String 必须 入账账户号
交易金额 trans_amt 变长14位String 必须 交易金额,格式为###.00
交易状态 trans_stat 定长8位String 必须 02000002:成功02000003:失败
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+begin_date+end_date+page_num+page_size+total_num

签约号查询接口

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "315"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "315",
  "resp_code": "315000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "315",
  "resp_code": "315003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

提供查询此银行卡是否已经签约完成

调用方式

后台调用

应答方式

同步后台应答

接口类型

同步

请求参数列表

字段名 参数中文名称 数据格式 是否必须 说明
version 版本号 定长2位String 必须 目前固定为10
cmd_id 消息类型 定长3位String 必须 每一种消息类型代表一种交易,此处为315
mer_cust_id 商户号 定长16位String 必须 由汇付生成,商户的唯一性标识
user_cust_id 用户号 定长16位String 必须 由汇付生成,用户的唯一性标识
card_no 银行卡号 变长20位的String 必须
card_mobile 手机号 定长11位String 必须
cert_id 身份证号 变长18位的String 必须
mer_priv 商户私有域 变长120位的String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回
extension 扩展域 变长512位的String 可选 用于扩展请求参数

本接口加签拼接顺序: version+cmd_id+mer_cust_id+user_cust_id+card_no+card_mobile+mer_priv+extension

返回参数列表

参数中文名称 参数中文名称 数据格式 是否必须 说明
cmd_id 消息类型 定长3位String 必须 每一种消息类型代表一种交易,此处为315
resp_code 应答返回码 定长6位的String 必须 315000:交易成功, 315302:查无协议号,须重新签约 315003:交易失败(透传fpc的message) 315099:系统异常
resp_desc 应答描述 变长String 必须
mer_cust_id 商户号 定长16位String 必须 由汇付生成,商户的唯一性标识
user_cust_id 用户号 定长16位String 必须 由汇付生成,用户的唯一性标识
mer_priv 商户私有域 变长120位的String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回
extension 扩展域 变长512位的String 可选 用于扩展请求参数

本接口加签拼接顺序: cmd_id+resp_code+resp_desc+mer_cust_id+user_cust_id+mer_priv+extension

其他

产品录入

String result = new String();
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest");
try {
    List<NameValuePair> nvps = new ArrayList<NameValuePair>();
    nvps.add(new BasicNameValuePair("version", "10"));
    nvps.add(new BasicNameValuePair("cmd_id", "204"));
    nvps.add(new BasicNameValuePair("mer_cust_id", "6666000000000001"));
    nvps.add(new BasicNameValuePair("order_date", "20180327"));
    nvps.add(new BasicNameValuePair("order_id", "10000000001"));
    .......
    post.setEntity(new UrlEncodedFormEntity(nvps));
    HttpResponse httpResponse = client.execute(post);
    int code = httpResponse.getStatusLine().getStatusCode();
    String returnStr = EntityUtils.toString(httpResponse.getEntity());
} catch (Exception e) {
    e.printStackTrace();
}

成功响应

200
{
  "cmd_id": "204",
  "resp_code": "101000",
  "resp_desc": "交易成功",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

失败响应

200
{
  "cmd_id": "204",
  "resp_code": "101003",
  "resp_desc": "交易失败",
  "mer_cust_id" : "6666000000000001",
  "order_date": "20180327",
  "order_id": "10000000001",
  .......
}

接口功能说明

用于商户产品信息录入后进行入库动作,主要用于商户代扣时进行订单金额风控限制及后续其它监管需求

调用方式

后台调用

应答方式

同步后台应答、异步应答

接口类型

同步+异步

请求参数列表

中文名 参数名 数据格式 是否必须 说明
版本号 version 定长2位String 必须 目前固定为10
消息类型 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为204
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
产品ID product_id 变长20位String 必须 由商户提供,产品的唯一标识,20位内数字或字母的组合
产品总金额 product_amt 变长14位String 必须 产品总金额,格式为###.00
产品期数 product_periods 变长14位String 必须 产品的期数
产品开始时间 product_start_time 定长14位String 必须 产品开始时间
产品结束时间 product_end_time 定长14位String 必须 产品结束时间
产品所在地 product_location 定长4位String 必须 产品的所在地:省份,具体见附件二
商户后台应答地址 bg_ret_url 变长128位String 必须 通过后台异步通知,商户应在应答接收的响应中输出RECV_ORD_ID字样的字符串,表明商户已经收到该笔交易结果。注意:1)URL应使用UTF-8字符集URLEncode编码后传入2)URL中请不要包含特殊字符3)必须是外网地址
商户私有域 mer_priv 变长120位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
入参扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: version+cmd_id+mer_cust_id+order_date+order_id+product_id+product_amt+product_periods+product_start_time+product_end_time+product_location+bg_ret_url+mer_priv+extension

返回参数列表

中文名 参数名 数据格式 是否必须 说明
接口标识 cmd_id 定长3位String 必须 每一种消息类型代表一种交易,此处为204
应答返回码 resp_code 定长6位String 必须 204000–调用成功,其他见:返回码表
应答描述 resp_desc 变长String 必须 返回码的对应中文描述,中文为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户客户号 mer_cust_id 定长16位String 必须 由汇付生成,商户的唯一性标识
订单日期 order_date 定长8位String 必须 格式为YYYYMMDD,例如:20160307
订单号 order_id 变长20位String 必须 由商户生成,必须保证唯一,20位内数字或字母的组合
产品ID product_id 变长20位String 必须 由商户提供,产品的唯一标识
产品总金额 product_amt 变长14位String 必须 产品总金额,格式为###.00
产品期数 product_periods 变长14位String 必须 产品的期数
产品开始时间 product_start_time 变长14位String 必须 产品开始时间
产品结束时间 product_end_time 变长14位String 必须 产品结束时间
产品所在地 product_location 定长4位String 必须 产品的所在地:省份,具体见附件二
商户后台应答地址 bg_ret_url 变长128位String 必须 返参中的URL为UTF-8字符集URLEncode编码后的字符串,商户应解码获取原文
商户私有域 mer_priv 变长128位String 可选 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行Base64加密后再使用。
返参扩展域 extension 变长512位String 可选 用于扩展请求参数
签名 check_value 变长256位String 必须 加签规则:MD5+RSA将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值

本接口加签拼接顺序: cmd_id+resp_code+mer_cust_id+order_date+order_id+product_id+product_amt+product_periods+product_start_time+product_end_time+product_location+bg_ret_url+mer_priv+extension

附录一

充值/取现支持银行列表及代号

个人网银充值支持银行列表

银行名称 银行代号
中国工商银行 01020000
中国农业银行 01030000
中国银行 01040000
中国建设银行 01050000
中国交通银行 03010000
中信银行 03020000
光大银行 03030000
民生银行 03050000
广发银行 03060000
招商银行 03080000
兴业银行 03090000
上海浦东发展银行 03100000
上海银行 03130031
平安银行 03134402
富滇银行 03135301
上海农村商业银行 04020031
中国邮政储蓄银行 04030000

企业网银充值支持银行列表

银行名称 银行代号
中国工商银行 01020000
中国农业银行 01030000
中国银行 01040000
中国建设银行 01050000
中国交通银行 03010000
光大银行 03030000
深圳发展银行 03070000
招商银行 03080000
兴业银行 03090000
上海浦东发展银行 03100000
北京农商行 04020011

快捷充值支持银行列表

银行名称 银行代号
中国工商银行 01020000
中国农业银行 01030000
中国银行 01040000
中国建设银行 01050000
中国交通银行 03010000
中信银行 03020000
光大银行 03030000
华夏银行 03040000
民生银行 03050000
广发银行 03060000
招商银行 03080000
兴业银行 03090000
上海浦东发展银行 03100000
北京银行 03130011
上海银行 03130031
平安银行 03134402
恒丰银行 03150000
中国邮政储蓄银行 04030000

代扣充值支持银行列表

银行名称 银行代号
中国工商银行 01020000
中国农业银行 01030000
中国银行 01040000
中国建设银行 01050000
交通银行 03010000
中信银行 03020000
中国光大银行 03030000
华夏银行 03040000
广发银行 03060000
招商银行 03080000
兴业银行 03090000
上海浦东发展银行 03100000
平安银行 03134402
中国邮政储蓄银行 04030000

个人取现支持银行列表

银行名称 银行代号
中国银行 01040000
中国农业银行 01030000
中国建设银行 01050000
中国工商银行 01020000
交通银行 03010000
招商银行 03080000
上海银行 03130031
中国光大银行 03030000
兴业银行 03090000
平安银行 03134402
华夏银行 03040000
广发银行 03060000
中国民生银行 03050000
中国邮政储蓄银行 04030000
浦东发展银行 03100000
深圳发展银行 03070000
北京银行 03130011
渤海银行 03180000
浙商银行 03160000
杭州银行 03133301
南京银行 03133201
北京农村商业银行 04020011
浙江民泰商业银行 03133307
浙江泰隆商业银行 31330000
上海农村商业银行 04020031
中信银行 03020000

企业取现支持银行列表

银行名称 银行代号
中国银行 01040000
中国农业银行 01030000
中国建设银行 01050000
中国工商银行 01020000
交通银行 03010000
招商银行 03080000
中国光大银行 03030000
浦东发展银行 03100000
深圳发展银行 03070000
北京农村商业银行 04020011
中信银行 03020000
恒丰银行 03150000

附录二

城市(地区)行政区划代码

省份代码 省份名称 地区代码 地区名称 省份代码 省份名称 地区代码 地区名称 省份代码 省份名称 地区代码 地区名称
0011 北京 1100 北京 0023 黑龙江 2301 哈尔滨 0035 福建 3506 莆田
0012 天津 1200 天津 0023 黑龙江 2302 大庆 0035 福建 3507 泉州
0013 河北 1301 石家庄 0023 黑龙江 2303 大兴安岭 0035 福建 3508 三明
0013 河北 1302 保定 0023 黑龙江 2304 鹤岗 0035 福建 3509 漳州
0013 河北 1303 沧州 0023 黑龙江 2305 黑河 0036 江西 3601 南昌
0013 河北 1304 承德 0023 黑龙江 2306 鸡西 0036 江西 3602 抚州
0013 河北 1305 邯郸 0023 黑龙江 2307 佳木斯 0036 江西 3603 赣州
0013 河北 1306 衡水 0023 黑龙江 2308 牡丹江 0036 江西 3604 吉安
0013 河北 1307 廊坊 0023 黑龙江 2309 七台河 0036 江西 3605 景德镇
0013 河北 1308 秦皇岛 0023 黑龙江 2310 齐齐哈尔 0036 江西 3606 九江
0013 河北 1309 唐山 0023 黑龙江 2311 双鸭山 0036 江西 3607 萍乡
0013 河北 1310 邢台 0023 黑龙江 2312 绥化 0036 江西 3608 上饶
0013 河北 1311 张家口 0023 黑龙江 2313 伊春 0036 江西 3609 新余
0014 山西 1401 太原 0031 上海 3100 上海 0036 江西 3610 宜春
0014 山西 1402 长治 0032 江苏 3201 南京 0036 江西 3611 鹰潭
0014 山西 1403 大同 0032 江苏 3202 常州 0037 山东 3701 济南
0014 山西 1404 晋城 0032 江苏 3203 淮安 0037 山东 3702 青岛
0014 山西 1405 离石 0032 江苏 3204 连云港 0037 山东 3703 滨州
0014 山西 1406 临汾 0032 江苏 3205 南通 0037 山东 3704 德州
0014 山西 1407 朔州 0032 江苏 3206 苏州 0037 山东 3705 东营
0014 山西 1408 忻州 0032 江苏 3207 宿迁 0037 山东 3706 菏泽
0014 山西 1409 阳泉 0032 江苏 3208 泰州 0037 山东 3707 济宁
0014 山西 1410 榆次 0032 江苏 3209 无锡 0037 山东 3708 莱芜
0014 山西 1411 运城 0032 江苏 3210 徐州 0037 山东 3709 聊城
0014 山西 1412 晋中 0032 江苏 3211 盐城 0037 山东 3710 临沂
0014 山西 1413 吕梁 0032 江苏 3212 扬州 0037 山东 3711 日照
0015 内蒙古 1501 呼和浩特 0032 江苏 3213 镇江 0037 山东 3712 泰安
0015 内蒙古 1502 包头 0032 江苏 3214 胥浦 0037 山东 3713 威海
0015 内蒙古 1503 阿拉善 0033 浙江 3301 杭州 0037 山东 3714 潍坊
0015 内蒙古 1504 巴彦淖尔 0033 浙江 3302 宁波 0037 山东 3715 烟台
0015 内蒙古 1505 赤峰 0033 浙江 3303 湖州 0037 山东 3716 枣庄
0015 内蒙古 1506 呼伦贝尔 0033 浙江 3304 嘉兴 0037 山东 3717 淄博
0015 内蒙古 1507 乌海 0033 浙江 3305 金华 0041 河南 4101 郑州
0015 内蒙古 1508 乌兰察布 0033 浙江 3306 绍兴 0041 河南 4102 安阳
0015 内蒙古 1509 锡林郭勒 0033 浙江 3307 台州 0041 河南 4103 焦作
0015 内蒙古 1510 兴安 0033 浙江 3308 温州 0041 河南 4104 鹤壁
0015 内蒙古 1511 鄂尔多斯 0033 浙江 3309 舟山 0041 河南 4105 开封
0015 内蒙古 1512 通辽 0033 浙江 3310 衢州 0041 河南 4106 洛阳
0021 辽宁 2101 沈阳 0033 浙江 3311 丽水 0041 河南 4107 南阳
0021 辽宁 2102 大连 0034 安徽 3401 合肥 0041 河南 4108 平顶山
0021 辽宁 2103 鞍山 0034 安徽 3402 安庆 0041 河南 4109 三门峡
0021 辽宁 2104 本溪 0034 安徽 3403 蚌埠 0041 河南 4110 商丘
0021 辽宁 2105 朝阳 0034 安徽 3404 巢湖 0041 河南 4111 新乡
0021 辽宁 2106 丹东 0034 安徽 3405 池州 0041 河南 4112 信阳
0021 辽宁 2107 抚顺 0034 安徽 3406 滁州 0041 河南 4113 许昌
0021 辽宁 2108 阜新 0034 安徽 3407 阜阳 0041 河南 4114 周口
0021 辽宁 2109 葫芦岛 0034 安徽 3408 淮北 0041 河南 4115 驻马店
0021 辽宁 2110 锦州 0034 安徽 3409 淮南 0041 河南 4116 漯河
0021 辽宁 2111 辽阳 0034 安徽 3410 黄山 0041 河南 4117 濮阳
0021 辽宁 2112 盘锦 0034 安徽 3411 六安 0041 河南 4118 济源
0021 辽宁 2113 铁岭 0034 安徽 3412 马鞍山 0042 湖北 4201 武汉
0021 辽宁 2114 营口 0034 安徽 3414 铜陵 0042 湖北 4202 鄂州
0022 吉林 2201 长春 0034 安徽 3415 芜湖 0042 湖北 4203 恩施
0022 吉林 2202 白城 0034 安徽 3416 宣城 0042 湖北 4204 黄冈
0022 吉林 2203 白山 0034 安徽 3417 亳州 0042 湖北 4205 黄石
0022 吉林 2204 吉林 0034 安徽 3418 宿州 0042 湖北 4206 荆门
0022 吉林 2205 辽源 0035 福建 3501 福州 0042 湖北 4207 荆州
0022 吉林 2206 四平 0035 福建 3502 厦门 0042 湖北 4208 十堰
0022 吉林 2207 松原 0035 福建 3503 龙岩 0042 湖北 4209 随州
0022 吉林 2208 通化 0035 福建 3504 南平 0042 湖北 4210 咸宁
0022 吉林 2209 延边 0035 福建 3505 宁德 0042 湖北 4211 襄樊
0042 湖北 4212 孝感 0046 海南 4608 定安 0054 西藏 5402 阿里
0042 湖北 4213 神农架 0046 海南 4609 东方 0054 西藏 5403 昌都
0042 湖北 4214 天门 0046 海南 4610 乐东 0054 西藏 5404 林芝
0042 湖北 4215 宜昌 0046 海南 4611 临高 0054 西藏 5405 那曲
0042 湖北 4216 三峡 0046 海南 4612 陵水 0054 西藏 5406 日喀则
0043 湖南 4301 长沙 0046 海南 4613 琼海 0054 西藏 5407 山南
0043 湖南 4302 常德 0046 海南 4614 琼中 0061 陕西 6101 西安
0043 湖南 4303 郴州 0046 海南 4615 屯昌 0061 陕西 6102 安康
0043 湖南 4304 衡阳 0046 海南 4616 万宁 0061 陕西 6103 宝鸡
0043 湖南 4305 怀化 0046 海南 4617 文昌 0061 陕西 6104 汉中
0043 湖南 4306 娄底 0046 海南 4618 五指山 0061 陕西 6105 商洛
0043 湖南 4307 邵阳 0046 海南 4619 洋浦 0061 陕西 6106 铜川
0043 湖南 4308 湘潭 0050 重庆 5000 重庆 0061 陕西 6107 渭南
0043 湖南 4309 湘西 0051 四川 5101 成都 0061 陕西 6108 咸阳
0043 湖南 4310 益阳 0051 四川 5102 巴中 0061 陕西 6109 延安
0043 湖南 4311 永州 0051 四川 5103 达州 0061 陕西 6110 榆林
0043 湖南 4312 岳阳 0051 四川 5104 德阳 0062 甘肃 6201 兰州
0043 湖南 4313 张家界 0051 四川 5105 广安 0062 甘肃 6202 白银
0043 湖南 4314 株洲 0051 四川 5106 广元 0062 甘肃 6203 定西
0044 广东 4401 广州 0051 四川 5107 乐山 0062 甘肃 6204 东风
0044 广东 4402 深圳 0051 四川 5108 凉山 0062 甘肃 6205 合作
0044 广东 4403 潮州 0051 四川 5109 眉山 0062 甘肃 6206 嘉峪关
0044 广东 4404 东莞 0051 四川 5110 绵阳 0062 甘肃 6207 金昌
0044 广东 4405 佛山 0051 四川 5111 南充 0062 甘肃 6208 酒泉
0044 广东 4406 惠州 0051 四川 5112 内江 0062 甘肃 6209 矿区
0044 广东 4407 江门 0051 四川 5113 攀枝花 0062 甘肃 6210 临夏
0044 广东 4408 揭阳 0051 四川 5114 遂宁 0062 甘肃 6211 陇南
0044 广东 4409 茂名 0051 四川 5115 雅安 0062 甘肃 6212 平凉
0044 广东 4410 梅州 0051 四川 5116 宜宾 0062 甘肃 6213 庆阳
0044 广东 4411 清远 0051 四川 5117 自贡 0062 甘肃 6214 天水
0044 广东 4412 汕头 0051 四川 5118 泸州 0062 甘肃 6215 武威
0044 广东 4413 汕尾 0051 四川 5119 阿坝 0062 甘肃 6216 张掖
0044 广东 4414 韶关 0051 四川 5120 甘孜 0062 甘肃 6217 甘南州
0044 广东 4415 阳江 0051 四川 5121 资阳 0063 青海 6301 西宁
0044 广东 4416 云浮 0052 贵州 5201 贵阳 0063 青海 6302 海东
0044 广东 4417 湛江 0052 贵州 5202 安顺 0064 宁夏 6401 银川
0044 广东 4418 肇庆 0052 贵州 5203 毕节 0064 宁夏 6402 中卫
0044 广东 4419 中山 0052 贵州 5204 六盘水 0064 宁夏 6403 固原
0044 广东 4420 河源 0052 贵州 5205 铜仁 0064 宁夏 6404 石嘴山
0044 广东 4421 珠海 0052 贵州 5206 遵义 0064 宁夏 6405 吴忠
0045 广西 4501 南宁 0052 贵州 5207 黔东南 0065 新疆 6501 乌鲁木齐
0045 广西 4502 百色 0052 贵州 5208 黔南 0065 新疆 6502 阿克苏
0045 广西 4503 北海 0052 贵州 5209 黔西南 0065 新疆 6503 阿勒泰
0045 广西 4504 桂林 0053 云南 5301 昆明 0065 新疆 6504 巴州
0045 广西 4505 河池 0053 云南 5302 西双版纳 0065 新疆 6505 博州
0045 广西 4506 柳州 0053 云南 5303 保山 0065 新疆 6506 昌吉
0045 广西 4507 梧州 0053 云南 5304 楚雄 0065 新疆 6507 哈密
0045 广西 4508 玉林 0053 云南 5305 大理 0065 新疆 6508 和田
0045 广西 4509 崇左 0053 云南 5306 德宏 0065 新疆 6509 喀什
0045 广西 4510 防城港 0053 云南 5307 红河 0065 新疆 6510 克拉玛依
0045 广西 4511 贵港 0053 云南 5308 丽江 0065 新疆 6511 马兰
0045 广西 4512 贺州 0053 云南 5309 临沧 0065 新疆 6512 石河子
0045 广西 4513 来宾 0053 云南 5310 怒江 0065 新疆 6513 塔城
0045 广西 4514 钦州 0053 云南 5311 曲靖 0065 新疆 6514 吐鲁番
0046 海南 4601 海口 0053 云南 5312 思茅 0065 新疆 6515 伊犁
0046 海南 4602 三亚 0053 云南 5313 文山 0065 新疆 6516 克州
0046 海南 4603 白沙 0053 云南 5314 玉溪 0065 新疆 6517 阿拉尔
0046 海南 4604 保亭 0053 云南 5315 昭通 0065 新疆 6518 五家渠
0046 海南 4605 昌江 0053 云南 5316 中甸 2001 香港 9901 香港
0046 海南 4606 澄迈 0053 云南 5317 迪庆州 2002 澳门 9902 澳门
0046 海南 4607 儋州 0054 西藏 5401 拉萨 2003 台湾 9903 台湾

附录三

银行限额列表

快捷支付

银行名称 单日限额 单笔最低限额 单笔最高限额
中国邮政储蓄银行 5000.00 0.00 5000.00
恒丰银行 1000000.00 0.00 500000.00
平安银行 50000.00 0.00 50000.00
上海银行 500000.00 0.00 100000.00
北京银行 500000.00 20.00 99999.00
上海浦东发展银行 400000.00 0.00 400000.00
兴业银行 50000.00 0.00 50000.00
招商银行 100000.00 5.00 100000.00
华夏银行 1000000.00 0.00 500000.00
光大银行 50000.00 0.00 50000.00
中信银行 5000.00 1.00 5000.00
中国交通银行 200000.00 0.00 10000.00
中国建设银行 1000000.00 0.00 100000.00
中国银行 200000.00 0.00 50000.00
中国农业银行 19999.99 0.00 19999.99
中国工商银行 50000.00 0.00 50000.00
广发银行 1000000.00 0.00 500000.00

代扣支付

银行名称 单日限额 单笔最低限额 单笔最高限额
中国工商银行 10000.00 0.00 10000.00
中国邮政储蓄银行 5000.00 0.00 5000.00
平安银行 50000.00 0.00 50000.00
北京银行 500000.00 20.00 99999.00
上海浦东发展银行 50000.00 0.00 50000.00
兴业银行 50000.00 0.00 50000.00
招商银行 100000.00 5.00 100000.00
广发银行 1000000.00 0.00 500000.00
光大银行 50000.00 0.00 50000.00
中信银行 5000.00 1.00 5000.00
中国交通银行 200000.00 0.00 10000.00
中国建设银行 50000.00 0.00 50000.00
中国银行 200000.00 0.00 50000.00
中国农业银行 9999.00 0.00 9999.00

附录四

返回码表

个人用户开户
101000 交易成功
101003 交易失败
101099 系统异常
101100 请求参数非法
101101 商户无此接口权限
101102 验证签名失败
101103 商户状态异常
101106 商户签名未配置
101202 交易订单号重复
101203 账户可用余额不足
101204 商户配置异常
101205 短信验证码验证失败
101206 短信验证码发送手机号与验证手机号不一致
101207 短信验证码或短信唯一标识为空
101208 短信验证码已失效请重新获取
101209 验证码发送接口与接口不一致
101301 该用户已开户,身份证号已存在
101302 该用户已开户,手机号已存在
101303 该用户正在开户中,请勿重复申请
101304 个人用户开户失败
101400 身份证和姓名校验不符
101401 身份证末位校验失败
101800 风控信息验证失败
101801 商户接口调用风控受限
101802 用户接口调用风控受限
101803 二级商户接口调用风控受限
企业用户开户
102000 交易成功
102099 系统异常
102100 请求参数非法
102101 商户无此接口权限
102102 验证签名失败
102103 商户状态异常
102202 交易订单号重复
102300 该企业证照类型与证照号不匹配
102301 该企业已开户
102302 未查询到原开户申请号,不能修改
102303 该企业开户申请号重复
102304 该企业开户申请正在审核中,不能修改
102305 该企业开户申请已被拒绝,不能修改
102306 该企业开户申请已经通过,不能修改
102307 该企业已有正在处理的开户申请或已开户成功
102308 上传失败,文件大小超过5M
102309 上传失败,不支持该文件格式
102310 上传失败,文件数量超过限制
102311 文件上传失败,请稍后重试
102312 操作超时,请重试
102313 文件信息不匹配
102314 企业名称与开户银行账户名不相同
102315 开户申请提交失败,数据异常
102316 未查询到子帐户信息
102317 文件数据异常
102318 省份地区信息非法
102800 风控信息验证失败
102801 商户接口调用风控受限
102802 用户接口调用风控受限
102803 二级商户接口调用风控受限
快捷绑卡
103000 交易成功
103002 请求已受理
103003 交易失败
103099 系统异常
103100 请求参数非法
103101 商户无此接口权限
103102 验证签名失败
103103 商户状态异常
103104 用户状态异常
103106 商户签名未配置
103201 页面数据被篡改
103202 交易订单号重复
103203 账户可用余额不足
103204 商户配置异常
103205 短信验证码验证失败
103206 短信验证码发送手机号与验证手机号不一致
103207 短信验证码或短信唯一标识为空
103208 短信验证码已失效请重新获取
103209 验证码发送接口与接口不一致
103210 短信验证码发送过于频繁
103211 短信验证码发送失败
103301 不支持绑定该银行的银行卡
103302 用户已绑定快捷卡,不能再绑定取现卡
103303 银行卡号与银行不匹配
103304 该银行卡非借记卡
103305 企业用户/商户不支持快捷绑卡
103306 用户已绑定快捷或代扣卡,请勿重复申请
103307 用户有快捷正在绑定中,请勿重复绑卡
103308 省份地区信息非法
103400 银行账号无效或不存在
103401 持卡人身份信息或手机号验证不符
103402 卡号长度有误
103403 验证超时
103404 账号应为活期账号
103405 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
103501 交易失败(包含未知错误码)
103502 系统未开放或暂时关闭,请稍后再试
103503 交易通讯超时,请发起查询交易
103505 重复签约
103512 重复交易
103519 订单系统错误
103520 持卡人信息为空
103521 持卡人信息有误
103522 持卡人系统错误
103523 卡信息为空
103524 卡信息有误
103525 卡系统错误
103526 卡系统错误
103535 网关不支持签约交易
103538 风险受限
103560 交易失败,请联系发卡银行
103561 对不起,您所输的银行卡号有误,请核实后再试!
103562 交易失败,发卡银行不支持该商户,请更换其它银行卡
103563 卡状态不正确
103565 输入的密码、有效期或CVN2有误,交易失败
103566 持卡人身份信息或手机号输入不正确,验证失败
103568 您的银行卡暂不支持该业务
103571 对不起,你所输的验证码有误,请核实后再试!
103572 签约失败,您尚未在银行柜面或网银页面签约此业务,请去柜面或网银开通,或者拨打发卡行热线电话
103573 对不起,您所输的户名有误,请核实后再试!
103574 对不起,您的证件类型有误,请核实后再试!
103575 对不起,您所输的证件号码有误,请核实后再试!
103576 对不起,您所输的手机号码有误,请核实后再试!
103577 验证码发送失败
103578 验证码超限或超时
103579 对不起,您的用户信息未通过银行验证,请核实后再试!
103580 银行卡状态异常
103590 交易失败,参数不合法
103591 系统异常
103592 银行系统繁忙,请稍后再试
103593 系统超时
103594 银行处理中,请稍后再试
103599 系统异常
1035F0 渠道交易失败
1035F2 交易失败,未添加白名单
1035F3 签约失败,请稍后再试
1035P0 交易挂起,需要确认
103800 风控信息验证失败
103801 商户接口调用风控受限
103802 用户接口调用风控受限
103803 二级商户接口调用风控受限
取现绑卡
104000 交易成功
104002 请求已受理
104003 交易失败
104099 系统异常
104100 请求参数非法
104101 商户无此接口权限
104102 验证签名失败
104103 商户状态异常
104104 用户状态异常
104106 商户签名未配置
104202 交易订单号重复
104203 账户可用余额不足
104204 商户配置异常
104301 不支持绑定该银行的银行卡
104302 用户已绑定快捷或代扣卡,不能再绑定取现卡
104303 银行卡号与银行不匹配
104304 该银行卡非借记卡
104305 企业用户/商户不支持快捷绑卡
104306 用户已绑定快捷或代扣卡,请勿重复申请
104307 用户有快捷或代扣卡正在绑定中,请勿重复绑卡
104308 省份地区信息非法
104800 风控信息验证失败
104801 商户接口调用风控受限
104802 用户接口调用风控受限
104803 二级商户接口调用风控受限
解绑快捷卡
105000 交易成功
105002 请求已受理
105099 系统异常
105100 请求参数非法
105101 商户无此接口权限
105102 验证签名失败
105103 商户状态异常
105104 用户状态异常
105205 短信验证码验证失败
105206 短信验证码发送手机号与验证手机号不一致
105207 短信验证码或短信唯一标识为空
105208 短信验证码已失效请重新获取
105209 验证码发送接口与接口不一致
105300 短信验证码有误
105301 用户未绑定过该卡
105302 非代扣或快捷卡,不能解绑
105303 订单重复
105304 用户基本信息不存在
105305 验证卡信息失败
105800 风控信息验证失败
105801 商户接口调用风控受限
105802 用户接口调用风控受限
105803 二级商户接口调用风控受限
代扣签约绑卡
106000 交易成功
106002 请求已受理
106003 交易失败
106099 系统异常
106100 请求参数非法
106101 商户无此接口权限
106102 验证签名失败
106103 商户状态异常
106104 用户状态异常
106105 账户状态异常
106106 商户签名未配置
106201 页面数据被篡改
106202 交易订单号重复
106203 账户可用余额不足
106204 商户配置异常
106205 短信验证码验证失败
106206 短信验证码发送手机号与验证手机号不一致
106207 短信验证码或短信唯一标识为空
106208 短信验证码已失效请重新获取
106209 验证码发送接口与接口不一致
106210 短信验证码发送过于频繁
106211 短信验证码发送失败
106301 不支持绑定该银行的银行卡
106303 银行卡号与银行不匹配
106304 该银行卡非借记卡
106308 省份地区信息非法
106309 代扣签约只支持个人用户
106310 产品信息校验失败
106311 手续费子账户配置异常
106312 企业用户/商户不支持代扣绑卡
106318 用户已绑定代扣卡,请勿重复申请
106319 用户有代扣卡正在绑定中,请勿重复绑卡
106400 银行账号无效或不存在
106401 持卡人身份信息或手机号验证不符
106402 卡号长度有误
106403 验证超时
106404 账号应为活期账号
106405 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
106800 风控信息验证失败
106801 商户接口调用风控受限
106802 用户接口调用风控受限
106803 二级商户接口调用风控受限
删除取现卡
108000 交易成功
108003 交易失败
108099 系统异常
108100 请求参数非法
108101 商户无此接口权限
108102 验证签名失败
108103 商户状态异常
108104 用户状态异常
108106 商户签名未配置
108202 交易订单号重复
108204 商户配置异常
108300 银行卡不是取现卡
108301 不能操作默认取现卡
108302 银行卡不存在或状态异常
108800 风控信息验证失败
108801 商户接口调用风控受限
108802 用户接口调用风控受限
108803 二级商户接口调用风控受限
纯通道代扣签约
109000 交易成功
109002 请求已受理
109003 交易失败
109099 系统异常
109100 请求参数非法
109101 商户无此接口权限
109102 验证签名失败
109103 商户状态异常
109104 用户状态异常
109105 账户状态异常
109106 商户签名未配置
109201 页面数据被篡改
109202 交易订单号重复
109203 账户可用余额不足
109204 商户配置异常
109205 短信验证码验证失败
109206 短信验证码发送手机号与验证手机号不一致
109207 短信验证码或短信唯一标识为空
109208 短信验证码已失效请重新获取
109209 验证码发送接口与接口不一致
109210 短信验证码发送过于频繁
109211 短信验证码发送失败
109301 不支持绑定该银行的银行卡
109303 银行卡号与银行不匹配
109304 该银行卡非借记卡
109308 省份地区信息非法
109309 代扣签约只支持个人用户
109310 产品信息校验失败
109311 手续费子账户配置异常
109312 企业用户/商户不支持代扣绑卡
109318 用户已绑定代扣卡,请勿重复申请
109319 用户有代扣卡正在绑定中,请勿重复绑卡
109400 银行账号无效或不存在
109401 持卡人身份信息或手机号验证不符
109402 卡号长度有误
109403 验证超时
109404 账号应为活期账号
109405 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
109800 风控信息验证失败
109801 商户接口调用风控受限
109802 用户接口调用风控受限
109803 二级商户接口调用风控受限
短信验证码发送
110000 交易成功
110003 交易失败
110099 系统异常
110100 请求参数非法
110101 商户无此接口权限
110102 验证签名失败
110103 商户状态异常
110104 用户状态异常
110106 商户签名未配置
110202 交易订单号重复
110204 商户配置异常
110210 短信验证码发送过于频繁
110211 短信验证码发送失败
110301 短信验证码发送开关已关闭
110304 快捷充值短信验证码发送失败,用户还未绑定快捷卡
110305 非快捷绑卡银行预留手机号
后台快捷绑卡代开户接口
112000 交易成功
112002 请求已受理
112003 交易失败
112099 系统异常
112100 请求参数非法
112101 商户无此接口权限
112102 验证签名失败
112103 商户状态异常
112104 用户状态异常
112106 商户签名未配置
112201 页面数据被篡改
112202 交易订单号重复
112203 账户可用余额不足
112204 商户配置异常
112205 短信验证码验证失败
112206 短信验证码发送手机号与验证手机号不一致
112207 短信验证码或短信唯一标识为空
112208 短信验证码已失效请重新获取
112209 验证码发送接口与接口不一致
112210 短信验证码发送过于频繁
112211 短信验证码发送失败
112300 该业务仅支持个人用户
112301 不支持绑定该银行的银行卡
112302 用户已绑定快捷卡,不能再绑定取现卡
112303 银行卡号与银行不匹配
112304 该银行卡非借记卡
112306 用户已绑定快捷或代扣卡,请勿重复申请
112307 用户有快捷正在绑定中,请勿重复绑卡
112308 省份地区信息非法
112320 该用户已开户,手机号已存在
112400 银行账号无效或不存在
112401 持卡人身份信息或手机号验证不符
112402 卡号长度有误
112403 验证超时
112404 账号应为活期账号
112405 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
112501 交易失败(包含未知错误码)
112502 系统未开放或暂时关闭,请稍后再试
112503 交易通讯超时,请发起查询交易
112505 重复签约
112512 重复交易
112519 订单系统错误
112520 持卡人信息为空
112521 持卡人信息有误
112522 持卡人系统错误
112523 卡信息为空
112524 卡信息有误
112525 卡系统错误
112526 卡系统错误
112535 网关不支持签约交易
112538 风险受限
112560 交易失败,请联系发卡银行
112561 对不起,您所输的银行卡号有误,请核实后再试!
112562 交易失败,发卡银行不支持该商户,请更换其它银行卡
112563 卡状态不正确
112565 输入的密码、有效期或CVN2有误,交易失败
112566 持卡人身份信息或手机号输入不正确,验证失败
112568 您的银行卡暂不支持该业务
112571 对不起,你所输的验证码有误,请核实后再试!
112572 签约失败,您尚未在银行柜面或网银页面签约此业务,请去柜面或网银开通,或者拨打发卡行热线电话
112573 对不起,您所输的户名有误,请核实后再试!
112574 对不起,您的证件类型有误,请核实后再试!
112575 对不起,您所输的证件号码有误,请核实后再试!
112576 对不起,您所输的手机号码有误,请核实后再试!
112577 验证码发送失败
112578 验证码超限或超时
112579 对不起,您的用户信息未通过银行验证,请核实后再试!
112580 银行卡状态异常
112590 交易失败,参数不合法
112591 系统异常
112592 银行系统繁忙,请稍后再试
112593 系统超时
112594 银行处理中,请稍后再试
112599 系统异常
1125F0 渠道交易失败
1125F2 交易失败,未添加白名单
1125F3 签约失败,请稍后再试
1125P0 交易挂起,需要确认
112800 风控信息验证失败
112801 商户接口调用风控受限
112802 用户接口调用风控受限
112803 二级商户接口调用风控受限
二级商户号录入接口
114000 交易成功
114099 系统异常
114100 请求参数非法
114101 商户无此接口权限
114102 验证签名失败
114103 商户状态异常
114215 二级商户名已存在
后台企业用户开户
115000 交易成功
115099 系统异常
115100 请求参数非法
115101 商户无此接口权限
115102 验证签名失败
115103 商户状态异常
115202 交易订单号重复
115300 该企业证照类型与证照号不匹配
115301 该企业已开户
115307 该企业已有正在处理的开户申请或已开户成功
115314 企业名称与开户银行账户名不相同
115316 未查询到子帐户信息
115317 文件数据异常
115318 省份地区信息非法
115800 风控信息验证失败
115801 商户接口调用风控受限
115802 用户接口调用风控受限
115803 二级商户接口调用风控受限
前台快捷绑卡代开户接口
116000 交易成功
116002 请求已受理
116003 交易失败
116099 系统异常
116100 请求参数非法
116101 商户无此接口权限
116102 验证签名失败
116103 商户状态异常
116104 用户状态异常
116106 商户签名未配置
116202 交易订单号重复
116203 账户可用余额不足
116204 商户配置异常
116205 短信验证码验证失败
116206 短信验证码发送手机号与验证手机号不一致
116207 短信验证码或短信唯一标识为空
116208 短信验证码已失效请重新获取
116209 验证码发送接口与接口不一致
116210 短信验证码发送过于频繁
116211 短信验证码发送失败
116216 页面已失效
116300 该业务仅支持个人用户
116301 不支持绑定该银行的银行卡
116302 用户已绑定快捷卡,不能再绑定取现卡
116303 银行卡号与银行不匹配
116304 该银行卡非借记卡
116306 用户已绑定快捷或代扣卡,请勿重复申请
116307 用户有快捷正在绑定中,请勿重复绑卡
116308 省份地区信息非法
116320 该用户已开户,手机号已存在
116400 银行账号无效或不存在
116401 持卡人身份信息或手机号验证不符
116402 卡号长度有误
116403 验证超时
116404 账号应为活期账号
116405 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
116501 交易失败(包含未知错误码)
116502 系统未开放或暂时关闭,请稍后再试
116503 交易通讯超时,请发起查询交易
116505 重复签约
116512 重复交易
116519 订单系统错误
116520 持卡人信息为空
116521 持卡人信息有误
116522 持卡人系统错误
116523 卡信息为空
116524 卡信息有误
116525 卡系统错误
116526 卡系统错误
116535 网关不支持签约交易
116538 风险受限
116560 交易失败,请联系发卡银行
116561 对不起,您所输的银行卡号有误,请核实后再试!
116562 交易失败,发卡银行不支持该商户,请更换其它银行卡
116563 卡状态不正确
116565 输入的密码、有效期或CVN2有误,交易失败
116566 持卡人身份信息或手机号输入不正确,验证失败
116568 您的银行卡暂不支持该业务
116571 对不起,你所输的验证码有误,请核实后再试!
116572 签约失败,您尚未在银行柜面或网银页面签约此业务,请去柜面或网银开通,或者拨打发卡行热线电话
116573 对不起,您所输的户名有误,请核实后再试!
116574 对不起,您的证件类型有误,请核实后再试!
116575 对不起,您所输的证件号码有误,请核实后再试!
116576 对不起,您所输的手机号码有误,请核实后再试!
116577 验证码发送失败
116578 验证码超限或超时
116579 对不起,您的用户信息未通过银行验证,请核实后再试!
116580 银行卡状态异常
116590 交易失败,参数不合法
116591 系统异常
116592 银行系统繁忙,请稍后再试
116593 系统超时
116594 银行处理中,请稍后再试
116599 系统异常
1165F0 渠道交易失败
1165F2 交易失败,未添加白名单
1165F3 签约失败,请稍后再试
1165P0 交易挂起,需要确认
116800 风控信息验证失败
116801 商户接口调用风控受限
116802 用户接口调用风控受限
116803 二级商户接口调用风控受限
前台代扣签约代开户
117000 交易成功
117002 请求已受理
117003 交易失败
117099 系统异常
117100 请求参数非法
117101 商户无此接口权限
117102 验证签名失败
117103 商户状态异常
117104 用户状态异常
117105 账户状态异常
117106 商户签名未配置
117201 页面数据被篡改
117202 交易订单号重复
117203 账户可用余额不足
117204 商户配置异常
117205 短信验证码验证失败
117206 短信验证码发送手机号与验证手机号不一致
117207 短信验证码或短信唯一标识为空
117208 短信验证码已失效请重新获取
117209 验证码发送接口与接口不一致
117210 短信验证码发送过于频繁
117211 短信验证码发送失败
117300 该业务仅支持个人用户执行
117301 不支持绑定该银行的银行卡
117303 银行卡号与银行不匹配
117304 该银行卡非借记卡
117308 省份地区信息非法
117309 代扣签约只支持个人用户
117310 产品信息校验失败
117311 手续费子账户配置异常
117312 企业用户/商户不支持代扣绑卡
117316 手机号与已绑定卡记录不匹配
117318 用户已绑定代扣卡,请勿重复申请
117319 用户有代扣卡正在绑定中,请勿重复绑卡
117320 手机号已注册
117400 银行账号无效或不存在
117401 持卡人身份信息或手机号验证不符
117402 卡号长度有误
117403 验证超时
117404 账号应为活期账号
117405 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
117501 交易失败(包含未知错误码)
117502 系统未开放或暂时关闭,请稍后再试
117503 交易通讯超时,请发起查询交易
117505 重复签约
117512 重复交易
117519 订单系统错误
117520 持卡人信息为空
117521 持卡人信息有误
117522 持卡人系统错误
117523 卡信息为空
117524 卡信息有误
117525 卡系统错误
117526 卡系统错误
117535 网关不支持签约交易
117538 风险受限
117560 交易失败,请联系发卡银行
117561 对不起,您所输的银行卡号有误,请核实后再试!
117562 交易失败,发卡银行不支持该商户,请更换其它银行卡
117563 卡状态不正确
117565 输入的密码、有效期或CVN2有误,交易失败
117566 持卡人身份信息或手机号输入不正确,验证失败
117568 您的银行卡暂不支持该业务
117572 签约失败,您尚未在银行柜面或网银页面签约此业务,请去柜面或网银开通,或者拨打发卡行热线电话
117573 对不起,您所输的户名有误,请核实后再试!
117574 对不起,您的证件类型有误,请核实后再试!
117575 对不起,您所输的证件号码有误,请核实后再试!
117576 对不起,您所输的手机号码有误,请核实后再试!
117577 验证码发送失败
117578 验证码超限或超时
117579 对不起,您的用户信息未通过银行验证,请核实后再试!
117580 银行卡状态异常
117590 交易失败,参数不合法
117591 系统异常
117592 银行系统繁忙,请稍后再试
117593 系统超时
117594 银行处理中,请稍后再试
117599 系统异常
1175F0 渠道交易失败
1175F2 交易失败,未添加白名单
1175F3 签约失败,请稍后再试
1175P0 交易挂起,需要确认
117800 风控信息验证失败
117801 商户接口调用风控受限
117802 用户接口调用风控受限
117803 二级商户接口调用风控受限
充值
201000 交易成功
201002 请求已受理
201003 交易失败
201099 系统异常
201100 请求参数非法
201101 商户无此接口权限
201102 验证签名失败
201103 商户状态异常
201104 用户状态异常
201105 账户状态异常
201106 商户签名未配置
201202 交易订单号重复
201204 商户配置异常
201205 短信验证码验证失败
201206 短信验证码发送手机号与验证手机号不一致
201207 短信验证码或短信唯一标识为空
201208 短信验证码已失效请重新获取
201209 验证码发送接口与接口不一致
201300 不支持此充值银行
201301 该充值银行网关不存在
201302 不支持此充值类型
201303 商户充值基础信息未配置
201304 不支持此业务类型
201305 入账客户信息不正确
201306 入账分账串信息不正确
201307 该用户未绑定快捷卡
201308 该用户未绑定代扣卡
201309 该用户代扣协议不存在或状态异常
201310 企业用户或商户不支持快捷充值
201311 企业用户或商户不支持代扣充值
201312 手续费金额不得大于等于交易金额
201313 该充值银行与用户快捷卡不匹配
201314 充值手续费账户状态不正常
201315 个人用户仅支持个人网银充值
201316 支付失败
201501 交易失败(包含未知错误码)
201502 系统未开放或暂时关闭,请稍后再试
201503 交易通讯超时,请发起查询交易
201510 订单信息为空
201511 订单信息有误
201512 重复交易
201519 订单系统错误
201523 卡信息为空
201524 卡信息有误
201525 卡系统错误
201526 卡系统错误
201530 业务系统信息为空
201531 业务系统信息有误
201532 业务系统错误
201533 金额超限
201534 查无此交易
201536 与原交易信息不符
201538 风险受限
201542 扣款成功但交易超过规定支付时间
201560 交易失败,请联系发卡银行
201562 交易失败,发卡银行不支持该商户,请更换其它银行卡
201563 卡状态不正确
201564 银行卡余额不足
201565 输入的密码、有效期或CVN2有误,交易失败
201567 密码输入次数超限
201568 您的银行卡暂不支持该业务
201580 银行卡状态异常
201581 支付失败,请稍后再试
201583 金额超限次数超过限制,请稍后再试!
201584 单笔金额超限
201585 单日金额超限
201586 单月金额超限
201587 订单信息重复
201588 支付订单信息有误
201590 交易失败,参数不合法
201591 系统异常
201592 银行系统繁忙,请稍后再试
201593 系统超时
201594 银行处理中,请稍后再试
201599 系统异常
2015F0 渠道交易失败
2015F2 交易失败,未添加白名单
2015F6 交易失败,此卡未签约
2015P0 交易挂起,需要确认
201800 风控信息验证失败
201801 商户接口调用风控受限
201802 用户接口调用风控受限
201803 二级商户接口调用风控受限
取现
202000 交易成功
202002 请求已受理
202003 交易失败
202099 系统异常
202100 请求参数非法
202101 商户无此接口权限
202102 验证签名失败
202103 商户状态异常
202104 用户状态异常
202105 账户状态异常
202106 商户签名未配置
202202 交易订单号重复
202204 商户配置异常
202212 账户余额查询失败
202300 银行卡不是取现卡
202301 没有可用的默认取现卡
202302 取现服务费超出最大费率配置
202303 取现金额不足
202304 取现方式错误
202305 银行卡信息不存在或状态异常
202306 接口不支持手续费外扣
202307 取现金额小于等于取现费用
202308 商户取现不支持服务费
202309 手续费专户不能出账
202800 风控信息验证失败
202801 商户接口调用风控受限
202802 用户接口调用风控受限
202803 二级商户接口调用风控受限
转账
203000 交易成功
203099 系统异常
203100 请求参数非法
203101 商户无此接口权限
203102 验证签名失败
203103 商户状态异常
203104 用户状态异常
203202 交易订单号重复
203300 转账类型与转入方/转出方用户信息不匹配
203301 转出方用户信息不存在
203302 转入方用户信息不存在
203303 转出方用户状态异常
203304 转入方用户状态异常
203305 子账户间转账,商户信息不存在
203306 子账户间转账,商户状态异常
203307 转出方帐户号不存在
203308 转入方账号不存在
203309 转出方帐户状态异常
203310 转入方帐户状态异常
203311 转账失败
203312 商户手续费帐户不存在
203313 商户手续费帐户状态异常
203314 风控拦截
203315 验证手续费专户,资金不能转出
203800 风控信息验证失败
203801 商户接口调用风控受限
203802 用户接口调用风控受限
203803 二级商户接口调用风控受限
产品录入
204000 交易成功
204099 系统异常
204100 请求参数非法
204101 商户无此接口权限
204102 验证签名失败
204103 商户状态异常
204104 用户状态异常
204300 项目信息或订单信息重复
204301 项目开始时间晚于或等于项目结束时间
页面快捷支付
205000 交易成功
205002 请求已受理
205003 交易失败
205099 系统异常
205100 请求参数非法
205101 商户无此接口权限
205102 验证签名失败
205103 商户状态异常
205104 用户状态异常
205105 账户状态异常
205106 商户签名未配置
205202 交易订单号重复
205204 商户配置异常
205205 短信验证码验证失败
205206 短信验证码发送手机号与验证手机号不一致
205207 短信验证码或短信唯一标识为空
205208 短信验证码已失效请重新获取
205209 验证码发送接口与接口不一致
205216 页面已失效
205300 不支持此充值银行
205301 该充值银行网关不存在
205302 不支持此充值类型
205303 商户充值基础信息未配置
205304 不支持此业务类型
205305 入账客户信息不正确
205306 入账分账串信息不正确
205307 该用户未绑定快捷卡
205310 企业用户或商户不支持快捷充值
205312 手续费金额不得大于等于交易金额
205313 该充值银行与用户快捷卡不匹配
205314 充值手续费账户状态不正常
205315 个人用户仅支持个人网银充值
205316 支付失败
205501 交易失败(包含未知错误码)
205502 系统未开放或暂时关闭,请稍后再试
205503 交易通讯超时,请发起查询交易
205510 订单信息为空
205511 订单信息有误
205512 重复交易
205519 订单系统错误
205523 卡信息为空
205524 卡信息有误
205525 卡系统错误
205526 卡系统错误
205530 业务系统信息为空
205531 业务系统信息有误
205532 业务系统错误
205533 金额超限
205534 查无此交易
205536 与原交易信息不符
205538 风险受限
205542 扣款成功但交易超过规定支付时间
205560 交易失败,请联系发卡银行
205562 交易失败,发卡银行不支持该商户,请更换其它银行卡
205563 卡状态不正确
205564 银行卡余额不足
205565 输入的密码、有效期或CVN2有误,交易失败
205567 密码输入次数超限
205568 您的银行卡暂不支持该业务
205580 银行卡状态异常
205581 支付失败,请稍后再试
205583 金额超限次数超过限制,请稍后再试!
205584 单笔金额超限
205585 单日金额超限
205586 单月金额超限
205587 订单信息重复
205588 支付订单信息有误
205590 交易失败,参数不合法
205591 系统异常
205592 银行系统繁忙,请稍后再试
205593 系统超时
205594 银行处理中,请稍后再试
205599 系统异常
2055F0 渠道交易失败
2055F2 交易失败,未添加白名单
2015F6 交易失败,此卡未签约
2055P0 交易挂起,需要确认
205800 风控信息验证失败
205801 商户接口调用风控受限
205802 用户接口调用风控受限
205803 二级商户接口调用风控受限
快捷绑卡支付
206000 交易成功
206002 请求已受理
206003 交易失败
206099 系统异常
206100 请求参数非法
206101 商户无此接口权限
206102 验证签名失败
206103 商户状态异常
206104 用户状态异常
206105 账户状态异常
206106 商户签名未配置
206202 交易订单号重复
206203 账户可用余额不足
206204 商户配置异常
206205 短信验证码验证失败
206206 短信验证码发送手机号与验证手机号不一致
206207 短信验证码或短信唯一标识为空
206208 短信验证码已失效请重新获取
206209 验证码发送接口与接口不一致
206210 短信验证码发送过于频繁
206211 短信验证码发送失败
206431 不支持绑定该银行的银行卡
206432 用户已绑定快捷卡,不能再绑定取现卡
206433 银行卡号与银行不匹配
206434 该银行卡非借记卡
206435 企业用户/商户不支持快捷绑卡
206436 用户已绑定快捷或代扣卡,请勿重复申请
206437 用户有快捷正在绑定中,请勿重复绑卡
206438 省份地区信息非法
20643F 手机号与已绑定卡记录不匹配
206443 手机号已注册
206448 银行账号无效或不存在
206449 持卡人身份信息或手机号验证不符
20644A 卡号长度有误
20644B 验证超时
20644C 账号应为活期账号
20644D 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
20644E 绑卡请求流水已存在
206501 交易失败(包含未知错误码)
206502 系统未开放或暂时关闭,请稍后再试
206503 交易通讯超时,请发起查询交易
206505 重复签约
206512 重复交易
206519 订单系统错误
206520 持卡人信息为空
206521 持卡人信息有误
206522 持卡人系统错误
206523 卡信息为空
206524 卡信息有误
206525 卡系统错误
206526 卡系统错误
206535 网关不支持签约交易
206538 风险受限
206560 交易失败,请联系发卡银行
206561 对不起,您所输的银行卡号有误,请核实后再试!
206562 交易失败,发卡银行不支持该商户,请更换其它银行卡
206563 卡状态不正确
206565 输入的密码、有效期或CVN2有误,交易失败
206566 持卡人身份信息或手机号输入不正确,验证失败
206568 您的银行卡暂不支持该业务
206571 对不起,你所输的验证码有误,请核实后再试!
206572 签约失败,您尚未在银行柜面或网银页面签约此业务,请去柜面或网银开通,或者拨打发卡行热线电话
206573 对不起,您所输的户名有误,请核实后再试!
206574 对不起,您的证件类型有误,请核实后再试!
206575 对不起,您所输的证件号码有误,请核实后再试!
206576 对不起,您所输的手机号码有误,请核实后再试!
206577 验证码发送失败
206578 验证码超限或超时
206579 对不起,您的用户信息未通过银行验证,请核实后再试!
206580 银行卡状态异常
206590 交易失败,参数不合法
206591 系统异常
206592 银行系统繁忙,请稍后再试
206593 系统超时
206594 银行处理中,请稍后再试
206599 系统异常
2065F0 渠道交易失败
2065F2 交易失败,未添加白名单
2065F3 签约失败,请稍后再试
2065P0 交易挂起,需要确认
206510 订单信息为空
206511 订单信息有误
206530 业务系统信息为空
206531 业务系统信息有误
206532 业务系统错误
206533 金额超限
206534 查无此交易
206536 与原交易信息不符
206542 扣款成功但交易超过规定支付时间
206564 银行卡余额不足
206567 密码输入次数超限
206581 支付失败,请稍后再试
206583 金额超限次数超过限制,请稍后再试!
206584 单笔金额超限
206585 单日金额超限
206586 单月金额超限
206587 订单信息重复
206588 支付订单信息有误
2015F6 交易失败,此卡未签约
206630 不支持此充值银行
206631 该充值银行网关不存在
206632 不支持此充值类型
206633 商户充值基础信息未配置
206634 不支持此业务类型
206635 入账客户信息不正确
206636 入账分账串信息不正确
206637 该用户未绑定快捷卡
206638 该用户未绑定代扣卡
206639 该用户代扣协议不存在或状态异常
20663A 企业用户或商户不支持快捷充值
20663B 企业用户或商户不支持代扣充值
20663C 手续费金额不得大于等于交易金额
20663D 该充值银行与用户快捷卡不匹配
20663E 充值手续费账户状态不正常
20663F 个人用户仅支持个人网银充值
206640 支付失败
206800 风控信息验证失败
206801 商户接口调用风控受限
206802 用户接口调用风控受限
206803 二级商户接口调用风控受限
直接代扣
207000 交易成功
207002 请求已受理
207003 交易失败
207099 系统异常
207100 请求参数非法
207101 商户无此接口权限
207102 验证签名失败
207103 商户状态异常
207104 用户状态异常
207105 账户状态异常
207106 商户签名未配置
207202 交易订单号重复
207203 账户可用余额不足
207204 商户配置异常
207433 银行卡号与银行不匹配
207434 该银行卡非借记卡
207438 省份地区信息非法
20743F 手机号与已绑定卡记录不匹配
207443 手机号已注册
207448 银行账号无效或不存在
207449 持卡人身份信息或手机号验证不符
20744A 卡号长度有误
20744B 验证超时
20744C 账号应为活期账号
20744D 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
20744E 绑卡请求流水已存在
207501 交易失败(包含未知错误码)
207502 系统未开放或暂时关闭,请稍后再试
207503 交易通讯超时,请发起查询交易
207505 重复签约
207512 重复交易
207519 订单系统错误
207520 持卡人信息为空
207521 持卡人信息有误
207522 持卡人系统错误
207523 卡信息为空
207524 卡信息有误
207525 卡系统错误
207526 卡系统错误
207535 网关不支持签约交易
207538 风险受限
207560 交易失败,请联系发卡银行
207561 对不起,您所输的银行卡号有误,请核实后再试!
207562 交易失败,发卡银行不支持该商户,请更换其它银行卡
207563 卡状态不正确
207565 输入的密码、有效期或CVN2有误,交易失败
207566 持卡人身份信息或手机号输入不正确,验证失败
207568 您的银行卡暂不支持该业务
207571 对不起,你所输的验证码有误,请核实后再试!
207572 签约失败,您尚未在银行柜面或网银页面签约此业务,请去柜面或网银开通,或者拨打发卡行热线电话
207573 对不起,您所输的户名有误,请核实后再试!
207574 对不起,您的证件类型有误,请核实后再试!
207575 对不起,您所输的证件号码有误,请核实后再试!
207576 对不起,您所输的手机号码有误,请核实后再试!
207577 验证码发送失败
207578 验证码超限或超时
207579 对不起,您的用户信息未通过银行验证,请核实后再试!
207580 银行卡状态异常
207590 交易失败,参数不合法
207591 系统异常
207592 银行系统繁忙,请稍后再试
207593 系统超时
207594 银行处理中,请稍后再试
207599 系统异常
2075F0 渠道交易失败
2075F2 交易失败,未添加白名单
2075F3 签约失败,请稍后再试
2075P0 交易挂起,需要确认
207510 订单信息为空
207511 订单信息有误
207530 业务系统信息为空
207531 业务系统信息有误
207532 业务系统错误
207533 金额超限
207534 查无此交易
207536 与原交易信息不符
207542 扣款成功但交易超过规定支付时间
207564 银行卡余额不足
207567 密码输入次数超限
207581 支付失败,请稍后再试
207583 金额超限次数超过限制,请稍后再试!
207584 单笔金额超限
207585 单日金额超限
207586 单月金额超限
207587 订单信息重复
207588 支付订单信息有误
207630 不支持此充值银行
207631 该充值银行网关不存在
207632 不支持此充值类型
207633 商户充值基础信息未配置
207634 不支持此业务类型
207635 入账客户信息不正确
207636 入账分账串信息不正确
207637 该用户未绑定快捷卡
207638 该用户未绑定代扣卡
207639 该用户代扣协议不存在或状态异常
20763A 企业用户或商户不支持快捷充值
20763B 企业用户或商户不支持代扣充值
20763C 手续费金额不得大于等于交易金额
20763D 该充值银行与用户快捷卡不匹配
20763E 充值手续费账户状态不正常
20763F 个人用户仅支持个人网银充值
207640 支付失败
207800 风控信息验证失败
207801 商户接口调用风控受限
207802 用户接口调用风控受限
207803 二级商户接口调用风控受限
扫码支付
208000 交易成功
208002 请求已受理
208003 交易失败
208099 系统异常
208100 请求参数非法
208101 商户无此接口权限
208102 验证签名失败
208103 商户状态异常
208104 用户状态异常
208105 账户状态异常
208106 商户签名未配置
208202 交易订单号重复
208203 账户可用余额不足
208204 商户配置异常
208305 入账客户信息不正确
208306 入账分账串信息不正确
208433 银行卡号与银行不匹配
208434 该银行卡非借记卡
208438 省份地区信息非法
20843F 手机号与已绑定卡记录不匹配
208443 手机号已注册
208448 银行账号无效或不存在
208449 持卡人身份信息或手机号验证不符
20844A 卡号长度有误
20844B 验证超时
20844C 账号应为活期账号
20844D 您的银行卡暂不支持该业务,请更换其他银行卡或咨询发卡银行
20844E 绑卡请求流水已存在
208800 风控信息验证失败
208801 商户接口调用风控受限
208802 用户接口调用风控受限
208803 二级商户接口调用风控受限
交易退款
209000 交易成功
209002 请求已受理
209003 交易失败
209099 系统异常
209100 请求参数非法
209101 商户无此接口权限
209102 验证签名失败
209103 商户状态异常
209104 用户状态异常
209105 账户状态异常
209106 商户签名未配置
209202 交易订单号重复
209203 账户可用余额不足
209204 商户配置异常
209301 当前交易不能申请退款
209302 总退款金额不能大于原交易金额
209303 出账账户号无效
209304 省份地区信息非法
209305 退款受理中或已成功,请勿重复申请
209306 产品信息校验失败
209307 只能对至少1天前的交易进行退款
209308 交易金额不合法
209309 请求太频繁
手续费扣款
210000 交易成功
210002 请求已受理
210003 交易失败
210099 系统异常
210100 请求参数非法
210101 商户无此接口权限
210102 验证签名失败
210103 商户状态异常
210104 用户状态异常
210105 账户状态异常
210106 商户签名未配置
210202 交易订单号重复
210203 账户可用余额不足
210204 商户配置异常
微信公众号支付
211000 交易成功
211002 请求已受理
211003 交易失败
211099 系统异常
211100 请求参数非法
211101 商户无此接口权限
211102 验证签名失败
211103 商户状态异常
211104 用户状态异常
211105 账户状态异常
211106 商户签名未配置
211202 交易订单号重复
211204 商户配置异常
211305 入账客户信息不正确
211306 入账分账串信息不正确
211312 手续费金额不得大于等于交易金额
211314 充值手续费账户状态不正常
211320 免开户支付只支持个人和企业网银
211324 扫码渠道不支持
211800 风控信息验证失败
211801 商户接口调用风控受限
211802 用户接口调用风控受限
211803 二级商户接口调用风控受限
代发
214000 交易成功
214002 请求已受理
214003 交易失败
214099 系统异常
214100 请求参数非法
214101 商户无此接口权限
214102 验证签名失败
214103 商户状态异常
214104 用户状态异常
214105 账户状态异常
214106 商户签名未配置
214202 交易订单号重复
214300 商户出账子账户不存在或状态异常
214301 商户手续费子账户不合法
214302 商户代发配置异常
214303 不支持此代发类型
214304 不支持此银行账户类型
214305 不支持此银行
214306 银行卡号与银行不匹配
214800 风控信息验证失败
214801 商户接口调用风控受限
214802 用户接口调用风控受限
214803 二级商户接口调用风控受限
微信app唤起
216000 交易成功
216002 请求已受理
216003 交易失败
216099 系统异常
216100 请求参数非法
216101 商户无此接口权限
216102 验证签名失败
216103 商户状态异常
216104 用户状态异常
216105 账户状态异常
216106 商户签名未配置
216202 交易订单号重复
216204 商户配置异常
216305 入账客户信息不正确
216306 入账分账串信息不正确
216312 手续费金额不得大于等于交易金额
216314 充值手续费账户状态不正常
216320 免开户支付只支持个人和企业网银
216324 扫码渠道不支持
216800 风控信息验证失败
216801 商户接口调用风控受限
216802 用户接口调用风控受限
216803 二级商户接口调用风控受限
交易状态查询接口
301000 交易成功
301010 记录不存在
301099 系统异常
301100 请求参数非法
301101 商户无此接口权限
301102 验证签名失败
301103 商户状态异常
301106 商户签名未配置
余额查询接口
302000 交易成功
302010 记录不存在
302099 系统异常
302100 请求参数非法
302101 商户无此接口权限
302102 验证签名失败
302103 商户状态异常
302106 商户签名未配置
充值支付对账接口
303000 交易成功
303010 记录不存在
303099 系统异常
303100 请求参数非法
303101 商户无此接口权限
303102 验证签名失败
303103 商户状态异常
303106 商户签名未配置
取现对账接口
304000 交易成功
304010 记录不存在
304099 系统异常
304100 请求参数非法
304101 商户无此接口权限
304102 验证签名失败
304103 商户状态异常
304106 商户签名未配置
转账对账接口
305000 交易成功
305010 记录不存在
305099 系统异常
305100 请求参数非法
305101 商户无此接口权限
305102 验证签名失败
305103 商户状态异常
305106 商户签名未配置