ISO 8583 是卡支付用的报文格式:一个报文类型,一张说明「有哪些域」的位图,再加上这些域本身。它之所以让人觉得难,多半是学的顺序不对——很多人第一次接触到的是一个芯片标签,而那时候他连这个标签所在的域在哪都还找不到。
这一页只提供顺序。下面每一个链接都是站内已有的文章或工具,没有新增内容。
两篇短文,合计四分钟。后面每一篇文章都默认你已经知道这些名词。
持卡人、商户、收单机构、发卡机构,再加卡组织。先认清这五个角色,后面报文里那些「机构标识」字段才不会看起来像一串没来由的数字。
约 2 分钟这是三件不同的事,很多人当成一件。「账对不上」的问题,大多是从把这三步混为一谈开始的。
约 2 分钟能不能看懂一段十六进制,就取决于这一阶段。顺序不要换:位图告诉你有哪些域,格式记号告诉你每个域在哪里结束,编码告诉你那是几个字节。
两分钟看完整条报文的骨架。这一阶段后面几篇,讲的就是这三个部分的细节。
约 2 分钟位图决定了这条报文里有哪些域。位图读错,后面每一个域的起止位置都会错位——所谓「解析出来全是乱码」,多半就是这么来的。
约 6 分钟这套记号告诉你:取值之前要先读几位长度。少读或多读这几位,报文就会从错误的位置被切开。
约 3 分钟同一个值,在 ASCII、压缩 BCD、EBCDIC 下占的字节数不一样。不先判断手上这段是哪种编码,数出来的位置都只是猜的。
约 6 分钟到这里你已经能把报文切成一个个域了,这一阶段是把域的值翻译成含义。这些码表没人背得下来,当成随时打开的工具页用就好。
先通读一遍,知道哪类信息大概在哪个域,之后就当查询页反复回来用——这是全站唯一一篇你会每周打开的文章。
约 10 分钟开头四位说明这是什么报文。读不懂它,你就分不清一条请求和它的重发。
约 6 分钟MTI 说明这是什么报文,DE3 说明这是什么交易。两个不同的问题,答案在两个不同的域。
约 2 分钟出了问题第一个看的就是这个域,别人来问你的时候也常常只丢给你一个响应码。
约 2 分钟卡片信息是怎么读进来的:芯片、降级、电商。同一张卡、同样的金额,这个域不同,性质就不同。
约 2 分钟两个跟踪号,经常被人搞混。现在花两分钟分清楚,以后对记录的时候能少吵一架。
约 2 分钟下面这些等真的在报文里遇到了再查就行,不会卡住下一阶段:
前面练的都是一条正常报文。真实链路上有重发、有超时,还有批准金额和你请求的不一样。
前三个阶段的自测题:这八条报文你能逐个域看下来,说明基础过关了。
约 8 分钟这条路径上最长的一篇,也是最值回时间的一篇:解析结果不对时先排除什么,包括那些根本不报错的情况。
约 13 分钟链路上唯一不涉及金额的报文,也是一条新链路接通时最先要跑通的报文。
约 6 分钟响应一直没回来的时候,你该给对方发什么;处理不对,一次重发就变成了重复扣款。
约 9 分钟批准了,不等于按你请求的金额批准。在写下「批准即全额」这行代码之前,先看这篇。
约 6 分钟DE55 不是又一个定长域,它是一堆标签的容器,所以要单独排一条顺序。别从这里开始学:连 DE55 在哪都还找不到的时候,下面这些标签是没有意义的。
一整面墙的缩写,每个一句话。先扫一遍,后面五篇才不会每句话里有四个不认识的词。
约 2 分钟整个阶段的查询表:DE55 里真正会遇到的标签,各自的长度、格式和含义。
约 10 分钟这三个标签经常被混着引用,但它们记的根本不是一回事。这里分清了,后面三篇才不会读串。
约 5 分钟别人拿一笔「看着不太对」的芯片交易来问你时,最常甩给你的就是这个标签,这里逐位讲清。
约 3 分钟卡片自己也会给出一个结论,它和你从第三阶段起一直在看的响应码不是同一个域。
约 4 分钟用户真正会问的问题——为什么这笔要输密码、那笔不用——答案就在报文里。
约 6 分钟上面六篇读顺了,再看这几篇:
授权报文只是一半。另一半第二天以文件的形式到达,而且用的是另一套字段口径。
同一笔交易,用两套字段各记了一遍。清算记录里「少了某个域」,看完这篇你就知道其实没少。
约 4 分钟退款报文里没有任何一个域直接指向原交易。五个候选键分别由谁生成、各自在什么情况下匹配不上。
约 4 分钟没有结业证书这回事——判断标准是:给你一条没人加过注释的报文,你能说出它是什么、它在请求什么、对方回了什么。文章总目录把站内所有文章按主题(而不是按顺序)分组,工具总目录里是全部速查与解析工具。