1. 背景
公司需要调用银企互联接口实现财务操作的自动化,要知道银行接口是非常难以调试的,幸好从网上找到了《 Mr方de银企互联知识分享》系列文章,得以简洁快速的搞定项目,前人栽树后人乘凉,在此详细总结下。
2. 业务流程
要申请银企互联接口,得先向工行网点提交申请,具体需要什么材料可以根据银行要求提供即可,这方面的工作一般也不需要我们开发人员去办理。
申请通过后,工行会给一些东西,这里我统一称之为“凭证”,也就是说我们的程序通过凭证调用工行银企互联接口。
貌似凭证种类挺多,我的凭证里面包括:公司名称、公司证书ID、一个U盾,参考号和授权码(用来往U盾中下载证书)、还有一个算法提示(此处是RSA1024)。上面这些信息中U盾是实物,剩下的都是银行工作人员打印出来的一张明白纸上写的。
3. 开发流程
第一步,通过NC将证书下载到U盾,NC是工行银企互联的一个工具。
该步骤我的理解是,U盾只是一个载体,具体证书还是用参考号和授权码换取后下载到U盾中的。
第二步,需要配置并启动NC。
NC相当于一个中间程序,我们的程序通过NC与工行核心服务器交互。
第三步,需要部署银企互联的中间件,这样我们就可以直接调用中间件接口(WebService)来访问银企互联,而不用从头自己封装了。
水平高的完全可以不用中间件自己封装,简单一些需求比如查询对账,也可以使用中间件来实现,再次要感谢Mr方老师的中间件,不然要自己写确实很费劲啊。
注意中间件是.net的webservice,需要部署到IIS(相当于Java里面的Tomcat)上运行,这块如果没玩过.net的也没事,直接按照步骤操作即可。
第四步,就是根据接口文档,实现具体的接口代码。
参考示例代码,直接实现具体逻辑即可。