The Message Type Indicator (MTI) is the four-digit “header” that tells you what an ISO 8583 message is trying to do—before you interpret amounts, merchant IDs, or EMV blobs. If the MTI is wrong for your state machine, everything downstream is nonsense: you might parse fields as if they were a request when they are actually a response, or treat a financial message like network management traffic.
This guide explains how MTIs are structured in common ISO 8583 teaching models, what the digits typically represent, and how to connect MTI literacy to practical debugging—especially when paired with tools like ISO8583Studio, a free desktop payment testing application for Windows, macOS, and Linux (https://iso8583.studio).
What is an ISO 8583 0200 message?
An ISO 8583 0200 is a financial transaction request: the message an acquirer sends to an issuer to ask for a transaction to be approved and posted to the account in one step (a 0100 is the authorization-only request). Its four digits decompose as version 0 (ISO 8583:1987), message class 2 (financial transaction), message function 0 (request) and originator 0 (acquirer). The issuer answers with a 0210, the financial transaction response, which carries the decision in Field 39. The request/response pair is therefore 0200 → 0210.
Related MTIs in the same family: 0220 financial advice, 0221 advice repeat, 0230 advice response, 0400 reversal request, 0410 reversal response, 0800 network management request (sign-on, sign-off, echo test) and 0810 its response. Networks restrict which MTIs they accept and add their own, but the 0200/0210 pairing comes from the ISO 8583:1987 base standard. In ISO8583Studio you can send a 0200 to a local host simulator and script the 0210 that comes back.
The MTI’s job in one sentence
The MTI classifies the message so both endpoints agree on which fields are expected, which state transitions are legal, and how responses correlate to requests.
The four-digit model: version, class, function, origin
Many references describe the MTI as four parts (one digit each):
- Version —
0= ISO 8583:1987,1= ISO 8583:1993,2= ISO 8583:2003. Almost all card networks still use0. - Message class —
1authorization,2financial,3file action,4reversal / chargeback,5reconciliation,6administrative,7fee collection,8network management. - Message function —
0request,1request response,2advice,3advice response,4notification,5notification acknowledgement. - Originator —
0acquirer,1acquirer repeat,2issuer,3issuer repeat,4other,5other repeat.
Why this matters in debugging
Teams often stare at Field 39 while the real inconsistency is earlier: the MTI does not match the handler. For example, treating an advice message like a normal authorization request can cause you to look for the wrong correlation identifiers or evaluate response rules incorrectly.
Requests vs responses: pairing logic
ISO 8583 integrations usually require strict pairing between requests and responses. Practically, that means your software must track:
- The MTI family you sent
- The expected response MTI pattern for your implementation
- Correlation fields (such as STAN, date/time fields, retrieval reference, and network-specific tokens—exact requirements vary)
If your pairing is wrong, “duplicate” or “late response” issues become indistinguishable from host bugs.
The MTIs you will actually see
| MTI | Meaning | Reply |
|---|---|---|
0100 |
Authorization request (approval only, no funds movement) | 0110 |
0120 |
Authorization advice | 0130 |
0200 |
Financial transaction request (authorize and post) | 0210 |
0220 |
Financial advice (e.g. offline-approved, forced post) | 0230 |
0400 |
Reversal request | 0410 |
0420 |
Reversal advice | 0430 |
0500 |
Reconciliation / settlement request | 0510 |
0800 |
Network management (sign-on, echo test, key exchange) | 0810 |
Networks layer their own rules on top — Mastercard uses 0100/0110 for authorization and 1240 for clearing, Visa restricts which classes a given endpoint may send — but the digit meanings above are the ISO 8583:1987 base and are stable across them. Your implementation guide tells you which of these a given endpoint accepts; it does not redefine what they mean.
MTI + bitmap together: the two-part headline
Experienced engineers read traces in this order:
- MTI → what conversation are we in?
- Bitmap → which fields are actually present?
- Fields → parse with the correct lengths and encoding
Skipping straight to Field 54 (amounts) is how people misinterpret variable-length boundaries.
A quick sanity pattern for newcomers
When you are handed a “random decline,” write down the MTI, the bitmap hex, and the first three fields you believe are present before you touch response codes. That single habit prevents hours of chasing issuer policy when the real issue is a parser mismatch or a duplicated header in your capture pipeline.
Implementation reality: variants and custom mappings
ISO 8583 is a framework; processors extend it. You may encounter:
- Additional transport headers
- Proprietary fields inside DE62/DE63/DE127-style containers
- Gateway wrappers that log “ISO-like” payloads with extra metadata
Always ask: Is this MTI from the raw ISO stream or from an internal API representation?
Practical examples
The flows below use the standard MTIs; your network's guide tells you which of them a given endpoint supports.
- A message whose function digit indicates request should have a response whose function digit indicates response under your ruleset.
- Network management messages may have very different field expectations than financial messages—your parser should route by MTI class before applying business validations.
If you paste examples into notes, include the full MTI and the hex bitmap—half-context screenshots waste time.
How ISO8583Studio helps you practice MTI literacy
ISO8583Studio is designed for payment developers who need local, repeatable inspection of ISO 8583 artifacts alongside simulators and calculators. When you are learning a new network’s dialect, a desktop workbench accelerates the loop: capture bytes → parse structure → validate assumptions → compare to host documentation.
Download the latest release:
Conclusion
The MTI is the entry point to ISO 8583 understanding: it sets intent, message family, and request/response posture before you touch individual fields. Learn the digit model at a high level, then go deep on your network’s tables—because payments is a standards-plus-contracts domain. Pair MTI discipline with bitmap discipline, and use ISO8583Studio to keep parsing and simulation workflows on your machine, under your controls, while you integrate faster with fewer wrong turns.



