简述ISO8583报文结构?什么是位图?

ISO8583报文,是一个国际标准的包格式,用于系统交换持卡人使用支付卡发起的电子交易。最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。
在这里插入图片描述
TPDU:长度为10个字节,压缩时用BCD码表示为5个字节长度的数值。

报文头:总长度为12字节,压缩时用BCD码表示为6个字节长度的数值。

在POS上送的请求/通知报文中,该数值由POS终端应用程序在打包上送时根据POS终端参数和当前状态填入应用类别、软件总版本号、终端状态和软件分版本号(具体指各厂商的程序版本号),用于POS中心根据数值进行相应的处理。
在POS中心返回的应答报文中,由POS中心填入处理要求,其他域保持原值返回,POS将根据收到报文头中的处理要求进行相应处理。

ISO8583Msg:信息类型域(2字节)+位图域(一般8字节,如果使用到65~128域则为16字节)+报文数据域。

【示例】

8583报文大部分情况下用在POS终端与后台收单系统的数据交换,一般情况下一段完整的报文由以下几个部分组成:

[长度(2字节)] + [TPDU(5字节)]+[报文头(6字节)]+[8583数据]

例如,一个签到报文报文:

003B600006000060220000000008000020000000C000120012473538443031313135383837353844303438313635353535001100000001003000023031

报文长度:00 3B=59个字节

TPDU:60 00 06 00 00

Header:60 22 00 00 00 00

ISO8583Msg:信息类型0800 + 位图0020000000C00012 + 各域数据。

由位图数据可得域是11 41 42 60 63,再看规范中的各域信息定义可知:

11域:00 12 47
41域:35 38 44 30 31 31 31 35
42域:38 38 37 35 38 44 30 34 38 31 36 35 35 35 35
60域:00 11 00 00 00 01 00 30
63域:00 02 30 31

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐