农行专线ERP接口三期开发手册0730.docx
《农行专线ERP接口三期开发手册0730.docx》由会员分享,可在线阅读,更多相关《农行专线ERP接口三期开发手册0730.docx(179页珍藏版)》请在冰豆网上搜索。
![农行专线ERP接口三期开发手册0730.docx](https://file1.bdocx.com/fileroot1/2023-2/4/c9f15f08-13d2-48e8-8895-9fd5274cc04f/c9f15f08-13d2-48e8-8895-9fd5274cc04f1.gif)
农行专线ERP接口三期开发手册0730
企业银行平台
ERP接口(三期)开发手册
中国农业银行软件开发中心
文档管理信息
编号PP/CME/
项目企业银行平台
类别企业银行/项目文档
密级内部
路径企业银行/ERP
文档修订记录
日期
版本
描述信息
作者
2009-5-8
初稿。
整理一、二期仍继续沿用的交易接口
张峰
2009-5-26
增加2281,删除1908中代理支付相关节点
张峰
2009-6-4
增加C400交易,详细通知(010)
张峰
2009-6-26
增加C317、2210、2212、2221、C320、C321、2225、2234
张峰
2009-7-16
增加25J7、25M9、25J9、25JA、25JB、25JC、25JX、2265
张峰
2009-7-30
增加25MD
张峰
1前言
1.1编写目的
本文档描述了农行企业银行的处理机制,定义了面向外部系统的接口,供企业财务系统ERP开发接口程序参考。
1.2关于现金管理三期和二期的说明
【1】接口向下兼容。
三期系统对于部分常用的二期交易仍继续支持。
但要注意部分功能在三期中以新的接口(或交易码)进行封装,建议ERP软件商逐步淘汰掉相同功能的老的交易接口。
1.3关于银行系统和ERP互连的简要备注(比较重要)
1.4约定
1.4.1关于通讯方式:
ERP与CS之间:
Socket方式中报文结构为“包头+数据包”。
包头固定为7个字节长,第1字节为是否加密标志(0-不加密,1-加密)。
后6个字节是数据包的长度,即将报文长度直接转为字符串存储,长度不足6位则右边用空格补足,比如:
“1234”。
比如汇兑的长度为1234字节的数据包,其包头为“11234”共7位;查询单账户余额的长度为1000字节的数据包,其包头为“01000”共7位。
其中数据包长度包含加密包标志位。
1.4.2关于XML约定:
XML(包括XML数据包和XML文件)都不包含头部的XML声明(即
xmlversion=""?
>);
除非有特别的说明,否则所有XML的根元素的标记名都为;
接口中字段名即对应元素的标记名(包含了相对于根的路径名);
在XML数据包中所有元素的数据都不采用属性,而一律用字符数据的文本块来表示。
1.4.3关于字段次序:
对于XML,同一层的字段次序可以不参照本文档中的字段次序描述;
对于多域串(即以’|’作为每个字段结束符的字符串,以下简称MFS)或格式化字符串,字段次序必须严格与本文档中的字段次序描述保持一致。
1.4.4关于字段类型:
字段类型分为以下三类:
Cn:
字段允许为任何可见字符(包括数字和中文),n在XML中表示有效数据的最大总长度,如果有效数据长度不足n位按实际位数;在格式化字符串(定长字符串)中表示固定的长度,如果有效数据长度不足n位,则有效数据左对齐,右边用空格补足至n位;
Nn:
字段内容只允许为0-9数字,n在XML中表示有效数据的最大总长度,如果有效数据长度不足n位按实际位数;在格式化字符串中表示固定的长度,如果有效数据长度不足n位,则有效数据右对齐,左边用空格补足至n位;
:
基本上与Nm类型类似,但字段内容可以允许为负号、0-9数字和小数点,其中m表示有效数据的最大总长度(对于格式化字符串中表示固定长度),n表示小数位数,通常用来表示发生额、余额等金额类字段,如表示15位,其中带两位小数位的字段。
1.4.5关于空字段:
表示字段在某些条件下允许为空字段,空字段在XML中对应的字段值为空,在格式化字符串中则用全空格填充至规定的长度。
1.4.6关于多域串:
多域串用于企业银行内部各子系统之间返回多条记录,简写为MFS,多域串采用固定分隔符,对于本系统而言,分隔符一般采用“|”,如果多域串内的字段值还是多域串(如通知查询交易),则字段值的多域串分隔符一般采用“/”,除非特殊说明。
本文档中对于多域串的情况给出了当前情况下字段排列顺序,实际上本接口文档中设计上相对灵活,由于第一条记录是字段名记录,如果采用灵活实现方式,则根据该字段名记录可以确定排列顺序,因而不必事先约定顺序。
1.4.7关于定位串:
定位串用于返回多条记录的交易中,定位串的组成格式由服务方决定,定位串缩写为FFS。
客户端在第一次请求时将定位串置成空,服务端在应答时对每条返回的记录填写定位串。
定位串必须给定字段排列顺序,本文档中设计定位串的地方主要都是与CMF通讯的接口里面,下面每个交易都是通过交易表中起始字段和终止字段来表述的,在这两个字段之间顺序排列即可。
1.4.8关于文件:
由于部分交易中涉及的交易包过大,如果采用交易包返回,将造成较多的冗余,所以采用文件方式返回。
文件的格式和交易包中的格式定义基本相同,唯一的区别可能就是将一条条记录拆成了文件的一条记录而已。
文件的上传、下载可以通过调用我们提供的通讯底层来获取。
1.4.9关于操作员密码:
企业操作员的密码都为最长8位的字母或数字。
在传输过程中单独加密,加密后为16字节的可见字符串。
1.4.10关于认证码、数字签名和加密:
企业操作员在签到时,ES会根据某种算法得出一个认证码,以后每次该操作员作交易时都要求送认证码供ES校验。
认证码为32字节的可见字符串。
数字签名是为了防抵赖和防篡改的要求,具体哪些交易需要签名、哪些签名字段和签名顺序如何是通过ES的交易控制配置文件来确定。
CC-CS需要通讯加密。
哪些交易需要加密也是通过ES的交易控制配置文件来确定。
1.4.11关于返回结果:
一笔交易的结果的返回用返回来源+返回码来标示,返回信息为返回码的具体中文含义,扩展信息中包含了详细的信息。
由于成功的返回结果有多种可能(如交易成功0000,交易落地0001,预约受理0002,等),约定这种情况下返回来源都为‘0’。
1.4.12关于查询类的返回接口:
查询类交易分多笔查询和单笔查询,其中单笔查询包括:
查询单帐户余额、下级查询上存支取余额等交易;多笔查询包括:
查询帐户明细等。
单笔查询交易:
应答报文不通过RespPrvData来返回,而是直接填写XML域。
多笔查询交易:
多笔查询交易无论笔数是1还是多条,都需要首先判断是否通过文件返回,如果不是通过文件,则肯定是通过RespPrvData来返回的多笔记录。
判断是文件返回还是记录返回请检查XML节点
和
记录数(行数)通过Cme/RecordNum得到(值为N),字段数(列数)通过Cme/FieldNum得到(值为M)。
其中RespPrvData的构成方式如下:
字段1名|字段2名|……|字段M名|第一条记录字段1值|第一条记录字段2值|……|第一条记录字段M值|……|第N条记录字段1值|第N条记录字段2值|……|第N条记录字段n值|
如果是通过文件方式,则文件的记录格式也是采用多域串,但是有所差异,就是将每条记录分开成文件的每条记录,格式如下:
字段1名|字段2名|……|字段M名|
第一条记录字段1值|第一条记录字段2值|……|第一条记录字段M值|
……
第N条记录字段1值|第N条记录字段2值|……|第N条记录字段n值|
1.4.13通讯区大小约定
由于企业银行CS与ERP肯定在局域网内部,因此约定ERP与企业银行系统之间的通讯区大小为100K,请求数据包不可能大于100K,而应答数据包如果超过100K,则通过文件返回。
是否通过文件返回,在公共包头中有“是否文件返回的标识”,如果采用文件返回,则公共包头中可以通过“批量文件名”字段获得返回的文件名;如果采用非文件方式返回,则按照1.4.12的约定获取RespPrvData字段。
2数据字典定义
数据字典是本系统的业务基础,基本涵盖了所有的字段及其属性信息。
数据字典的用途可以非常广泛,目前数据字典的功用还有待开发。
2.1字典键值索引(0)
1返回来源
2农行他行标志
3同城异地标志
4汇兑类型
5反向归集标志
6利息再分配周期
7利息再可配标志
8法人间资金归集标志
9资金归集方向
10资金归集周期
11资金归集类型
12业务类型
13申请/恢复额度标志
14生效标志
15额度转移标志
16可使用上级额度标志
17票据状态
18电子对账单输出标志
19账页输出标志
20现转标志
21发生额标志
22交易类别
23授信种类
24票据种类
25凭证种类
26摘要
27帐户操作权限
28帐户类型
29加急标志
30到账通知标志
31联系方式
32消息(通知)类型
33消息发送标志
34归集帐户
35流水状态
36企业状态
37证件类型
38利率标志
39使用状态
40省市代码
41货币码
42交易代码
43企业操作员类别
44企业操作员状态
45收妥标志
46汇票种类
47本票种类
48查询类型
49预约标志
50落地处理标志
51修改内容
53对账标志
54可否转汇标志
55挂失方式
56领取方式
59操作员联机状态
60授权帐户状态
61自身归集状态
62上级归集状态
63收费基数类型
64支票种类
65通知处理状态
66资金归集关系修改类型
2.2返回来源
(1)
0成功返回
1CMECC返回
2CMECS返回
3CMES返回
4CMF返回
5ABIS返回
6CM返回
7CMC返回
2.3农行他行标志
(2)
0农行
1他行
2.4同城异地标志(3)
0异地
1同城
2.5汇兑类型(4)
0普通汇兑
1上级发起的下级账户之间的划款
2上级发起的下级账户的对外支付
2.6反向归集标志(5)
0不做
1做
2.7利息再分配周期(6)
1每月月底
2每月20日
3每季季底
4每季20日
2.8利息再分配标志(7)
0不自动分配
1自动分配
2.9法人间资金归集标志(8)
0非法人间资金归集
1法人间资金归集
2.10资金归集方向(9)
1只能向上归集
2可从上级账户划拨资金给下级账户
2.11资金归集周期(10)
1每天
2每月
2.12资金归集类型(11)
1实时归集
2批量归集
3资金池管理
4巴斯夫归集方式处理
2.13业务类型(12)
1资金上存
2资金支取
3资金下拨
4资金上划
2.14申请/恢复额度标志(13)
0申请
1恢复
2转入
3转出
2.15生效标志(14)
0未生效
1已生效
2.16额度转移标志(15)
0不可转移
1可转移;
2.17可使用上级额度标志(16)
0只能使用自身额度
1可使用上级额度;
2.18票据状态(17)
0全部
1从付款人收回
2退票后从受让企业收回
3退票后转逾期贷款收回、
4部分收回
5退票
2.19电子对账单输出标志(18)
0未输出
1已输出
2.20账页输出标志(19)
0未输出
1已输出
2.21现转标志(20)
0现金
1转账
2.22发生额标志(21)
0正常
1红字
2蓝字
3已抹
4抹帐
2.23交易类别(22)
0自身
1资金归集
2结息
3收费
4资金池划拨户结息或清息
5平等资金池委托贷款
6如果是隔夜透支不用申请额度
7资金归集(不记账簿自身)
8有权机关强制扣划
2.24授信种类(23)
2502-透支额度
2.25票据种类(24)
00全部
01银行汇票
02银行承兑汇票
03转账支票
2.26凭证种类(25)
00非重要空白凭证
01储蓄存单
02一般储蓄存单
03存本取息存需存单
04定期存款一本通折
05单位定期存款证实书
06现金支票
07转账支票
08普通支票
09全国银行汇票
10省辖或县辖银行汇票
11银行承兑汇票
12商业承兑汇票
13不定额银行本票
14金穗卡卡片
15智能卡
16借记卡
17贷款还款证实书
18县辖邮划借方报单
19县辖邮划贷方报单
20国库券收款凭证
22汇票委托书
23外币普通支票
24单位定期存单
31金卡
32银卡
33收贷凭证
34电子同城补充报单
36清分机支票
37金融服务收入凭证
38特种大额定期存单
50外汇出境许可证
60一卡通开销户登记簿
61一卡通对账登记簿
63定期一本通存折
64活期一本通存折
78清分机转账支票
80人行现金支票
81人行转账支票
84人行假币没收收据
98电子支付凭证
99所有重要空白凭证
2.27摘要(包括原ABIS和新ABIS)(26)
101-现收
202-现支
303-转收
404-转支
505-汇入
606-汇出
707-托收
808-承付
909-委收
1010-委付
1111-补账
1212-冲账
1313-收息
1414-付息
1515-汇票
1616-转账
1717-提入
1818-提出
1919-退款
2020-电汇
2199-其他
220101-商品销售收入
230102-服务业收入
240103-税款收入
250108-城乡个体经营收入
260109-储蓄存款收入
270110-其他金融机构收入
280111-居民归还贷款收入
290112-汇兑收入
300113-有价证券收入
310199-其他收入
320115-兑换外币收入
330190-收入合计
340116-内部现金收入
350117-同业往来收入
360118-由人行发行库领取现金
370119-由银行(人行)业务库领取现金
380120-信用社(其他银行)交存现金
390130-前期业务库存
400191-收入总计
410260-工资性支出
420201-国家工资及奖金
430202-国家对个人其他支出
440203-部队存款支出
450204-其他单位工资性支出
460205-农副产品采购支出
470206-工矿及其他产品采购支出
480207-行政企事业管理费支出
490208-城乡个体经营支出
500209-储蓄存款支出
510210-其他金融机构支出
520211-居民提取贷款支出
530212-汇兑支出
540213-有价证券支出
550299-其他支出
560215-兑换外币支出
570290-支出合计
580216-内部现金支出
590217-同业往来支出
600218-交回人行发行库现金
610219-交回银行(人行)业务库现金
620220-信用社(其他银行)支出现金
630230-本期业务库存
640291-支出总计
650240-投放(+)、回笼(-)
660250-附报项目:
代发工资
671003-转收
681004-转支
691005-汇入
701006-汇出
711007-托收
721008-承付
731009-委收
741010-委付
751011-补账
761012-冲账
771013-收息
781014-付息
791015-汇票
801016-转账
811017-提入
821018-提出
831019-退款
841020-电汇
851021-票据买入
861022-收回买入票据垫款
871023-资金上存
881024-资金支取
891025-资金上划
901026-资金下拨
911027-签发银行汇票
921028-签发银行本票
931029-签发大额支付报单
941099-其他
2.28账户操作权限(27)
0不能操作
1查询
2集团内划款
3对外支付
8全权操作
9自身账户
2.29账户类型(28)
0基本存款账户
1单位辅助
2专用存款账户
3一般存款账户
4个人支票户
5可透支户
6临时存款账户
7注册验资临时存款户
8保证金户
2.30加急标志(29)
0不加急
1加急
2.31到账通知标志(30)
0不通知
1通知付款人
2通知收款人
3全部通知
2.32联系方式(31)
1-电子邮件
2-传真
3-电话
4-短信
5-联网
6-其他
2.33通知类型(32)
000所有通知
001到账通知
002批量交易完成
003抹帐通知
004更新通知
00A信使服务
2.34消息发送标志(33)
1-未发送
2-已发送
2.35是否归集帐户(34)
0—非归集户
1—归集户
2.36流水状态(35)
1待复核
2待发送
3正在发送
4成功
5失败
6落地
7预约
9未知
2.37证件类型(37)
I个人身份证
P执照
L营业执照
T临时证件
O无证件开户
J联名开户
S军官证
1驾驶证
2警官证
3文职干部证
4户口簿
2.38利率标志(38)
0日利率
1月利率
2年利率
2.39使用状态(39)
0使用
1不使用
2.40省市代码(40)
01总行
11北京市
02天津市
03上海市
04山西省
05内蒙古
06辽宁省
07吉林省
08黑龙江
09上海市
10江苏省
12安徽省
13福建省
14江西省
15山东省
16河南省
17湖北省
18湖南省
19浙江省
20广西区
21海南省
22四川省
23贵州省
24云南省
25西藏区
26陕西省
27甘肃省
28青海省
29宁夏区
30新疆区
31重庆市
34大连市
38青岛市
39宁波市
40厦门市
41深圳市
44广东省
45新兵团
50河北省
71台湾省
97香港
99总行清算中心
80会计部
81营业部
82计划部
83国际部
2.41货币码(包括农行和国标)(41)
01RMB人民币
12GBP英镑
13HKD港币
14USD美元
15CHF瑞士法郎
16DEM德国马克
17FRF法国法郎
18SGD新加坡元
19BEF比利时法郎
20NLG荷兰盾
21SEK瑞典克郎
22DKK丹麦克郎
23NOK挪威克郎
24ATS奥地利先令
26ITL意大利里拉
27JPY日元
28CAD加元
29AUD澳元
30TZS坦桑尼亚先令
31ESP西班牙比塞塔
32MYR马来西亚林吉特
33XEL欧洲货币单位
40LKR斯里兰卡卢比
41DZD阿尔及利亚第纳尔
42FIM芬兰马克
43GHC加纳塞地
44IQD伊拉克地那尔
45MLF马里法郎
46MAD摩洛哥地拉姆
47SLL塞拉利昂
48IRR伊朗里亚尔
49NPR尼泊尔卢比
61ALL阿尔巴尼亚列克
62ROL罗马尼亚列依
63KPW朝鲜币
64VND越南盾
65UUP匈牙利福林
66BGL保加利亚列瓦
67CSK捷克克郎
69PLZ波兰兹罗提
70BUR苏联卢布
73FUG蒙古图格里克
80ZMR赞比亚克瓦查
81MOP澳门币
82PHP菲律宾比索
83BUK缅甸币
84THB泰币
85INR印度罗比
86MTP马尔他镑
87NZD新西兰元
2.42交易代码(42)
C000开通企业银行功能
C003查询数据字典
C004增加数据字典
C005删除数据字典
C006修改数据字典
C100企业操作员签到
C101企业操作员签退
C102查询企业操作员
C103增加企业操作员
C104修改企业操作员
C108修改企业操作员密码
C109查询操作员可操作账户
C110设置操作员可操作账户
C111查询企业操作员权限
C112设置企业操作员权限
C113查询企业被授权账户
C114企业操作员设置自身菜单
C200查询集团关系
C201查询企业信息
C202查询账户信息
C203查询贸易伙伴
C204增加贸易伙伴
C205修改贸易伙伴
C206删除贸易伙伴
C207查询所有账户组
C208查询账户组中的账户
C209设置账户组中的账户
C211删除账户组
C212查询员工信息
C213增加员工信息
C214修改员工信息
C215删除员工信息
C300查询交易日志流水
C301查询金融交易流水
C302复核金融交易
C303查询收费明细
C304查询企业通知(CC发起)
C305查询复核流水操作员
C306增加复核功能级别
C307查询复核功能级别
C308查询需要复核的交易流水
C309修改复核功能级别
C310删除复核功能级别
C400发送企业通知(ES或CS发起)
C402下载对账单
C403打印对账结果
C404更新工资信息
C500查询提交
C501多账户明细查询
C502查询汇总帐户余额
M000银行操作员登陆校验
M001查询银行操作员
M002银行操作员维护
M003查询数据字典
M004数据字典维护
M005系统日终
M006错误代码维护
M006解冻银行操作员
M007修改银行操作员密码
M008查询银行操作员权限
M009修改银行操作员权限
0324购买电子支付凭证
0325支票挂失
0394利率查询
0395外汇汇率查询
1908汇兑
1909代发工资
1913申购支票
1944查询金融交易流水状态
1943取消金融交易
2531查询客户使用授信情况
2532查询客户授信额度使用明细
2533查询客户转移/恢复额度明细
2551修改上存利率、下拨利率、留存最低限额、划拨最高限额
2553查询资金归集关系
2556资金上存
2557资金支取
2558资金下拨
2559资金上划
2560下级查询上存资金余额
2561上级查询汇总上存余额
2562查询上存支取明细
2563下级查询下拨资金余额
2564上级查询汇总下拨余额
2565查询下拨上划明细
2575查询票据买入余