目 录
1.前言 1
2.请求/响应模式..............................................................................................................................1
3.交换数据的结构...........................................................................................................................1
3.1 请求/响应示例.................................................................................................................... 2
3.2 BOCB2E 文件格式 .............................................................................................................2
3.3 XML 块结构....................................................................................................................... 3
3.4 顶层(Top Level) ..................................................................................................................3
3.5 消息(Message) .....................................................................................................................3
3.6 交易的超时及防重处理 ..................................................................................................... 5
3.7 字符集检查 ......................................................................................................................... 6
3.8 主动推送消息 ..................................................................................................................... 7
推送信息报文格式 ...............................................................................................................7
客户应答报文格式 ...............................................................................................................8
4.标准版接口分册...........................................................................................................................9
4.1 基础金融服务类交易.........................................................................................................9
4.2 票据类交易 ......................................................................................................................... 9
4.3 全球金融服务类交易 ......................................................................................................... 9
4.4 现金管理类交易.................................................................................................................9
4.5 电子商务类交易.................................................................................................................9
4.6 国际结算类交易............................................................................................................... 11
附一、交易报文示例....................................................................................................................11
1、请求 ................................................................................................................................... 11
2、响应 ................................................................................................................................... 17
1.前言
为实现中国银行电子银行系统 BOCNET 与企业 ERP 系统、财务系统或资
金管理系统的顺利对接,为企业提供专业、便捷、安全的电子渠道金融服务,
中国银行拟定了本接口规范,供相关各方使用。
2.请求/响应模式
BOCNET 银企对接标准版前置机(以下简称前置机),在请求/响应模式的
客户机/服务器体系下向企业客户提供服务。采用 HTTP 1.0/1.1 作为企业系统与
银行系统之间的通信协议,传输文件格式符合 XML 1.0 规范。
我们把这套数据交换规格,命名为 BOC Bank TO Enterpris,以下简称为
BOCB2E。
3.交换数据的结构
企业通过 HTTP POST 向银行的前置机发送请求命令,前置机接收企业的请
求并转发至 BOCNET 对接平台(以下简称对接平台),对接平台处理后将响应
结果发给前置机,前置机再把响应结果转发给企业。请求与响应的报文结构包
括:
1) HTTP headers
2) MIME type(Content type) application/xml
3) XML declaration
4) BOCB2E declaration
5) BOCB2E XML block
以上 1-2 遵照 HTTP 协议规范(www.w3c.org),3-5 部分为请求或响应文件内
容,依照 HTTP 协议这两部分内容之间通过一个空行(CR LF)分隔。
BOCB2E 的内容类型为 application/xml,防止代理服务器(proxy)对 xml 文
件转码(transcoding)。
中国银行软件中心
- 1 / 22-
3.1 请求/响应示例
请求:
version=”120” security=”true” locale=”zh_CN”>
响应:
version=”120” security=”true” lang=”zh_CN”>
3.2 BOCB2E 文件格式
BOCB2E 文件格式包括 xml 声明,必须在最开始,xml 声明如下所示:
(建议 encoding 使用 UTF-8)
接下来是 BOCB2E 协议的 XML 顶层块
三个属性可以不填。其中:
version 为 BOCB2E 协议的版本号,BOCNET 为 3.0 版,表示为
“120”,但是兼容以往的版本。所有交易的货币码将采用国际标准,
如果想使用数字型的货币码,version 值用“100”。
security 为采用的安全模式,需要在 BOCB2E 协议层上实现数字签名和
用户证书信息,数据的加密解密依赖安全代理(HTTPS 代理)来实现,保
证客户端与服务器之间的通信安全。因此目前应选择“true”。
locale 表示客户端所处的区域,语言类型,主要用于服务器响应信息的
语言类型,对于客户提交的信息,服务器不进行语言的转换。HTTP 相
中国银行软件中心
- 2 / 22-
应代码对应的信息按照 HTTP 1.1 或 HTTP1.0 的定义,locale 的内容遵
循国际标准写法,例如“zh_CN”、“en_US”。
3.3 XML 块结构
BOCB2E XML 块采用层次化结构 XML 数据块作为请求与响应的数据文件
内容,层次结构如下:
XML 块顶层
XML 消息集与版本 < msg-xxx-n>
消息头
消息体
交易包装 ,
BOCB2E 的标记以及列举数据值全部采用小写英文字符。其中交易可以由
0 到多笔组成。
3.4 顶层(Top Level)
BOCB2E 的请求和响应内容包括以下的顶层内容:
标记(Tag)
bocb2e 交易内容
说明
开始 BOCB2E XML 块
数据头
数据头结束
交易数据块
交易的请求/响应消息
trans XML 结束
BOCB2E XML 结束
一个 HTTP 请求或响应只能并且必须包括一个 BOCB2E XML 块。即只能
有一个顶层。
3.5 消息(Message)
BOCB2E 消息包含消息头(head)和消息体(trans)。
消息头包含前端信息、企业 ID、企业操作员等信息
中国银行软件中心
- 3 / 22-
标记(Tag)
说明
格式
检查
开始 BOCB2E XML 块
数据头
代表一台企业前置机
E 开头+前置机 IP 地
址 ( 各 段 补 零 , 无
小数点 12 位)
检查终端号是否维护
数码 1-10 位
字 母 数 字 标 点 串 1-
20 位
b2e 开头加 4 位数字 检查交易是否存在,
检查操作员是否存在
Base64 字 符 串 0-64
位
与报文体是否一致
检查令牌是否正确
企业在中行网银系统的
客户端产生的报文编号 字母数字串 0-12 位
客户编码
企业操作员代码
交易代码
交易验证标识,签到时
……
生成、签退时注销
数据头结束
交易数据块
trans XML 结束
BOCB2E XML 结束
.消息体是 BOCB2E 的工作单元,消息包括请求与响应,以及与响应消息对
应的状态码。消息由交易包装,交易的命名规则为 trn-xxx-rq 或 trn-xxx-rs,trn-
xxx-rq 包括划账交易的数字签名以及相应的请求消息(xxx-rq),trn-xxx-rs 包括
status 以及相应的响应消息(xxx.rs)。
status 包括 rspcod、rspmsg,其中 rspcod 为交易返回码, B001 表示处理成
功, rspmsg 表示解释信息,如下例:(完整交易返回码见附二)
rspcod
B001
B999
B998
OK
交易失败
数据格式有误
Rspmsg(中文)
例如,若定义一个名为 action 的交易消息,则 action 的请求数据格式为:
标记
……
说明
action 交易请求的开始
消息的开始(0..n)
请求内容
中国银行软件中心
- 4 / 22-
响应数据格式为:
标记
……
消息的结束
交易的结束
说明
action 交易响应的开始
报文响应状态标记开始
报文响应状态标记结束
消息的开始(0..n)
交易响应状态标记开始
交易响应状态标记结束
响应内容
消息的结束
交易的结束
3.6 交易的超时及防重处理
对于银行数据交换,交易的超时及防重控制主要是在企业端发出支付/转账
指令请求时使用。考虑下面的情况:企业端发出转账请求,服务器端也成功处
理,并发出了表示转账成功的响应消息,由于通信故障等原因,企业端未能正
确收到响应。如果是仅仅是查询,由于可以执行多次,企业端在故障排除后重
新发出请求获得结果即可,但对于不可重复执行的转账/支付请求,可以发起交
易状态查询交易,以转账指令 ID 来银行查询该笔交易的付款状态,也可以发起
到账查询交易,以转账指令 ID 来银行查询该笔交易的到账情况。
防止企业在不明情况下,对同一笔交易重复发起扣账,客户端在生成指令
的时候要生成一个唯一的指令 ID,银行服务器端保留此 ID 及执行结果,当客
户端再次以同一指令 ID 发出转账请求时,服务器端收到请求后首先做 ID 判
断,如果 ID 曾收到过,则根据银行后台返回的结果,返回此 ID 指令的结果或
再次提交后台主机(如:付款账号余额不足时),如未收到过,则执行并返回
结果。
中国银行软件中心
- 5 / 22-
3.7 字符集检查
请求报文格式中允许的字符在具体交易定义中有具体说明,但格式标明为
字符串的在此详述如下:
标记
说明
密码
新密码
转账指令 ID
账号(非中行)
收款人名称
收款人地址
付款人名称
收款人代码
字符集
允许英文字母、数字、空格、标点符号、汉字(及其它
多字节文字符号)
禁止控制字符(如回车、换行、制表符等)
允许英文字母、数字、标点符号
禁止控制字符(如回车、换行、制表符等)、空格、
汉字(及其它多字节文字符号)
允许英文字母、数字、*、/、_、`
禁止 空格、!、”、#、$、%、&、’、(、) 、+、,、-
、.、: 、;、< 、=、>、\ 、?、@、[、\、]、^、{ 、
|、}、~、控制字符、汉字(及其它多字节文字符号)
允许字母、数字、*、/、_、-
禁 止 空 格 、 ! 、 ” 、 # 、 $ 、 % 、 & 、 ’ 、 ( 、 ) 、
+、,、.、:、;、<、=、>、\、?、@、[、\、]、^、`、
{、|、}、~、控制字符、汉字(及其它多字节文字符号)
允许空格、字母、数字、汉字(及其它多字节文字符
号)、单引号’、小括号(、)
禁止!、”、#、$、%、&、*、+、,、-、.、/、:、;、<、
=、>、\、?、@、[、\、]、^、_、`、{、|、}、~、控制
字符
(web 系统允许空格,.-/()禁止全角,。空格)
允许空格、字母、数字、汉字(及其它多字节文字符
号)、单引号’、小括号(、)
禁止!、”、#、$、%、&、*、+、,、-、.、/、:、;、<、
=、>、\、?、@、[、\、]、^、_、`、{、|、}、~、控制
字符
(web 系统允许空格,.-/())
号)、单引号’、小括号(、)
禁止!、”、#、$、%、&、*、+、,、-、.、/、:、;、<、
=、>、\、?、@、[、\、]、^、_、`、{、|、}、~、控制
字符
(web 系统允许空格,.)
允许空格、字母、数字、汉字(及其它多字节文字符
号)、单引号’、小括号(、)
禁止!、”、#、$、%、&、*、+、,、-、.、/、:、;、<、
=、>、\、?、@、[、\、]、^、_、`、{、|、}、~、控制
字符
(web 系统允许空格,.-/()禁止全角,。空格)
允许字母、数字、汉字(及其它多字节文字符号)、单
引号’、小括号(、)
禁 止 空 格 、!、”、# 、$、% 、& 、*、+ 、, 、-、.、
收款人开户行名称 允许空格、字母、数字、汉字(及其它多字节文字符
中国银行软件中心
- 6 / 22-
用途
/、:、;、<、=、>、\、?、@、[、\、]、^、_、`、{、
|、}、~、控制字符
(web 系统只允许数字)
允许字母、数字、汉字(及其它多字节文字符号)、空
格、单引号’、双引号”、减号-、小数点.、斜线/、小
括号(、)
禁止!、#、$、%、&、*、+、,、:、;、<、=、>、
\、?、@、[、\、]、^、_、`、{、|、}、~、控制字符
禁止 大小写的英文 O o I i 和半角字符: ' { }[ ] % ' "
注:1、接口中明确的字段长度均为字符个数,请客户按照自身的具体编码方
式设计各要素的长度。 2、furinfo 用途一项在向核心系统传送时最多为 17 个
字节,多出的部分会被 BOCNET 产品层截断。
3.8 主动推送消息
推送信息报文格式
BOCB2E 消息包含消息头(head)和消息体(trans)。
消息头包含推送次数、业务类型、交易类型等信息。
标记(Tag)
说明
格式
备注
开 始 BOCB2E
XML 块
数据头
代表一台企业
前置机
客户端产生的
报文编号
企业在中行网
银系统的客户
编码
企业操作员代
码
交易代码
交易验证标
识,签到时生
成、签退时注
销
空
空
数码 1-10 位
空
b2e 开头加 4
位数字
空
< obssmsgid > 交易流水号
数码 1-32 位 主动推送中产生的网银交易流水
业务类型
2 位
号
01:余额信息,02:额度信息,03:
余额变动信息, 04:账户对账信
息 05:账户变动信息 06:银行承
兑开立 07:银行承兑申请退回
08:国结授信业务 09:转让结
中国银行软件中心
- 7 / 22-