ISO 8583 Parser
免费 · 完整速查 · 9 分钟 · 最后更新 2026-08-11

ISO 8583 MTI 报文类型码:完整对照表

MTI(Message Type Indicator,报文类型标识)是每条 ISO 8583 报文的前四位数字,一次回答四个问题:哪个版本的标准、什么业务类别、是请求还是通知、由谁发出。本页两部分:四位数字逐位怎么读,以及实际会遇到的全部 MTI 对照表——每个类型一行,写清什么时候出现、配对的响应是哪个。想交互式地拆某个 MTI,用 MTI 报文类型速查工具;想看它在整条报文里的样子,贴进解析器

四位数字怎么读:一位一个问题

0420 从左往右拆:0 = ISO 8583:1987 版,4 = 冲正类,2 = 通知(advice),0 = 受理方发起。这样读下来,「1987 版、受理方发出的冲正通知」直接从数字里长出来,四个位置记熟之后根本不用查表。下面把每一位的完整取值列全。

第 1 位——版本

取值版本说明
0ISO 8583:1987至今绝大多数卡网络在线联机用的都是它,下文所有 0xxx 都属于这一版。
1ISO 8583:1993较新的接口和清算格式——Mastercard IPM 文件用的就是 1xxx
2ISO 8583:2003生产上极少见到。
37预留未分配。
8国家标准使用预留给各国标准机构。
9私有使用机构自定义。

第 2 位——消息类

取值类别管什么
0预留未分配。
1授权(Authorization)只批准、只冻结额度——钱还没动。
2金融(Financial)真正动钱:授权和入账一步完成。
3文件操作(File)维护对端的文件:黑名单卡表、批量上送。
4冲正 / 退单(Reversal / Chargeback)把已经发生的事情撤销掉。
5对账(Reconciliation)轧账:这个切换点两边的总数对不对得上。
6管理(Administrative)不动钱也不管链路的其它事务。
7费用收取(Fee)机构之间收费。
8网络管理(Network Mgmt)链路本身:签到、签退、回声测试、密钥。
9预留未分配。

第 3 位——功能

取值功能行为
0请求(Request)征求许可,对方可以拒绝。
1请求响应对请求的应答。
2通知(Advice)告知既成事实,对方只能确认、不能拒绝。
3通知响应对通知的确认。
4通告(Notification)单向:不求批准,也不定义应答。
5通告确认个别实现要求对通告回一条确认。
6指令(Instruction)1993/2003 版才有。
7指令响应1993/2003 版才有。
89预留未分配。

这一位在实务里分量最重:请求可以被拒绝,通知不能。发 x400 还是 x420 不是风格问题——见下文 0400 与 0420 的区别

第 4 位——来源

取值来源说明
0受理方(Acquirer)首次发送。
1受理方重发受理方对未获应答报文的重发。
2发卡方(Issuer)首次发送。
3发卡方重发发卡方对未获应答报文的重发。
4其他(Other)既非受理方也非发卡方的一方,比如转接网络。
5其他重发该方的重发。
69预留未分配。

完整 MTI 对照表

下面每个 MTI 都有自己的锚点(#m0100#m0420……),名称与本站解析器MTI 速查工具一致。响应永远在同一类里配对:0100 的应答是 0110,不会是 0200

授权类——01xx

双报文体系「先授权、后清算」,钱在清算时才动,这一类报文只负责冻结或报告冻结。一对完整的 0100/0110,逐字段拆开的版本在报文示例里。

MTI名称什么时候出现配对
0100授权请求实时授权——只冻结,不清算。双报文体系里一笔消费(POS、电商)的第一条报文。0110
0101授权请求(重发)0100 超时未应答后的重发。只有第 4 位变,DE7、DE11 必须保持原值。0110
0110授权请求响应发卡行的裁决:DE39 带回批准或拒绝,DE38 带授权码。
0120授权通知已经发生的授权——低于限额的脱机批准、代授权(stand-in)事后报给发卡行。既成事实,发卡行不能拒绝。0130
0121授权通知(重发)0120 没等到 0130 时的重发。0130
0130授权通知响应0120/0121 的确认。

金融类——02xx

单报文体系:授权和入账一步走完,ATM、PIN 借记和不少本地网络是典型。一笔完整的 0200/0210 ATM 取现在报文示例里。

MTI名称什么时候出现配对
0200金融请求授权加请款一步完成——批准即入账。0210
0201金融请求(重发)0200 未获应答后的重发,规则同 01010210
0210金融请求响应0200 的裁决;批准意味着账已经入了。
0220金融通知事后补送的已完成交易:脱机交易或代授权后的补送、强制入账、交易完成确认。0230
0221金融通知(重发)0220 没等到 0230 时的重发。0230
0230金融通知响应0220/0221 的确认。

文件操作类——03xx

维护链路对端的文件:黑名单卡表、参数表、批量记录上送。

MTI名称什么时候出现配对
0300文件操作请求增、改、删一条记录——比如黑名单卡——并等待对方应答。0310
0310文件操作请求响应接受或拒绝 0300
0320批文件通知单向推送记录,典型是交易的批量上送;对方只回确认。0330
0330批文件通知响应0320 的确认。

冲正 / 退单类——04xx

把前一条报文做过的事情撤销。带 DE90 指回原交易的 0400报文示例里逐字段拆过;超时、重发、孤儿冻结这些失败路径的完整讲法在《冲正、超时与重发》。注意:主流卡组织的退单(chargeback)走清算文件,不走联机 04xx——联机上这一类几乎全是冲正。

MTI名称什么时候出现配对
0400冲正请求请求撤销原交易,先等对方应答再动手。0410
0401冲正请求(重发)0400 未获应答后的重发。0410
0410冲正请求响应0400 的裁决——实践中几乎总是回 00
0420冲正通知我方已撤,对方必须跟着撤。超时后自动冲正走的就是它。0430
0421冲正通知(重发)0420 等不到 0430 就一直重发——超时风暴里刷屏的就是这条。0430
0430冲正通知响应0420/0421 的确认,收到后发送方停止重发。

对账类——05xx

切换点轧账:把当日或当班的笔数、金额总计换给对方,两边照同一份数字去结算。

MTI名称什么时候出现配对
0500对账请求发出总计数,请对方确认是否一致。0510
0510对账请求响应账平了,或者告诉你差在哪。
0520对账通知总计数以事实形式告知而非征询;对方只回确认。0530
0530对账通知响应0520 的确认。

管理类——06xx

不动钱、也不管链路的事务性报文:机构之间的文本消息、行政查询,以及各种卡组织自定义用途。

MTI名称什么时候出现配对
0600管理类请求需要对方回答的管理类询问。0610
0610管理类请求响应0600 的回答。
0620管理类通知单向告知的管理信息,常见是 DE120 附近字段里的自由文本。0630
0630管理类通知响应0620 的确认。

费用收取类——07xx

机构之间收费。国际卡组织的费用基本走清算文件而不是授权链路,所以线上很少见到 07xx——但标准的格子里有它,一些本地网络也在用。

MTI名称什么时候出现配对
0700费用收取请求请求记一笔费用并等待应答。0710
0710费用收取请求响应0700 的应答。
0720费用收取通知费用以事实形式告知;对方只回确认。0730
0730费用收取通知响应0720 的确认。

网络管理类——08xx

管链路本身的报文。MTI 只说「这是网络管理」,具体做什么——签到、签退、回声测试、密钥交换——写在 DE70 里。完整展开(包括一条能直接解析的回声测试)见《0800 / 0810 网络管理报文》

MTI名称什么时候出现配对
0800网络管理请求签到、签退、回显、密钥交换——哪一种由 DE70 决定。0810
0810网络管理响应应答 0800;DE39 回 00 表示这次链路操作成功。
0820网络管理通知单向的网络通知,比如密钥变更告知。0830*
0830网络管理通知响应0820 的确认——只有要求确认的实现里才有。

1993 版家族——1xxx

ISO 8583:1993 沿用同一套格子,只把第一位换成 1,所以上面的一切都可以平移:1100 的读法与 0100 完全相同。1993 版真正的增量是把功能位 47 用了起来——不期待任何应答的「通告」。这也是为什么基于 1993 版的 Mastercard IPM 清算格式里到处是 xx4x

MTI名称什么时候出现
1100 / 1110授权请求 / 响应0100/0110 的 1993 版写法;在线跑 8583:1993 的网络在用。
1120 / 1130授权通知 / 响应0120/0130
1200 / 1210金融请求 / 响应0200/0210
1220 / 1230金融通知 / 响应0220/0230
1240金融通告金融类 + 功能位 4:不期待应答。Mastercard IPM 清算里承载提交(presentment)的就是它。
1420 / 1430冲正通知 / 响应0420/0430;请求与重发变体同样按格子平移。
1442退单(chargeback)照格子直接拆:类 4(冲正 / 退单)、功能 4(通告)、来源 2(发卡方)。出现在清算里,不在联机上。
1644管理类通告6、功能 4、来源 4(其他)。IPM 用它承载文件头、文件尾等控制记录。
1740费用收取通告费用收取类的单向通告,IPM 清算里收费的主力类型。
1804 / 1814网络管理请求 / 响应0800/0810 的 1993 版对应;来源位取几,各实现不一。

0100 与 0200 的区别:双报文还是单报文,不是「预授权还是消费」

MTI 表最常见的误读,是把 0100 当预授权、把 0200 当消费。不是的。两者的分界在这笔交易走哪种体系

一笔交易是不是预授权,看的是 DE3(处理码)和 POS 相关字段,不是 MTI。真正的区别带来的实际后果是:批准的 0100 还需要一条清算记录才能变成钱,批准的 0200 已经是钱——这也是两者冲正时限差别很大的原因。完整流程见《一笔交易的一生》

0400 与 0420 的区别:请求撤销,还是宣布已撤销

两个都是撤销交易,差别在发送方有没有先动手

0400 冲正请求0420 冲正通知
语义「我能撤销这笔吗?」——发送方还没动手。「我已经撤了」——发送方本地已经把交易冲掉了。
能否被拒绝能;发送方必须等到 0410 才能把交易当作已冲正。不能;接收方唯一被定义的回答就是 0430 确认。
典型触发联机一切正常时的主动撤销、取消。超时或故障:应答没回来,终端不知道那笔到底成没成,先冲掉再告知。
没等到应答0401 重发。落库保存,以 0421 反复重发,直到收到 0430

发错的代价很实在:本地已经撤了却发 0400,一旦被拒你就卡死了——撤销撤不回来。通知这条路存在的意义,正是让「先把撤销做扎实、再去告知对方」成为可能。超时判定、重发节奏、DE90 如何匹配原交易,见《冲正、超时与重发》

第 4 位:谁发的,以及重发怎么标

同样的类别加功能,末位不同含义就不同。0420受理方发出的冲正通知——日常超时冲正就是它;0422 则是发卡方发出的同一种通知,有些网络在发卡侧撤销交易时用。而奇数取值表示重发0401 重发 04000421 重发 0420

重发的规则很硬,值得刻在墙上:除第 4 位外什么都不许变。DE7(传输时间)和 DE11(STAN)必须保持原值,因为接收方靠它们去重。重发时「贴心地」换了个新 STAN,那就不是重发,而是一笔全新的交易——大量重复扣款事故就是这么来的。重发得到的应答类型与首发相同:0401041004210430

0800 / 0810:另有专文

网络管理值得单独一篇,因为有意思的部分不在 MTI,而在 DE70(签到 001、签退 002、回声测试 301、密钥交换 101……)、心跳间隔,以及回声不再回来之后会发生什么。这些内容,连同一条能直接贴进解析器的 0800,都在《0800 / 0810 网络管理报文》

这张表能保证什么、不能保证什么

覆盖范围:上面的格子是 ISO 8583:1987/1993 的标准层,列出的 MTI 是真实互联中会出现的那些。各卡组织只启用其中一部分,偶尔也会挪用某些类型,还会定义私有 MTI(首位 8/9,或格子之外的取值)。当你的对端接口文档和任何一张通用表——包括这张——不一致时,以对端接口文档为准

👉 想交互式地拆 MTI,用 MTI 报文类型速查工具;想看 MTI 在完整报文里的样子、每个字段是什么,从报文示例开始——每条示例都能一键在解析器里打开。

延伸阅读