一、8583报文组成
TPDU |
报文头 |
应用数据 |
||||||
ISO8583 Msg |
||||||||
ID |
目的 地址 |
源地址 |
应用类别定义 |
软件 总版本号 |
终端 状态 |
处理 要求 |
保留使用(软件分版本号) |
交易数据 |
60H |
NN NN |
NN NN |
N2 |
N2 |
N1 |
N1 |
N6 |
不定长度 |
2字节的报文长度+5字节的tpdu+6字节的报文头+2字节的应用数据说明+(第14字节为位图的第一位,第14位若小于8,位图8字节,若大于等于8,位图16个字节)+各个域。
二、tpdu详解
TPDU:长度为5个字节,共10位编码,前两位为TPDN ID 一般为“60”,中间4位为TPDU 目的地址,最后4位为TPDU 源地址为“0000”,默认值为“6000030000”。
三、报文头详解
总长度为12字节,压缩时用BCD码表示为6个字节长度的数值
1、应用类别定义:
60:磁条卡金融支付类
61:IC卡金融支付类
62:磁条卡增值业务类支付
63:IC卡增值业务类支付
2、软件版本号
软件版本号 |
说 明 |
10 |
2001年人民银行POS规范之前版本 |
11 |
2001年人民银行POS规范版本 |
21 |
2002年银联POS规范版本 |
22 |
2004年银联POS规范版本 |
3、终端状态
终端状态 |
含义 |
0 |
正常交易状态 |
1 |
测试交易状态 |
处理要求编码 |
处理要求说明 |
0 |
无处理要求 |
1 |
下传终端磁条卡参数 |
2 |
上传终端磁条卡状态信息 |
3 |
重新签到 |
4 |
通知终端发起更新公钥信息操作 |
5 |
下载终端IC卡参数 |
6 |
TMS参数下载 |
5、保留使用:暂时不用,填全“0”。
—— M 强制域(Mandatory),此域在该消息中必须出现否则将被认为消息格式出错。
—— C 条件域(Conditional),此域在一定条件下出现在该消息中,具体的条件请参考备注说明。
—— O 选用域(Optional),此域在该消息中由发送方自选。。
—— Space 此域在该种消息中不出现。
—— A 字母a-z
—— n 数字0-9
—— s 特殊字符
—— an 字母和数字字符
—— ans 字母、数字和特殊字符
—— MM 月
—— DD 日
—— YY 年
—— hh 小时
—— mm 分
—— ss 秒
—— LL 允许的最大长度为99
—— LLL 允许的最大长度为999
—— VAR 可变长度域
—— b 数据的二进制表示,后跟数字表示位(bit)的个数
—— B 用于表示变长的二进制数,后跟数字表示二进制数据所占字节(Byte)的个数
—— z 按GB/T 15120和GB/T 17552的2、3磁道编码
cn BCD压缩编码数值
—— 变量XYZ的数据类型为ANS...999(LLLVAR),则表示:该变量中可含字母、数字和特殊符号,最长不超过999个字符,长度由三位数字确定。
—— 变量XYZ的数据类型为N...999(LLLVAR),则在压缩时,其长度位用右靠的BCD码压缩,而其后紧随的数字内容用左靠的BCD码压缩。这是为了保证有效内容和其位数中间无缺省填充值。若不为偶数位,左靠的数字内容后补零。由于有长度位表征该域有效内容的长度,因此后补零不会改变该域的真实值。
本文档中声明的压缩变量属性是针对POS终端与POS中心之间的消息,POS中心与任何金融机构之间的消息将全部采用ASCII码且不压缩的格式。