—— 报文头说明:总长度为12字节,压缩时用BCD码表示为6个字节长度的数值。
在POS上送的请求/通知报文中,该数值由POS终端应用程序在打包上送时根据POS终端参数和当前状态填入应用类别、软件版本号和终端状态,用于POS中心根据数值进行相应的处理。
在POS中心返回的响应报文中,由POS中心填入处理要求,其他域保持原值返回,POS将根据收到报文头中的处理要求进行相应处理。
报文头取值如下:
●应用类别定义:
目前只定义
磁条卡金融支付类应用为:60
IC卡金融支付类应用为: 61
磁条卡增值业务类支付为:62
IC卡增值业务类支付为: 63
●软件版本号:01
●终端状态: 1
●处理要求:1
●保留使用:以备后用
●应用数据说明:符合ISO 8583金融交换信息格式的交易数据,本文档将定义各种交易的报文格式。
5个字节的TPDU + 6个字节的报文头 + 2个字节的应用数据 + 8个字节的位图(或者16个字节的位图)
POS终端上送POS中心的消息报文结构包括TPDU、报文头和应用数据三部分:
表1 报文结构
TPDU | 报文头 | 应用数据 | ||||||
ISO8583 Msg | ||||||||
ID | 目的 地址 | 源地址 | 应用类别定义 | 软件 总版本号 | 终端 状态 | 处理 要求 | 软件分版本号 | 交易数据 |
60H | NN NN | NN NN | N2 | N2 | N1 | N1 | N6 | 不定长度 |
——TPDU说明:长度为10个字节,压缩时用BCD码表示为5个字节长度的数值。
——报文头说明:总长度为12字节,压缩时用BCD码表示为6个字节长度的数值。
在POS上送的请求/通知报文中,该数值由POS终端应用程序在打包上送时根据POS终端参数和当前状态填入应用类别、软件总版本号、终端状态和软件分版本号(具体指各厂商的程序版本号),用于POS中心根据数值进行相应的处理。
在POS中心返回的响应报文中,由POS中心填入处理要求,其他域保持原值返回,POS将根据收到报文头中的处理要求进行相应处理。
报文头取值如下:
● 应用类别定义:
目前只定义
磁条卡金融支付类应用为:60
IC卡金融支付类应用为: 61
磁条卡增值业务类支付为:62
IC卡增值业务类支付为: 63
● 软件总版本号:
表1 软件总版本号
软件总版本号 | 说 明 |
10 | 2001年人民银行POS规范之前版本 |
11 | 2001年人民银行POS规范版本 |
21 | 2002年银联POS规范版本 |
22 | 2004年银联POS规范版本 |
30 | 2009年银联POS规范版本 |
31 | 2010年银联POS规范版本(本规范) |
● 终端状态:
表2 终端状态
终端状态 | 含义 |
0 | 正常交易状态 |
● 处理要求:
表3 处理要求
处理要求编码 | 处理要求说明 |
0 | 无处理要求 |
1 | 下传终端磁条卡参数 |
2 | 上传终端磁条卡状态信息 |
3 | 重新签到 |
4 | 通知终端发起更新公钥信息操作 |
5 | 下载终端IC卡参数 |
6 | TMS参数下载 |
7 | 卡BIN黑名单下载 |
8 | 币种汇率下载(仅在境外使用)/助弄取款[1]手续费比率下载(仅在境内使用) |
● 软件分版本号: 存放软件总版本号和各厂商的程序版本号,长度为6字节。
——前两字节同软件总版本号,后四字节由厂商自行定义。
符号的定义
——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压缩编码数值