网银类接口 ========== 网银支付( WEB 版)接口 ------------------------ 功能说明 ~~~~~~~~~~~~~~~~ 用于个人用户、企业用户和个体户进行网银支付。 调用方式:页面浏览器 请求参数 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | **参数中文名称** | **参数名称** | **数据格式** | **是否必须** | **说明** | +====================+======================+====================+================+=================================================================================================================================+ | 版本号 | version | 定长2位String | 必须 | 目前固定为10 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 消息类型 | cmd\_id | 定长3位String | 必须 | 每一种消息类型代表一种交易,此处为204 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 商户客户号 | mer\_cust\_id | 定长16位String | 必须 | 由汇付生成,商户的唯一性标识 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 用户客户号 | user\_cust\_id | 定长16位String | 可选 | 由汇付生成,用户的唯一性标识 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 订单号 | order\_id | 变长20位String | 必须 | 由商户生成,必须保证唯一, 20位内的字母或数字组合 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 订单日期 | order\_date | 定长8位String | 必须 | 格式为YYYYMMDD,例如:20160307 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 支付网关号 | gate\_id | 定长2位的String | 可选 | 如果不填,支付时会先调到汇付银行选择页面,用户选择银行后,再跳转银行页面 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 交易金额 | trans\_amt | 变长14位String | 必须 | 金额格式保留两位小数 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 页面返回URL | ret\_url | 变长128位String | 可选 | 前台异步通知商户网银支付结果,前台页面返回 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 商户后台应答地址 | bg\_ret\_url | 变长128位String | 必须 | 通过后台异步通知商户网银支付结果 注意: 1) 使用时不要包含中文 2) 必须是外网地址 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 商户私有域 | mer\_priv | 变长120位String | 可选 | 为商户的自定义字段,该字段在交易完成后由本平台原样返回 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 扩展域 | extension | 变长512位String | 可选 | 用于扩展请求参数 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 分账账户串 | div\_detail | | 必须 | 数据格式:[{"div\_cust\_id ":"6000060000009547","div\_acct\_id":"MDT000001","div\_amt":"1.00",div\_freeze\_fg:” 00000100”}] | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 二级商户号 | secondary\_mer\_id | 定长10位的String | 可选 | 对于开启二级商户模式的商户,必须输入其配下的二级商户号 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ | 商品名称 | goods\_desc | 变长12位String | 可选 | 默认:通用型产品 | +--------------------+----------------------+--------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------+ 分账账户串(div\_detail )内容: +-------------------+-------------------+------------------+-------------+-----------------------------------------------------------+ | **参数中文名称** | **参数名称** | **数据格式** | **是否必须**| **说明** | +===================+===================+==================+=============+===========================================================+ | 分账客户号 | divCustId | 变长16位String | 必须 | div\_detail参数下的二级参数 分账客户号 | +-------------------+-------------------+------------------+-------------+-----------------------------------------------------------+ | 分账账户号 | divAcctId | 变长9位String | 必须 | div\_detail参数下的二级参数 分账账户号 | +-------------------+-------------------+------------------+-------------+-----------------------------------------------------------+ | 分账金额 | divAmt | 变长14位String | 必须 | div\_detail参数下的二级参数 分账金额,保留两位小数 | +-------------------+-------------------+------------------+-------------+-----------------------------------------------------------+ | 是否冻结标志 | divFreezeFg | 定长2位String | 必须 | div\_detail参数下的二级参数 冻结标志 01:冻结; 00:不冻结 | +-------------------+-------------------+------------------+-------------+-----------------------------------------------------------+ 返回参数 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | **参数中文名称** | **参数名称** | **数据格式** | **是否必须** | **说明** | +========================+=====================+=====================+================+===================================================================================+ | 消息类型 | cmd\_id | 定长3位String | 必须 | 每一种消息类型代表一种交易,此处为204 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 应答返回码 | resp\_code | 定长6位String | 必须 | 204000--调用成功,其他见返回码 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 应答返回描述 | resp\_desc | 变长String | 必须 | 返回码的对应中文描述 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 商户客户号 | mer\_cust\_id | 定长16位String | 必须 | 由汇付生成,商户的唯一性标识 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 用户客户号 | user\_cust\_id | 定长16位String | 可选 | 由汇付生成,用户的唯一性标识 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 订单号 | order\_id | 变长20位String | 必须 | 由商户生成,必须保证唯一, 20位内的字母或数字组合 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 订单日期 | order\_date | 定长8位String | 必须 | 格式为YYYYMMDD,例如:20160307 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 交易金额 | trans\_amt | 变长14位的String | 必须 | 金额格式保留两位小数 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 本平台交易唯一标识号 | platform\_seq\_id | 定长18位String | 必须 | 组成规则:8位本平台日期+ 10位系统流水号 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 商户后台应答地址 | bg\_ret\_url | 变长128位的String | 必须 | 通过后台异步通知商户网银支付结果 注意: 1) 使用时不要包含中文 2) 必须是外网地址 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 页面返回URL | ret\_url | 变长128位String | 可选 | 前台异步通知商户网银支付结果,前台页面返回 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 商户私有域 | mer\_priv | 变长120位的String | 可选 | 为商户的自定义字段,该字段在交易完成后由本平台原样返回 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 扩展域 | extension | 变长512位的String | 可选 | 用于扩展请求参数 | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ | 分账账户串 | div\_detail | String | 必须 | | +------------------------+---------------------+---------------------+----------------+-----------------------------------------------------------------------------------+ 返回码 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +-----------------------------------------------+------------------------------------------------------+ |**返回码** |**返回描述** | +-----------------------------------------------+------------------------------------------------------+ | 204000 | 交易成功 | +-----------------------------------------------+------------------------------------------------------+ | 204002 | 请求已受理 | +-----------------------------------------------+------------------------------------------------------+ | 204003 | 交易失败 | +-----------------------------------------------+------------------------------------------------------+ | 204098 | 系统超时 | +-----------------------------------------------+------------------------------------------------------+ | 204099 | 系统异常 | +-----------------------------------------------+------------------------------------------------------+ | 204100 | 请求参数非法 | +-----------------------------------------------+------------------------------------------------------+ | 204101 | 商户无此接口权限 | +-----------------------------------------------+------------------------------------------------------+ | 204102 | 验证签名失败 | +-----------------------------------------------+------------------------------------------------------+ | 204103 | 商户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 204104 | 用户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 204105 | 账户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 204107 | 消息类型与签名内容不一致 | +-----------------------------------------------+------------------------------------------------------+ | 204108 | 商户客户号与签名内容不一致 | +-----------------------------------------------+------------------------------------------------------+ | 204109 | 版本号与签名内容不一致 | +-----------------------------------------------+------------------------------------------------------+ | 204110 | 商户号不存在 | +-----------------------------------------------+------------------------------------------------------+ | 204111 | 用户客户号不存在 | +-----------------------------------------------+------------------------------------------------------+ | 204201 | 页面数据被篡改 | +-----------------------------------------------+------------------------------------------------------+ | 204202 | 交易订单号重复 | +-----------------------------------------------+------------------------------------------------------+ | 204215 | 请补录身份信息 | +-----------------------------------------------+------------------------------------------------------+ | 204300 | 不支持此支付银行 | +-----------------------------------------------+------------------------------------------------------+ | 204303 | 商户支付基础信息未配置 | +-----------------------------------------------+------------------------------------------------------+ | 204314 | 支付手续费账户状态不正常 | +-----------------------------------------------+------------------------------------------------------+ | 204721 | 分账串内容不能超过五个 | +-----------------------------------------------+------------------------------------------------------+ | 204722 | 分账串部分字段为空 | +-----------------------------------------------+------------------------------------------------------+ | 204723 | 分账串金额格式错误 | +-----------------------------------------------+------------------------------------------------------+ | 204724 | 分账串累计金额不等于订单金额 | +-----------------------------------------------+------------------------------------------------------+ | 204725 | 分账信息用户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 204726 | 分账信息账户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 204727 | 分账信息异常 | +-----------------------------------------------+------------------------------------------------------+ | 204728 | 分账串账户信息格式错误 | +-----------------------------------------------+------------------------------------------------------+ | 204729 | 分账串账户异常 | +-----------------------------------------------+------------------------------------------------------+ | 204733 | 分账支付明细表处理失败 | +-----------------------------------------------+------------------------------------------------------+ | 204734 | 该商户客户号网银支付网关号未配置 | +-----------------------------------------------+------------------------------------------------------+ | 204737 | 支付明细表处理失败 | +-----------------------------------------------+------------------------------------------------------+ | 204803 | 支付交易受限,限额限次或其他 | +-----------------------------------------------+------------------------------------------------------+ | 204804 | 商户超限额或限次 | +-----------------------------------------------+------------------------------------------------------+ | 204805 | 商户未开通该功能权限 | +-----------------------------------------------+------------------------------------------------------+ | 204806 | 商户交易限制 | +-----------------------------------------------+------------------------------------------------------+ | 204324 | 网银支付用户不能为商户本身 | +-----------------------------------------------+------------------------------------------------------+ 代码示例 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ java .. code:: java String valueObj = "{ "version": "10", "cmd_id": "204", "mer_cust_id": "6666000000002619", "user_cust_id": "6666000000005942", "order_id": "20000008404", "order_date": "20170830", "gate_id": "09", "trans_amt": "21.03", "ret_url": "", "bg_ret_url": "http://192.168.0.74:8001/npayCallBack/asyncHandle.json", "mer_priv": "et", "extension": "..n", "div_detail": "[{\"divCustId\":\"6666000000002619\",\"divAcctId\":\"2744\",\"divAmt\":\"11.03\",\"divFreezeFg\":\"00\"},{\"divCustId\":\"6666000000002962\",\"divAcctId\":\"3133\",\"divAmt\":\"10.00\",\"divFreezeFg\":\"00\"}]" }"; String testUrl = "http://192.168.3.170:8083/npay/merchantRequest"; String checkValue = sign(valueObj); String cmdId = "204"; String merCustId = "6666000000026086"; String version = "10"; httpServletResponse.setContentType("application/x-www-form-urlencoded; charset=UTF-8"); PrintWriter out = httpServletResponse.getWriter(); out.println(); out.println(""); out.println(""); out.println(" sender"); out.println(" "); out.println("
"); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(" "); out.println(""); out.flush(); out.close(); .. 成功响应: .. code:: json 200 { "cmd_id": "204", "resp_code": "204000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000026086", "order_date": "20180327", "order_id": "10000000001", ....... } .. 失败响应: .. code:: json 200 { "cmd_id": "204", "resp_code": "204099", "resp_desc": "交易失败", "mer_cust_id" : "6666000000026086", "order_date": "20180327", "order_id": "10000000001", ....... } 页面展示 ~~~~~~~~~~~~~~~~ **汇付银行选择页面** .. image:: _static/images/online_1.png 注:如果请求参数指定了网关号,则不会跳转这个页面 网银充值接口 ---------------- 功能说明 ~~~~~~~~~~~~~~~~ 该接口实现网银充值。 调用方式:页面浏览器 请求参数 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | **参数中文名称** | **参数名称** | **数据格式** | **是否必须** | **说明** | +====================+=====================+===================+================+=======================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ | 版本号 | version | 定长2位String | 必须 | 目前固定为10 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 消息类型 | cmd\_id | 定长3位String | 必须 | 每一种消息类型代表一种交易,此处为847 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 商户客户号 | mer\_cust\_id | 定长16位String | 必须 | 由汇付生成,商户的唯一性标识 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 用户客户号 | user\_cust\_id | 定长16位String | 可选 | 由汇付生成,用户的唯一性标识 交易类型为免注册网银支付时,非必传 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 订单日期 | order\_date | 定长8位String | 必须 | 格式为YYYYMMDD,例如:20160307 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 订单号 | order\_id | 变长20位String | 必须 | 由商户生成,必须保证唯一,20位内数字或字母的组合 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 充值类型 | recharge\_type | 定长8位String | 必须 | 02020000: 个人网银 ; 02020001: 企业网银 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易类型 | trans\_type | 定长8位String | 必须 | 02020100:充值 ;02020102:免注册网银支付 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易金额 | trans\_amt | 变长14位String | 必须 | 交易金额,格式为###.00 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 开户银行代号 | bank\_id | 变长8位String | 必传 | | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 借贷标记 | dc\_flag | 定长1位String | 必传 | D--借记 C--贷记 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 商户前台应答地址 | ret\_url | 变长128位String | 必须 | 交易完成后,本平台系统把交易结果通过页面方式,发送到该地址上 注意: 1) URL应使用UTF-8字符集URLEncode编码后传入; 2)URL中请不要包含特殊字符 3) 必须是外网地址 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 商户后台应答地址 | bg\_ret\_url | 变长128位String | 必须 | 通过后台异步通知,商户应在应答接收的响应中输出RECV\_ORD\_ID字样的字符串,表明商户已经收到该笔交易结果。 注意: 1) URL应使用UTF-8字符集URLEncode编码后传入 2)URL中请不要包含特殊字符 3) 必须是外网地址 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 商户私有域 | mer\_priv | 变长120位String | 可选 | 为商户的自定义字段,该字段在交易完成后由本平台原样返回。 注意:如参数中包含中文,应对参数进行Base64加密后再使用。 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 扩展域 | extension | 变长512位String | 可选 | 用于扩展请求参数 若需要进行二级商户号验证,则必传,格式:{“sub\_mer\_cust\_id”: “111111111111”} 二级商户号由汇付生成,详见4.2.13.二级商户号录入接口 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易场景 | trans\_scene | 定长3位 | 可选 | 交易类型为免注册网银支付时,必传 001:投资理财 002:实物买卖/租赁 003:虚拟物品购买/购买服务 004:缴费 005:还款 006:账户充值 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易场景小类 | trans\_scene\_sub | 定长6位 | 可选 | 交易类型为免注册网银支付时,必传 001001:定期 001002:活期 002001:数码及家用电器 002002:家具建材 002003:生活用品(含:服饰、美容、箱包、玩具、图书/音像、食品等) 002004:珠宝/古玩/贵金属/邮币卡 002005:医药 003001:游戏点卡 003002:电话费 003003:储值卡 003004:服务(含:旅游、美容、按摩、入场消费的美食团购等) 004001:公共事业 004002:手机话费 004003:教育 004004:房屋租赁/物业费 005001:到期还款 005002:提前还款 005003:预期还款 005004:活期赎回 006001:其他 | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 二级商户号 | secondary\_merid | 变长12位 String | 可选 | | +--------------------+---------------------+-------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 返回参数 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | **参数中文名称** | **参数名称** | **数据格式** | **是否必须** | **说明** | +========================+=====================+===================+================+=============================================================================================================================================================+ | 消息类型 | cmd\_id | 变长String | 必须 | 每一种消息类型代表一种交易,此处为(网银支付851,、\ **网银充值847**\ ) | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 应答返回码 | resp\_code | 定长6位String | 必须 | 847000--调用成功,其他见:返回码表 | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 应答返回描述 | 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 | 可选 | | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 充值类型 | recharge\_type | 定长8位String | 可选 | 02020000: 个人网银 02020001: 企业网银 | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 交易金额 | trans\_amt | 变长14位String | 必须 | 交易金额,格式为###.00 | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 开户银行代号 | bank\_id | 变长8位String | 可选 | 个人/企业网银充值必传 快捷/代扣充值非必传,可为空 | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 借贷标记 | dc\_flag | 定长1位String | 可选 | 个人/企业网银充值必传 快捷/代扣充值非必传,可为空 D--借记 C--贷记 | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 手续费金额 | 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 | 可选 | 用于扩展请求参数 | +------------------------+---------------------+-------------------+----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+ 返回码 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +-----------------------------------------------+------------------------------------------------------+ |**返回码** |**返回描述** | +-----------------------------------------------+------------------------------------------------------+ | 847000 | 交易成功 | +-----------------------------------------------+------------------------------------------------------+ | 847002 | 请求已受理 | +-----------------------------------------------+------------------------------------------------------+ | 847003 | 交易失败 | +-----------------------------------------------+------------------------------------------------------+ | 847099 | 系统异常 | +-----------------------------------------------+------------------------------------------------------+ | 847100 | 请求参数非法 | +-----------------------------------------------+------------------------------------------------------+ | 847101 | 商户无此接口权限 | +-----------------------------------------------+------------------------------------------------------+ | 847102 | 验证签名失败 | +-----------------------------------------------+------------------------------------------------------+ | 847103 | 商户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 847104 | 用户状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 847107 | 消息类型与签名内容不一致 | +-----------------------------------------------+------------------------------------------------------+ | 847108 | 商户客户号与签名内容不一致 | +-----------------------------------------------+------------------------------------------------------+ | 847109 | 版本号与签名内容不一致 | +-----------------------------------------------+------------------------------------------------------+ | 847110 | 商户号不存在 | +-----------------------------------------------+------------------------------------------------------+ | 847202 | 交易订单号重复 | +-----------------------------------------------+------------------------------------------------------+ | 847204 | 商户配置异常 | +-----------------------------------------------+------------------------------------------------------+ | 847301 | 该充值银行网关不存在 | +-----------------------------------------------+------------------------------------------------------+ | 847303 | 商户支付基础信息未配置 | +-----------------------------------------------+------------------------------------------------------+ | 847305 | 入账客户信息不正确 | +-----------------------------------------------+------------------------------------------------------+ | 847306 | 入账分账串信息不正确 | +-----------------------------------------------+------------------------------------------------------+ | 847314 | 支付手续费账户状态不正常 | +-----------------------------------------------+------------------------------------------------------+ | 847321 | 支付手续费未配置 | +-----------------------------------------------+------------------------------------------------------+ | 847322 | 充值失败 | +-----------------------------------------------+------------------------------------------------------+ | 847329 | 理财账户不允许进行支付,分账和作为手续费! | +-----------------------------------------------+------------------------------------------------------+ | 847733 | 分账支付明细处理失败 | +-----------------------------------------------+------------------------------------------------------+ | 847737 | 支付明细处理失败 | +-----------------------------------------------+------------------------------------------------------+ | 847748 | 二级商户号不存在 | +-----------------------------------------------+------------------------------------------------------+ | 847749 | 二级商户号状态异常 | +-----------------------------------------------+------------------------------------------------------+ | 847315 | 手续费金额不得大于等于交易金额 | +-----------------------------------------------+------------------------------------------------------+ 代码示例 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ java .. code:: java String valueObj = "{ "version": "10", "cmd_id": "847", "mer_cust_id": "6666000000026086", "user_cust_id": "6666000000030895", "order_date": "20180816", "order_id": "2018081615344454", "open_id": "3", "app_id": "01050000", "good_tag": "D", "raw_flag": "6232511231322345", "trans_amt": "93", "in_cust_id": "", "divCustId": "", "divFreezeFg": "", "divAcctId": "", "in_acct_id": "", "divAmt": "", "biz_trans_id": "", "goods_desc": "", "ret_url": "", "bg_ret_url": "http://192.168.0.74:8001/npayCallBack/asyncHandle.json", "mer_priv": "test_merpriv", "extension": "test_extension" }"; String testUrl = "http://192.168.3.170:8083/npay/merchantRequest"; String checkValue = sign(valueObj); String cmdId = "847"; String merCustId = "6666000000026086"; String version = "10"; String contentType = "application/x-www-form-urlencoded"; String charset = "UTF-8"; String postStr = "cmd_id=" + cmdId + "&version=" + version + "&mer_cust_id=" + merCustId + "&check_value=" + checkValue; jodd.http.HttpRequest httpRequest = jodd.http.HttpRequest.post(testUrl).charset(charset); jodd.http.HttpResponse httpResponse = httpRequest.contentType(contentType).body(postStr).send(); String body = httpResponse.bodyText(); String resultObj = parseResult(body);//解密 .. 成功响应: .. code:: json 200 { "cmd_id": "847", "resp_code": "847000", "resp_desc": "交易成功", "mer_cust_id" : "6666000000026086", "order_date": "20180327", "order_id": "10000000001", ....... } .. 失败响应: .. code:: json 200 { "cmd_id": "847", "resp_code": "847099", "resp_desc": "交易失败", "mer_cust_id" : "6666000000026086", "order_date": "20180327", "order_id": "10000000001", ....... } ..