大宗商品电子交易市场银行接口转账协议规范.docx

上传人:b****7 文档编号:9074809 上传时间:2023-02-03 格式:DOCX 页数:23 大小:23.50KB
下载 相关 举报
大宗商品电子交易市场银行接口转账协议规范.docx_第1页
第1页 / 共23页
大宗商品电子交易市场银行接口转账协议规范.docx_第2页
第2页 / 共23页
大宗商品电子交易市场银行接口转账协议规范.docx_第3页
第3页 / 共23页
大宗商品电子交易市场银行接口转账协议规范.docx_第4页
第4页 / 共23页
大宗商品电子交易市场银行接口转账协议规范.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

大宗商品电子交易市场银行接口转账协议规范.docx

《大宗商品电子交易市场银行接口转账协议规范.docx》由会员分享,可在线阅读,更多相关《大宗商品电子交易市场银行接口转账协议规范.docx(23页珍藏版)》请在冰豆网上搜索。

大宗商品电子交易市场银行接口转账协议规范.docx

大宗商品电子交易市场银行接口转账协议规范

大宗商品电子交易市场银行接口转账协议规范

提供给专研行业技术发展和交易市场的技术部内部人员参考之用。

文件状态:

[√]草稿

[ ]正式发布

[ ]正在修改

文件标识:

银行转帐协议规范

当前版本:

V2.0

作   者:

黄东

完成日期:

2008-08-15

版本号

*变化

状态

简要说明

日期

变更人

审核日期

审核人

V2.0

M

协议修订

2008-08-15

黄东

 

 

V2.1

A

协议修订,增加对金额处理的说明。

即发送方金额*100,接收方金额除以100,使金额不出现小数位。

加入帐户图。

增加大数据量文件格式定义。

2008-10-14

蒋加君

 

 

V2.2

M

50010增加“收益类型”字段

2008-10-28

蒋加君

 

 

V2.3

M

50003,50004,50011增加

“开户银行”字段

2008-10-31

 

 

 

V2.4

M

50015增加“查询日期”字段

2008-11-3

 

 

 

V2.5

M

修改20020,10009。

删除20016,20022。

增加交易说明,帐户结构说明。

2008-12-9

 

 

 

*变化状态:

A——增加,M——修改,D——删除

 

 

 

 

          

第一章 通讯协议格式

1.1、通讯方式。

从Client到通信服务器的通信在底层符合TCP/IP协议规范,其应用协议是针对转帐特点而设计的。

双方通信采用异步通信方式,采用短连接方式,双方均可发起指令,当一方发起指令后在处理完毕后会主动断开。

通信工具采用MTI(Transaction MiddlewareSystem)提供的包传输协议,每一段数据组成一个数据包,各段数据采用各个数据包同时连续发送的方法实现。

1.2、协议规范

      在本协议中无论字符,数字全部采用字符串方式传送。

为避免金额出现小数,所有金额在发送时都乘以100后发送,接收方除以100后进行处理。

如转帐资金为1000.23元,数据传输时即为‘100023’,不采用二进制或其它格式存放数据。

包头中各字段顺序固定,对于有长度要求的,长度不够时采用右补空格填充,如‘100002A   ’。

包体中对数据长度不做具体要求,有具体的分割符号来区分。

1.3、协议包格式约定

1.3.1包头结构定义

  MtiHead=Packed RECORD

     HeadType:

Array[0..4] of CHAR;    //数据帧类型

     SubType:

Array[0..1] of CHAR;     //子数据帧类型

     HeadVer:

Array[0..1] of CHAR;     //协议版本号 目前版本必须为字符’20’

     ReqMac:

Array[0..11] of CHAR;     //请求方MAC地址

     ReqID:

Array[0..19] of CHAR;      //请求方标识,应答时原样返回

     DataLen:

Array[0..4] of CHAR;     //数据帧长度

     NextFlag:

Array[0..0] of CHAR;     //是否有下一包数据N没有,Y有

       EncFlag:

Array[0..0] of CHAR;      //加密标志Y加密N不加密

       BankID:

Array[0..2] of CHAR;      //银行代码

       RtnNO:

ARRAY[0..4]of CHAR;     //返回码‘00000’为成功,其他为失败

       DataCol:

ARRAY[0..0]of BYTE;     //包体数据字段列数没有数据返回时填0x00

     DataRow:

Array[0..3] of CHAR;    //包体数据行数没有数据返回时填‘0000’

     ExWaterID:

Array[0..13] of CHAR;    //流水号 系统唯一流水号

CommInfo:

ARRAY[0..19] of CHAR;   //保留信息 CommInfo[0]=’1’资金管理客户端

//CommInfo[0]=’2’交易客户端

       CheckNum:

ARRAY[0..4] of CHAR;  //校验和

  end;

说明:

HeadType是系统所有交易类型的定义,如90001,90002等

     SubType:

是系统所有交易子类型定义,子类型不唯一,只能和主类型配合一起使用 

       DataLen:

是数据域的长度,不包括包头数据长度

          NextFlag:

当有多包数据要传输时,如果有下一包数据Y,否则N,如果只有一包或没有数据包填N

     RtnNO:

返回码 ‘00000’为成功,其他为失败

       EncFlag:

加密标志,代表数据域是否采用加密处理

     ExWaterID:

系统唯一标识

       BankID银行代码:

银行代码

银行名称

001

浦发行

002

工行

003

招行

004

农行

005

建行

006

交行

007

广发行

008

中国银行

009

商行

CheckNum包头数据校验和,具体校验算法另行定义

 数据包结构具体如下表所示:

项目

数据

包头

HeadType

数据帧类型

SubType

子数据帧类型

HeadVer

协议版本号 目前版本必须为字符’20’

ReqMac

请求方MAC地址

ReqID

请求方标识,应答时原样返回

DataLen

数据帧长度

NextFlag

是否有下一包数据N没有,Y有

EncFlag

加密标志0x01加密0x00不加密

BankID

银行代码

RtnNO

返回码

DataCol

包体数据字段列数

DataRow

包体数据行数

ExWaterID

流水号

CommInfo

保留信息

CheckNum

校验和

包体

DataPack

USERID<#>CHANGEMONEY<#>INOUTTYPE<#>

0001<#>3005.23<#>1<#>

0002<#>3005.23<#>1<#>

0003<#>3005.23<#>1<#>

 

1.3.2包体结构定义

包体结果说明:

1.包体全部内容均为字符串。

2.<#>为各元素之单的分割符,表示一个ACSCII1的字符。

<#>目前定义为0x08

3.每个元素的顺序可以任意改变,如某元素信息不存在,表示为空值,但列名必须存在。

4.应答(错误)时,包体返回错误码返回码(RtnNo),错误返回信息(RtnInfo)。

5.应答(正确)时,包体不包含返回码和返回信息,只包含协议的返回信息并填包头RtnNO为‘00000’,如果没有返回信息,则包头的DataCol为0x00,DataRow为‘00000’,包体为空(不填返回数据,只填包头RtnNO为‘00000’)。

6.如果不需要验证密码,则密码填入十个星号(**********)

7.目前金额处理为实际金额*100使金额不出现小数位,例如:

金额5623.12,协议中发送的金额为562312。

即发送方发送时金额*100,接收方处理金额时将金额除以100。

 

请求与应答数据的如以下格式:

请求方或应答方:

第1行:

列名1<#>列名2<#>...<#>列名n<#>

第2行:

数据1<#>数据2<#>...<#>数据n<#>

第3行:

数据1<#>数据2<#>...<#>数据n<#>

第N行:

......                      <#>

 

举例如下:

请求:

CustTradeID<#>ChangeMoney<#>MoneySty<#>Memo<#>

0001<#>3005.23<#>1<#><#>

0002<#>3005.23<#>1<#>10052<#>

0003<#>3005.23<#>1<#><#>

应答(错误):

RtnNo<#>RtnInfo<#>

10001<#>资金密码校验失败<#>

应答(正确有返回数据):

CustTradeID<#>ChangeMoney<#>MoneySty<#>Memo<#>

0001<#>3005.23<#>1<#><#>

应答(正确无返回数据):

   

1.3.3银行具体帐户结构图

市场人民币总帐户

交易商资金子帐户

交易商1

交易商N

交易资金子帐户

担保金子帐户

交易资金子帐户

担保金子帐户

手续费子帐户

代收代付子帐户

交易市场收益子帐户

利息结算子帐户

市场结算帐户

1.市场人民币总帐户:

市场在银行开设的资金监管帐户。

下设“交易商资金子帐户”“交易市场收益子帐”虚拟帐户。

      交易商资金子帐户:

为各交易商所有资金总和。

      交易市场收益子帐:

市场的所有收益总和。

市场可已将此帐户中资金划转到“市场结算帐户”。

其中包括手续费子帐户,代收代付子帐户,利息结算子帐户。

2.市场结算帐户:

市场在银行开设的非监管帐户,此帐户资金市场可以自由划转。

1.3.4系统结构图

第2章 元素列表定义

2.1元素约定

接口中元素名不区分大小写

2.2元素列表

元素名

元素含义

字符

说明

HeadType

数据帧类型

C5

定长为五位数字,1和2开头代表银行发起,5,6代表市场发起

SubType

子数据帧类型

C2

 

ReqID

请求方标识

C20

用于标记请求时的流水号,在应答时直接原样返回

HeadVer

协议版本号

C2

协议版本号 目前版本必须为20

ReqMac

请求方MAC地址

C12

 

DataLen

数据帧长度

C5

不包括包头数据长度

NextFlag

是否有下一包数据

C1

N没有,Y有

EncFlag

加密标志

C1

Y加密N不加密

DataCol

包体数据字段列数

C1

 

DataRow

包体数据行数

C4

 

ExWaterID

流水号

C14

系统唯一标识

DelWaterID

被冲正流水号

C14

用于冲正,被冲正交易的流水号

RtnNo

返回码

C5

 

RtnInfo

返回信息

C50

 

CommInfo

保留信息

C20

 

CheckNum

校验和

C5

 

PinKey

主密钥

C20

 

MacKey

MAC密钥

C20

 

BankID

银行编号

C3

001浦发行

002工行

003招行

004农行

005建行

006交行

007广发行

008中国银行

009商行

BankIDIn

转入银行编号

C3

 

BankSubNo

银行分行号

C10

 

BankName

银行名称

C50

 

BankPosNo

银行网点

C20

 

BusinType

业务类型

C1

0-普通转帐

OperID

柜员编号

C10

银行操作人员编号

CompBankAcctNo

市场银行帐号

C40

 

Nationality

国籍或地区

C3

 

CustBankAcctNo

客户银行帐号

C40

 

NCustBankAcctNo

客户新银行帐号

C40

 

CustBankPass

客户银行密码

C10

 

NCustBankPass

新客户银行密码

C10

 

BankEnableMoney

银行可用资金

C20

客户可用资金

BankEOutMOney

银行可取资金

C20

客户可取资金

BankWaterID

银行流水号

C14

 

CompId

市场公司编号

C8

 

CompIdIn

转入市场公司编号

C8

 

SubCompId

市场分公司编码

C8

 

SubCompIdIn

转入市场分公司编码

C8

 

CustTradeID

客户交易账号

C40

 

CustTradePwd

客户交易密码

C10

 

CustMoneyPwd

客户资金密码

C10

 

NCustMoneyPwd

客户新资金密码

C10

 

CustOpenType

客户类别

C1

0个人,1机构

CompEnableMoney

市场可用资金

C20

 

CompOutMoney

市场可取资金

C20

可转资金

BailMoney

保证金

C20

 

GoodMoney

货款

C20

 

TrasComm

手续费

C20

 

CompWaterID

市场流水号

C14

 

FirmID

会员编号

C15

 

FirmName

客户名称

C100

支持存放机构户名称

CardIDType

客户证件类型

C1

1身份证,0其它,8组织机构代码,9营业执照

CardID

客户证件号

C30

 

PostCode

邮政编码

C10

 

CustAddress

客户地址

C100

 

TelNo

电话号码

C20

 

FaxNo

传真号码

C20

 

MoveTel

手机号码

C20

 

Email

电子邮件

C20

 

Memo

业务备注

C200

相当于备注元素

OrderCode

转帐预约号

C10

 

GainMoney

利息

C20

保留利息税的利息资金

TaxGainMoney

利息税

C20

市场结息时用

TradeDate

交易日期

C8

 

TradeTime

交易时间

C6

 

MoneyType

币种

C1

0人民币,1美元,2港币

ChangeMoney

变动资金

C20

 

DifBalance

差额资金

C20

 

StartDate

查询起始日期

C8

 

EndDate

查询结束日期

C8

 

WaterState

流水状态

C1

含义:

0成功、1存疑、2失败、3已冲正

MoneySty

资金类型

C1

0保证金,1货款 默认0

BankTCommMoney

银行手续费帐户资金

C20

 

BankMidCountMoney

银行代收代付帐户资金

C20

 

GainAccMoney

利息结算帐户资金

C20

 

TradeStart

交易发起方

C1

0市场发起,1银行发起

TradeType

交易类型

C1

0市场转银行,1银行转市场

LimitMoney

出金限额

C20

新加入 市场内部使用

AccDB

访问数据库标识

C50

新加入 市场内部使用

SqlStr

Sql语句

C200

新加入 市场内部使用多条语句用#$D#$A分隔

ProName

存储过程名称

C50

新加入 市场内部使用

Param

存储过程参数

C200

新加入 市场内部使用

RetData

变体数据

0

新加入 市场内部使用 不限制长度

ProRet

存储过程返回值

C200

新加入 市场内部使用 不限制长度

IsMult

是否为多条语句(0单条,1多条)

C1

 

CheckState

审核状态

C1

0未审核,1终审核,2初审,3初始否决,4终审否决

InComeType

收益类型

C1

0手续费,1代收代付,2利息

AccBankName

开户银行名称

C100

中国银行新协议增加

NAccBankName

新开户银行名称

C100

中国银行新协议增加

QueryDate

查询日期

C8

 

2.3返回码定义

要求银行和市场常见返回应遵照以下约定:

返回码

返回信息

返回码

返回信息

00000

交易成功

31001

该资金账号已挂失

10001

资金密码校验失败

31002

该资金账号已冻结

10002

资金账户余额不足

31003

该币种已经存在

10003

累计资金超出最大限定

31004

该代理人已经存在

10004

银行流水号重复

31005

该代理人不存在

10005

被冲正流水不存在(冲正交易)

31190

该币种不存在

10006

原流水已经冲正(冲正交易)

31200

当天有业务发生不可变更帐户信息

10007

与原流水信息不符(冲正交易)

31240

该银行账户状态错

10008

资金账户余额不足,不允许冲正

31260

无此客户账号

10009

身份证号码不一致

31270

该客户账号已存在

10010

交易账户状态被挂起

31290

该客户账号已销户

10011

交易账户不存在

31300

该客户账号已挂失

10012

交易账户已经销户

31310

该客户账号已冻结

10013

交易账户与银行方账户未建立对应关系

31320

该客户账号状态错误

10014

交易账户与银行方账户已建立对应关系

31330

该客户账号有未回交割

10015

该客户转帐功能未开启

31340

该客户账号当天有委托

10016

客户被限制转账

31350

有托管股票,不可销户

10018

预约流水不存在

31360

有托管股票,客户不可修改

10019

预约流水信息不符

31380

存在购回流水,

10020

预约流水已取款

31390

未撤消指定,

10021

预约流水未生效

31400

非交易时间

10024

单笔资金超限

31470

价格输入错误

10025

被查询流水已经成功

31500

可转资金不足

10026

被查询流水已经失败

31540

修改密码失败

10027

被查询流水不存在

33010

客户银行帐号错误

10028

被查询流水状态未知

33020

市场账号错误

10031

市场编码错误

33030

对应关系状态错误

10032

系统交易日期不符

33050

交易资金错误

10033

此交易未开通

33060

新工作密钥生成失败

10034

不允许该操作方式

33070

转帐时间已过

10035

市场公司未签到

33080

市场总部未取银行明细

10036

市场公司已经签退

33090

市场总部限制转帐

10037

市场公司已签到

33100

此笔交易被手工取消

10038

当天有业务发生,不允许销户

33110

币种错

10039

市场公司未签退

33120

不支持联机开销户

10041

市场系统错误

33140

无此币种

10042

MAC校验失败

33150

客户类别错误

10043

通讯校验失败

33160

当天有业务发生不能销户

10044

通讯消息体格式错误

33170

银行系统错误

10047

账户姓名不符

33180

取银行明细失败

10048

资金账号与管理账号未建立对应关系

33190

取市场明细失败

10049

资金账号与管理账号已建立对应关系

33200

交易类别非法

10050

签约银行不存在

 

 

14005

连接市场失败

33210

当日已经有成功转入的相同交易

14006

发送请求到市场失败

33220

不支持该业务类别

14007

接受市场应答失败

33230

没有该客户账号对应的信息

14008

连接交易系统失败

 

 

70000

参数错误

 

 

70001

其他错误

 

 

 

 

 

 

 

返回码

返回信息

返回码

返回信息

21001

连接银行前置失败

21101

连接数据库失败

21002

发送数据到银行前置失败

21102

数据库连接中断不接受指令

21003

接收银行前置应答失败

21103

系统暂时不接受指令

21004

发送数据到资金管理中间件失败

21104

Sql语句执行失败

21005

接收资金管理中间件应答失败

21105

存储过程执行失败

21006

银行前置发送请求到银行失败

21106

等待审核

21007

银行前置接收银行应答失败

 

 

21008

银行前置返回银行应答到资金管理失败

21107

保证金转货款失败

21009

连接银行失败

21108

货款转保证金失败

21010

协议号转换失败

21109

原密码错误

21011

帐户银行类型错误

21110

会员号不存在

21012

返回应答到交易客户端,资金管理客户端失败

21111

修改出金审核限额失败

21013

协议版本错误

21112

登录帐号不存在

21014

资金管理登录密码错误

21113

登录密码错误

21015

通用错误标志(发回错误信息)

21114

帐号未登录

21016

协议解析错误

21115

系统未日结

21017

连接交易后台失败

21116

已有未审核资金,不允许再出金

21018

接收交易后台返回信息失败

 

 

21019

发送数据到交易后台失败

 

 

第3章 具体指令格式

3.1支持的交易指令

3.1.1交易号编码规则

交易号共5位数字,第一位标识由那方发起交易,,后4位标识交易的编号流水.

第一位代表意义

交易号

描述

5

市场方发起交易

1

银行方发起交易

8

资金管理客户端

9

客户端发起交易

3.1.2市场发起交易

交易号

交易名称

交易描述

50001

市场签到

 

50002

市场签退

 

50003

银行转帐签约

 

50004

银行转帐解约

 

50005

银行转市场

 

50006

市场转银行

 

50007

冲银行转市场

 

50008

冲市场转银行

 

50009

市场手续费划转

此协议用在担保金三方监管模式

50010

市场手续费收益转结算帐户

 

50011

变更银行账户

 

50012

查询某笔交易状态

 

50013

取银行转帐明细

系统对账用

50014

发送市场资金信息

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1