银行接口专题培训

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

银行接口专题培训刘泽湘软通动力Confidential©2009iSoftStoneCorporation.AllRightsReserved.2议程银行接口概述1银行接口平台的介绍及实施3银行接口的功能介绍4银行接口的技术架构2Confidential©2009iSoftStoneCorporation.AllRightsReserved.3银行接口概述银行接口的业务需求银行接口概念Confidential©2009iSoftStoneCorporation.AllRightsReserved.4银行接口概念•银行接口也可以称之为”银企直联”、”银企互联”•所谓“银企直联”,就是集团企业在集团内部建立自己的资金管理系统,并与商业银行共同开发内部资金管理系统及商业银行网银系统之间的数据接口,通过数据接口将企业内部的资金管理系统与商业银行网银系统实现联接,所以被称为“银企直联”。•银行接口为银行和企业之间架起了”桥梁”,主要作用实现企业业务系统同银行核心系统的数据交换。按照双方不同的数据格式进行数据转换。Confidential©2009iSoftStoneCorporation.AllRightsReserved.5银行接口的业务需求功能扩展资金集中管理资金利用率资金风险经营成本….客户需求差异化银企功能满足全面资金需求银企直联需求个性化服务高度集成实时性财务数据银行数据历史数据管理付款业务收款业务Confidential©2009iSoftStoneCorporation.AllRightsReserved.6结总问题与答疑Confidential©2009iSoftStoneCorporation.AllRightsReserved.7议程银行接口概述1银行接口平台的介绍及实施3银行接口的功能介绍4银行接口的技术架构2Confidential©2009iSoftStoneCorporation.AllRightsReserved.8银行接口技术架构银行接口数据处理方式银行接口技术实现模式银行接口单元功能测试银行接口逻辑结构银行接口发布及升级Confidential©2009iSoftStoneCorporation.AllRightsReserved.9银行接口逻辑结构企业银行前置机银企接口银行结算系统Confidential©2009iSoftStoneCorporation.AllRightsReserved.10银行接口技术实现模式---分层•总体来讲,银行接口定义为三个层次•第一层是API层,提供给外部使用系统调用的接口。银行提供的服务功能,业务数据对象都在此定义;该层屏蔽了各个银行之间的差异,使资金管理系统很容易的完成对多家银行的对接,减少了业务系统的开发难度•第二层是接口管理层,实现服务的管理、事件通知、自动任务管理,以及全局性的基础功能等等;•第三层是SPI,定义了对银行接口的实现包的要求。该层主要负责将资金管理系统发出的请求封装为各商业银行规定的数据报文,并将请求报文发送到银行前置机指定端口上,等银行处理完毕后,接收从前置返回的银行响应信息并进行解析,传递给资金管理系统。Confidential©2009iSoftStoneCorporation.AllRightsReserved.11银行接口技术实现模式---分层Confidential©2009iSoftStoneCorporation.AllRightsReserved.12银行接口技术实现模式---分层第二层是接口管理层,实现服务的管理、事件通知、自动任务管理,以及全局性的基础功能等InitialBankServiceBankServiceManagerConfigManagerBankServiceConfigInfoICBCBankServiceFactoryABCBankServiceFactoryXXXBankServiceFactoryICBCBankServiceABCBankServiceXXXBankServiceBankServiceFactoryICBCTask、EventABCTask、EventXXXTask、EventConfidential©2009iSoftStoneCorporation.AllRightsReserved.13银行接口技术实现模式---通讯方式银行接口支持三种通讯方式http通讯:采用apache的公共包,由于工行对http的特殊要求,我们进行了特殊的修改,但是它兼容org的包,因此在其他系统使用http通讯的时候必须使用接口提供的包,否则在发送银行指令的时候会出现错。中行、工行、民生、交行、北京银行………sock通讯:农行、建行、招商银行、中信银行………ftp通讯:境外银行的直联是主要通过ftp方式进行数据传输渣打、花旗、荷兰、汇丰、中银香港…………Confidential©2009iSoftStoneCorporation.AllRightsReserved.14银行接口技术实现模式---特殊处理银行接口支持三种数据格式XML格式:通过接口把传送的数据按照银行提供的接口文档定义,转化为各商业银行可以识别的XML报文格式,目前使用XML报文格式的银行有:中行、工行、民生、北京银行、中信、招行、民生、光大、浦发字符串格式:按照银行文档中定义的每个字段长度进行字符串拼接,以确保银行可以正确的截取每一个字段信息,使用的银行有:建行、华夏、深发展XML+字符串格式:农行、交行Confidential©2009iSoftStoneCorporation.AllRightsReserved.15银行接口技术实现模式---特殊处理日志管理当前银行接口日志不与任何外部接口程序关联,属于单独初始化,单独输出。接口的初始化调整为,首先读取配置文件bank_service_config.xml,然后初始化日志。银行接口日志分两种,一种是log4j,另一种是System.out输出形式。在配置文件文件中可以指定日志的采用形式。例如:log_setlogClassImplcom.iss.itreasury.bs.log.SystemOutImpl/logClassImpl/log_set上述配置采用了SystemOutImpl.若没有配置,银行接口默认将采用log4j的形式输出日志。Confidential©2009iSoftStoneCorporation.AllRightsReserved.16银行接口技术实现模式---特殊处理支付指令管理发送支付指令的时候指令id必须唯一。在指令id文件中存放已经使用的最大的id信息,每次在内存中存放20个连续的id,用完以后自动追加20个在内存中同时在文件中更新。每次服务重起的时候自动加载文件中的id信息。文件名称:package_id.dat中间指令的处理方式:属于中间指令的为:支付处理中、支付末知对于处于中间状态的指令,系统会记录指令信息,然后再自动到银行去同步指令信息。对于超过48小时的指令不在同步指令状态。同步的时间计划为:2,5,15,306次,6045次文件名称:virement_instruction.datConfidential©2009iSoftStoneCorporation.AllRightsReserved.17银行接口技术实现模式---特殊处理银行返回code管理成功、失败、未知、处理中、一段时间后置失败以上状态,是根据银行返回的code进行判断。目前的对于银行返回的code信息将会在配置文件进行处理。配置文件如下格式:ret_codecode0/code银行返回codecomment提交成功,等待银行处理/comment返回信息statustype3/statustype通过返回信息翻译的处理状态/ret_code翻译后的指令状态字典:1:成功、2:失败、3:处理中、4:未知5.一段时间内为未知,超过设定时间,则设为失败Confidential©2009iSoftStoneCorporation.AllRightsReserved.18银行接口数据处理流程开始数据校验数据组包发送数据接收数据解析数据构造结果对象结束参数异常组包异常传输异常银行返回异常Confidential©2009iSoftStoneCorporation.AllRightsReserved.19数据发送及接收流程银行银行安全服务器WebServer主机系统公网/专线Internet/DDNHTTPSHTTPS企业端企业安全服务器(前置机)银企互联系统(BankInterface)关系数据库资金管理系统Confidential©2009iSoftStoneCorporation.AllRightsReserved.20功能测试功能测试是接口中最重要的环节,它直接影响到接口的可用情况和风险控制情况功能测试注意点的1、对于组包方式,是否符合银行需求的格式和内容2、在传输过程中,请求包头传送的参数是否和银行要求的一致3、银行文档中的必输项和非必输项以及字段的最大长度,都要进行测试4、银行在正确情况下会返回什么样的状态码和描述信息5、银行在出错情况下会返回什么样的状态码和描述信息6、确定银行返回的错误代码和错误信息是否一致并且唯一7、对于转账支付类功能,必须确定银行返回的code哪些表示支付成功?哪些表示支付失败?哪些为支付中间状态银行接口单元功能测试Confidential©2009iSoftStoneCorporation.AllRightsReserved.21银行接口发布接口发布提供bank_service_api.jar和bank_service_sp_xxx.jar(具体银行接口)提供每一家银行各自的配置文件提供支持接口包的第三方包,如:bs_httpclient.jar、jakarta-oro-2.0.8.jar提供接口整体配置文件:bank_service_config.xml,此配置可以根据每一家银行的特性进行设置提供接口实施和发布文档Confidential©2009iSoftStoneCorporation.AllRightsReserved.22银行接口升级由于银行系统升级,需要对银行接口同步进行升级接口升级特点:向下兼容、并行使用、弃前用新向下兼容型:随着客户业务的增加,银行需要不断提供新的功能供企业使用但在提供直联的接口时,对于常用的功能也不会进行改造,只是在原有的接口功能中添加新的功能。使用的银行:农行、交行、浦发银行、北京银行、华夏银行、光大银行、民生银行、兴业银行。升级方式:对于向下兼容型的银行接口,升级时只需要更新银行接口API和接口实现两个jar包即可。Confidential©2009iSoftStoneCorporation.AllRightsReserved.23银行接口升级并行使用型:随着客户业务的增加,银行需要不断提供新的功能供企业使用。但由于银行的银企直联系统相当不稳定,银行考虑再三后,决定使用新的直联方式,新的报文格式。在新的接口文档中添加常用功能和新的功能。同时会保留原有接口使用模式,使两种接口类型并行运行。使用的银行:工行、建行、招商银行、中信银行、深发展银行升级方式:对于并行使用型的银行接口,升级时只需要更新银行接口API和接口实现两个jar包,可能不同银行还需要更新各自己银行的前置机软件程序,来达到配合新接口使用的目的。Confidential©2009iSoftStoneCorporation.AllRightsReserved.24银行接口升级弃前用新型:随着客户业务的增加,银行需要不断提供新的功能供企业使用。但由于银行的银企直联系统相当不稳定,银行考虑再三后,决定使用新的直联方式,新的报文格式。在新的接口文档中添加常用功能和新的功能。将不会保留原有接口使用模式,使直联接口只能在一种模式下运行,此种情况会造成所有使用到的对应银行的项目全部升级,且可能会影

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功