交易类 ====== 充值/支付 --------- 接口功能说明 ~~~~~~~~~~~~ 接口功能说明:用于网银充值/支付,免注册网银支付、快捷支付和代扣支付 - 充值类型 recharge\_type=02020000,个人网银充值 - 充值类型 recharge\_type=02020001,企业网银充值 - 充值类型 recharge\_type=02020002,快捷充值(仅支持个人用户) - 充值类型 recharge\_type=02020003,代扣充值(仅支持个人用户),此类充值 sign\_seq\_id 不能为空 - 充值类型 recharge\_type=02020006,二段式快捷支付,阶段标识和业务请求流水不能为空 - 交易类型 trans\_type=02020100,仅是充值到用户账户 - 交易类型 trans\_type=02020101,包含支付功能,即充值到用户账户后再转账到另一账户,此类交易 in\_cust\_id 和 div\_detail 不能为空 调用方式: - 网银(包括个人与企业):页面调用 - 快捷/代扣:后台调用 应答方式: - 网银(包括个人与企业):同步页面应答、异步应答 - 快捷/代扣:同步后台应答、异步应答 接口类型: - 网银(包括个人与企业):同步+异步 - 快捷/代扣:异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+=====================+===================+============+================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ | 版本号 | 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"} 二级商户号由汇付生成,详见 二级商户录入接口_ | +--------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 银行卡号 | card\_no | 变长 32 位 String | 可选 | 代扣支付使用的卡号,不传时默认使用最新绑定的代扣卡 | +--------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易场景 | trans\_scene | 定长 3 位 String | 可选 | 交易类型为免注册网银支付时,必传 001:投资理财; 002:实物买卖/租赁; 003:虚拟物品购买/购买服务;004:缴费; 005:还款; 006:账户充值 | +--------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易场景小类 | trans\_scene\_sub | 定长 6 位 String | 可选 | 交易类型为免注册网银支付时,必传 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。 | +------------------------+---------------------+-------------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "201", "resp_code": "201000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "201", "resp_code": "201003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 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 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 快捷支付 -------- 接口功能说明 ~~~~~~~~~~~~ 包括开户、绑卡和快捷支付功能 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+------------------+---------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+==================+=====================+============+==================================================================================================================================================================================================================================================+ | 版本号 | 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 位 String | 可选 | 当 dc\_flag 为 C 时,必传 cvv2 | +--------------------+------------------+---------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 贷记卡有效期 | valid\_date | 定长 4 位 String | 可选 | 当 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"} 二级商户号由汇付生成,详见 二级商户录入接口_ | +--------------------+------------------+---------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 变长 256 位 的String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+------------------+---------------------+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +------------------------+-------------------------+---------------------+------------+---------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "206", "resp_code": "206000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "206", "resp_code": "206003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 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 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 直接代扣 -------- 接口功能说明 ~~~~~~~~~~~~ 使用四要素进行直接代扣的功能 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:异步 请求参数列表 ~~~~~~~~~~~~ +------------------------+----------------------+-------------------+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +========================+======================+===================+============+===============================================================================================================================================================================================================================================+ | 版本号 | 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 中请不要包含特殊字符串 3) 必须是外网地址 | +------------------------+----------------------+-------------------+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 商户私有域 | mer\_priv | 变长 120 位 String| 可选 | 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行 Base64 加密后再使用 | +------------------------+----------------------+-------------------+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 扩展域 | extension | 变长 512 位 String| 可选 | 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{"sub\_mer\_cust\_id":"111111111111"}二级商户号由汇付生成,详见 二级商户录入接口_ | +------------------------+----------------------+-------------------+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 变长 256 位 String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +------------------------+----------------------+-------------------+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +------------------------+---------------------+-------------------+------------+------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java cmd_id+resp_code+mer_cust_id+order_date+order_id+platform_seq_id+fee_amt+fee_cust_id+fee_acct_id+mer_priv 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "207", "resp_code": "207000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "207", "resp_code": "207003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 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 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 微信公众号支付 -------------- 接口功能说明 ~~~~~~~~~~~~ 微信公众号支付 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+-------------------+-------------------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+===================+===================+============+===========================================================================================================================================================================================================================+ | 版本号 | 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"}二级商户号由汇付生成,详见 二级商户录入接口_ | +--------------------+-------------------+-------------------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 变长 256 位 String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+-------------------+-------------------+------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。 | +------------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "211", "resp_code": "211000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "211", "resp_code": "211003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 211000 | 交易成功 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211002 | 请求已受理 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211003 | 交易失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211099 | 系统异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211100 | 请求参数非法 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211101 | 商户无此接口权限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211102 | 验证签名失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211103 | 商户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211104 | 用户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211105 | 账户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211106 | 商户签名未配置 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211202 | 交易订单号重复 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211204 | 商户配置异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211305 | 入账客户信息不正确 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211306 | 入账分账串信息不正确 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211312 | 手续费金额不得大于等于交易金额 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211314 | 充值手续费账户状态不正常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211320 | 免开户支付只支持个人和企业网银 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211324 | 扫码渠道不支持 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211800 | 风控信息验证失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211801 | 商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211802 | 用户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 211803 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 扫码支付 -------- 接口功能说明 ~~~~~~~~~~~~ 扫码支付生成二维码订单接口 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+--------------------+-------------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+====================+===================+============+=================================================================================================================================================================================================================================================+ | 版本号 | 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"}二级商户号由汇付生成,详见 二级商户录入接口_ | +--------------------+--------------------+-------------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 变长 256 位 String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+--------------------+-------------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。 | +------------------------+---------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "208", "resp_code": "208000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "208", "resp_code": "208003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 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 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 交易退款 -------- 接口功能说明 ~~~~~~~~~~~~ 用户交易完成后,可用于申请退款 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+------------------+-------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+==================+===================+============+==============================================================================================================================================================================================================================================+ | 版本号 | 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 中请不要包含特殊字符 3) 必须是外网地址 | +--------------------+------------------+-------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 商户私有域 | mer\_priv | 变长 120 位 String| 可选 | 为商户的自定义字段,该字段在交易完成后由本平台原样返回。注意:如参数中包含中文,应对参数进行 Base64 加密后再使用 | +--------------------+------------------+-------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 扩展域 | extension | 变长 512 位 String| 可选 | 用于扩展请求参数若需要进行二级商户号验证,则必传,格式:{"sub\_mer\_cust\_id":"111111111111"} 二级商户号由汇付生成,详见 二级商户录入接口_ | +--------------------+------------------+-------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 变长 256 位 String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+------------------+-------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +------------------------+---------------------+-------------------+------------+------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java cmd_id+resp_code+mer_cust_id+order_date+order_id+biz_trans_id+platform_seq_id+mer_priv 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "209", "resp_code": "209000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "209", "resp_code": "209003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 209000 | 交易成功 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209002 | 请求已受理 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209003 | 交易失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209099 | 系统异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209100 | 请求参数非法 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209101 | 商户无此接口权限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209102 | 验证签名失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209103 | 商户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209104 | 用户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209105 | 账户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209106 | 商户签名未配置 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209202 | 交易订单号重复 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209203 | 账户可用余额不足 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209204 | 商户配置异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209301 | 当前交易不能申请退款 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209302 | 总退款金额不能大于原交易金额 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209303 | 出账账户号无效 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209304 | 省份地区信息非法 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209305 | 退款受理中或已成功,请勿重复申请 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209306 | 产品信息校验失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209307 | 只能对至少1天前的交易进行退款 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209308 | 交易金额不合法 | +------------------------------+----------------------------------------------------------------------------------------------+ | 209309 | 请求太频繁 | +------------------------------+----------------------------------------------------------------------------------------------+ 取现 ---- 接口功能说明 ~~~~~~~~~~~~ 用于本平台下用户取现 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型: - T0取现:异步 - T1取现:同步+异步 请求参数列表 ~~~~~~~~~~~~ +---------------------------+-----------------------+---------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +===========================+=======================+=====================+============+================================================================================================================================================================================================================+ | 版本号 | 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"} 二级商户号由汇付生成,详见 二级商户录入接口_ | +---------------------------+-----------------------+---------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 定长 256 位 的String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +---------------------------+-----------------------+---------------------+------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +---------------------------+-----------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "202", "resp_code": "202000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "202", "resp_code": "202003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 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 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 转账 ---- 接口功能说明 ~~~~~~~~~~~~ 用于商户平台下商户转用户、用户转商户和商户子账户间的转账 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:同步+异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+------------------+-------------------+------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+==================+===================+============+==================================================================================================================================================================================================================+ | 版本号 | 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"}二级商户号由汇付生成,详见 二级商户录入接口_ | +--------------------+------------------+-------------------+------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 签名 | check\_value | 变长 256 位 String| 必须 | 加签规则:MD5+RSA 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+------------------+-------------------+------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +--------------------+------------------+-------------------+------------+--------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "203", "resp_code": "203000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "203", "resp_code": "203003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 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 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ 代发 ---- 接口功能说明 ~~~~~~~~~~~~ 单笔代发接口 调用方式:后台调用 应答方式:同步后台应答、异步应答 接口类型:异步 请求参数列表 ~~~~~~~~~~~~ +--------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------+ | 中文名 | 参数名 | 数据格式 | 是否必须 | 说明 | +====================+===========================================================================================================================================================+===================+============+===========================================================================================================================================+ | 版本号 | 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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值。 | +--------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------+------------+-------------------------------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 位 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\_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 将参数列表的值按从上到下的顺序进行字符串拼接,调用签名函数获得的值 | +------------------------+---------------------+-------------------+------------+------------------------------------------------------------------------------------------------------------------+ 本接口加签拼接顺序: .. code:: java 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 代码示例 ~~~~~~~~ java .. code:: java String result = new String(); HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("https://finance.chinapnr.com/asharp/merchantRequest"); try { List nvps = new ArrayList(); 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(); } 成功响应 .. code:: json 200 { "cmd_id": "214", "resp_code": "214000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 失败响应 .. code:: json 200 { "cmd_id": "214", "resp_code": "214003", "resp_desc": "交易失败", "mer_cust_id" : "6666000000000001", "order_date": "20180327", "order_id": "10000000001", ....... } 接口返回码 ~~~~~~~~~~ +------------------------------+----------------------------------------------------------------------------------------------+ | **返回参数** | **返回描述** | +------------------------------+----------------------------------------------------------------------------------------------+ | 214000 | 交易成功 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214002 | 请求已受理 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214003 | 交易失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214099 | 系统异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214100 | 请求参数非法 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214101 | 商户无此接口权限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214102 | 验证签名失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214103 | 商户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214104 | 用户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214105 | 账户状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214106 | 商户签名未配置 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214202 | 交易订单号重复 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214300 | 商户出账子账户不存在或状态异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214301 | 商户手续费子账户不合法 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214302 | 商户代发配置异常 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214303 | 不支持此代发类型 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214304 | 不支持此银行账户类型 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214305 | 不支持此银行 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214306 | 银行卡号与银行不匹配 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214800 | 风控信息验证失败 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214801 | 商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214802 | 用户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ | 214803 | 二级商户接口调用风控受限 | +------------------------------+----------------------------------------------------------------------------------------------+ .. _二级商户录入接口 : user.html#id79 .. _代扣充值支持银行列表 : appindix.html#id6 .. _取现支持银行列表 : appindix.html#id7