兴业银行银企直联对接记录及SDK

年前因为业务需要,接触了兴业银行的银企直联,因为感兴趣,所以大致搜了下国内一些银行,发现目前银行银企直联模式新接入的用户都只有前置代理机这一途径,所以兴业银行也不例外。

可在此处查看兴业银行的接口文档,该处包含了V4.0.0和V4.0.4版本两份文档。至于前置机安装以及证书之类的,此处就不提供了,如果你有接入的业务需要,兴业银行的相关工作人员会提供相关资料,如下图。

兴业银行银企直联对接记录及SDK
对于企业而言,一般来说,均只需银企直联的支付(对公、对私、行内、行外)功能,我们也不例外,然后这里就牵扯出了一些国家金融监控风险上的问题。就企业账号而言,分基本账户和一般账户,基本账户是每个企业只能有一个,一般账户则可以有多个。因为银企直联并不像网银那样,会经过国家金融监控,所以受国家政策影响,银企直联进行对私支付可能会存在金融风险。当然这风险也与企业账户类型及银行所在地有关,通过基本账户进行支付的话,不存在金融风险;一般账户的话,则与银行所在地有关,上海、北京之类的一线城市国家放开了政策,允许一般账户进行支付,其它地方则任然受政策影响。

兴业银行前置代理机会记录所有的请求与响应内容,所以本质上讲,请求程序无需特意记录每次的请求与响应内容。还有请不要测试账号密码错误的情况,因为如果错了N次之后,该账号就会被永久封停!!!你只能通过兴业银行的相关人员重新申请一个新的账号。

兴业银行的支付一般来讲,只需要通过 下的 接口即可。当然 下的 也可以进行支付,但按3.7.1的说明,其只可以进行对公转账(实际测试时发现也可以对私转账)。需注意的是,支付时会有付款费率问题,不同地区的费率不同,支付接口只会返回该笔请求的支付情况,当支付成功时,其对应的手续费是不会在响应中进行体现,所以只能通过 来确定对应的手续费,如果支付时实时响应支付结果为,那么你可以立刻调用3.4.2接口进行流水查询,否则的话,你需要通过其它途径(比如定时、或者人工触发)来进行流水查询。
2019-03-18补充
按兴业银行相关人员回复并不能获取手续费,手续费只能通过来获取,手续费一般来说是和对应流水紧联在一起的,那这个接口存在还有何意义其还返回了一个集合数据!!!
2019-04-11补充
还是有必要,如果通过进行查询,因为不唯一的话,就会进行支付,所以为了避免误支付,还是用进行状态查询比较靠谱。
2019-05-16补充
兴业银行的支付是可以支付到信用卡的,不需要调用其它接口。

一般情况下,企业是不会允许当业务程序发起支付请求时,银行就立刻将资金转账到对应目标账户,正常流程是先发送支付请求到网银,然后再由对应的审核人员在网银端确认无误后才进行支付,也就是上图中“网银审核”那块需要在前置代理机上进行勾选。但这时又会牵扯出一个问题,就是银企直联支付的账号,如果该账号对应的转账流程为一级模式,那么不管你是否勾选了“网银审核”,支付请求均会被立刻执行,而不是,只有当账号对应的转账流程为二级模式时,才会响应,即等待网银审核。账号对应的转账流程为几级模式这需要由兴业银行的人员确认,测试环境的网银审核是不公开给用户的,如果需要测试该流程,需要兴业银行的人员帮忙进行审核。

一般情况下,我们转账都不会设置转账日期,如果输入了转账执行日期,那么网银审批需在此日期(含当日)之前进行审核,如果未能在该日期结束之前审批,那么该笔支付状态会被转为,即指令过期,此时你需要重新发起一笔支付请求。

上面都是支付相关的一些注意点,为了方便接入,所以个人还封装了兴业银行银企直联的SDK,该项目开源在Github上,支持及,该项目依赖第三方类库,具体项目地址见此处,你也可以在此处的查看目前SDK都已经封装了哪些接口。默认请求时会设置为密码加密,该部分已参考兴业银行提供的,按同样的逻辑封装了NET版本,然后该类的构造函数中,参数用于解决可能存在的服务端与客户端默认语言环境不一致的问题,默认为null,代表使用当前系统语言编码方式,即与java一致,采用。使用例子可见此处代码。对于某些支付请求不能实时响应的问题,可以通过另一个开源项目LongIntervalRetries来处理定时调用的问题。

最后由于测试账号权限限制问题,目前完全测试过的只有, 、、 ,所以如果你在使用中发现SDK错误,你可以在Github上建立Issue,或者在此处留言。

来源:娃都会打酱油了

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年1月11日
下一篇 2019年1月11日

相关推荐