You are on page 1of 6

ISO8583 Transaction Types

Message type indicator (MTI)[edit]


The message type indicator is a four-digit numeric field which indicates the overall function of the
message. A message type indicator includes the ISO 8583 version, the Message Class, the
Message Function and the Message Origin, as described below.
ISO 8583 version[edit]
The first digit of the MTI indicates the ISO 8583 version in which the message is encoded.

Code Meaning

0xxx ISO 8583:1987

1xxx ISO 8583:1993

2xxx ISO 8583:2003

3xxx

4xxx

5xxx Reserved by ISO

6xxx

7xxx

8xxx National use

9xxx Private use

Message class[edit]
Position two of the MTI specifies the overall purpose of the message.

Code Meaning Usage


x0xx Reserved by ISO

Determine if funds are available, get an approval but do not


x1xx
Authorization
post to account for reconciliation. Dual message system (DMS),
message
awaits file exchange for posting to the account.

Determine if funds are available, get an approval and post


x2xx Financial messages directly to the account. Single message system (SMS), no file
exchange after this.

x3xx
File actions
Used for hot-card, TMS and other exchanges
message

Reversal (x4x0 or x4x1): Reverses the action of a previous


Reversal and
x4xx
authorization.
chargeback
Chargeback (x4x2 or x4x3): Charges back a previously cleared
messages
financial message.

x5xx
Reconciliation
Transmits settlement information message.
message

x6xx
Administrative Transmits administrative advice. Often used for failure
message messages (e.g. message reject or failure to apply).

x7xx
Fee collection
messages

Network
x8xx
Used for secure key exchange, logon, echo test and other
management
network functions.
message

x9xx Reserved by ISO

Message function[edit]
Position three of the MTI specifies the message function which defines how the message should
flow within the system. Requests are end-to-end messages (e.g., from acquirer to issuer and
back with time-outs and automatic reversals in place), while advices are point-to-point messages
(e.g., from terminal to acquirer, from acquirer to network, from network to issuer, with
transmission guaranteed over each link, but not necessarily immediately).
Code Meaning Notes

xx0x Request

xx1x Request response

xx2x Advice

xx3x Advice response

xx4x Notification

xx5x
Notification
acknowledgement

xx6x Instruction

ISO 8583:2003 only


xx7x
Instruction
acknowledgement

xx8x
Some implementations[which?] use for positive
acknowledgment.[citation needed]
Reserved for ISO use

xx9x
Some implementations[which?] use for negative
acknowledgment.[citation needed]

Message origin[edit]
Position four of the MTI defines the location of the message source within the payment chain.

Code Meaning

xxx0 Acquirer

xxx1 Acquirer repeat


xxx2 Issuer

xxx3 Issuer repeat

xxx4 Other

xxx5 Other repeat

xxx6

xxx7

Reserved by ISO
xxx8

xxx9

Examples[edit]
Given an MTI value of 0110, the following example lists what each position indicates:

 0xxx → version of ISO 8583 (0 = 1987 version)


 x1xx → class of the message (1 = authorization message)
 xx1x → function of the message (1 = response)
 xxx0 → who began the communication (0 = acquirer)
Therefore, MTI 0110 is an authorization response message sent by the acquirer.
Bearing each of the above four positions in mind, an MTI will completely specify what a message
should do, and how it is to be transmitted around the network. Unfortunately, not all ISO 8583
implementations interpret the meaning of an MTI in the same way. However, a few MTIs are
relatively standard:

MTI Meaning Usage

Request from a point-of-sale terminal for authorization


0100 Authorization Request
for a cardholder purchase

Request response to a point-of-sale terminal for


0110 Request Response
authorization for a cardholder purchase
When the point-of-sale device breaks down and you
0120 Authorization Advice
have to sign a voucher

0121 Authorization Advice Repeat If the advice times out

0130
Issuer Response to
Confirmation of receipt of authorization advice
Authorization Advice

Request for funds, typically from an ATM or pinned


0200 Acquirer Financial Request
point-of-sale device

0210
Issuer Response to
Issuer response to request for funds
Financial Request

0220 Acquirer Financial Advice


e.g. Checkout at a hotel. Used to complete transaction
initiated with authorization request

Acquirer Financial Advice


0221 If the advice times out
Repeat

0230
Issuer Response to
Confirmation of receipt of financial advice
Financial Advice

0320 Batch Upload File update/transfer advice

0330 Batch Upload Response File update/transfer advice response

0400 Acquirer Reversal Request Reverses a transaction

0510 Batch Settlement response Card acceptor reconciliation request response

Network Management Hypercom terminals initialize request. Echo test, logon,


0800
Request logoff etc.

Network Management Hypercom terminals initialize response. Echo test, logon,


0810
Response logoff etc.
Network Management
0820 Key change
Advice

Bitmaps[edit]
In ISO 8583, a bitmap is a field or subfield within a message, which indicates whether other data
elements or data element subfields are present elsewhere in the message.
A field is considered to be present only when the corresponding bit in the bitmap is set. For
example, a byte with value 0x82 (decimal 130) is binary 1000 0010, which means
fields 1 and 7 are present in the message and fields 2, 3, 4, 5, 6 and 8 are not.
The bitmap may be represented as 8 bytes of binary data, or as sixteen hexadecimal characters
(0-9, A-F) in the ASCII or EBCDIC character sets. A message will contain at least one bitmap,
called the primary bitmap, which indicates which of data elements 1 to 64 are present. The
presence of an optional secondary bitmap is also indicated by bit 1 of the primary bitmap. If
present, the secondary bitmap indicates whether data elements 65 to 128 are present. Similarly,
a tertiary bitmap can be used to indicate the presence of fields 129 to 192, although these data
elements are rarely used.
Examples[edit]
Given a bitmap value of 42 10 00 11 02 C0 48 04,
0x42 = 0100 0010 (counting from the left, the second and seventh bits are 1, indicating
that fields 2 and 7 are present)
0x10 = 0001 0000 (the first bit corresponds to field 9, so the fourth bit here indicates
field 12 is present)
0x00 = 0000 0000 (no fields present)
0x11 = 0001 0001 (fields 28 and 32 are present)
0x02 = 0000 0010 (field 39 is present)
0xC0 = 1100 0000 (fields 41 and 42 are present)
0x48 = 0100 1000 (fields 50 and 53 are present)
0x04 = 0000 0100 (field 62 is present)

0 10 20 30 40 50 60
nth
bit
12345 12345 12345 12345 12345 12345 12
67890 67890 67890 67890 67890 67890 34

Bit
01000 01000 00000 01000 11000 00100 01
ma 01000 00000 00100 00010 00001 00000 00
p

Therefore, the given bitmap defines the following fields present


in the message:
2, 7, 12, 28, 32, 39, 41, 42, 50, 53, 62