UBA ESB ISO 8583 Protocol Specification 1.3
UBA ESB ISO 8583 Protocol Specification 1.3
UBA ESB ISO 8583 Protocol Specification 1.3
SPECIFICATIONDOCUMENT.
Version: 1.0
Release State:
Approval State:
Contributors:
Confidentiality
Category:
Project Id:
Revision History
The current software releases are implementing an external message based on the
International Organization for Standardization (ISO) 8583:1993 standard.
The message specifications in this manual are applicable to the ISO-based external
message only.
2. OBJECTIVES
The objective of this document is to enable Third Party systems integrate with UBA
centralised ESB efficiently through ISO 8583 protocol.
3. ESB COMMUNICATION PROTOCOL
ESB Interface supports the TCP/IP transport protocol.
TCP/IP is a point to point communication protocol with a delivery guarantee and data sequence guarantee. The
connecting party, which initiates a connection, is a TCP/IP client. The connection party, which accepts the
connection, is a TCP/IP server. TCP/IP client establishes connection identifying а target application with an IP
address of the host and a port number within that host. If the connection is dropped by any reason it should be
re-established by the client application.
ESB can act in a TCP/IP connection as a client or as a server depending on the host configuration. For data
transmission TCP/IP uses sessions. Each session is a bi-directional data stream. ESB protocol uses a single
TCP/IP session to transfer data between hosts in both directions.
4. MESSAGES STRUCTURE
MTI Description
1200 Financial Transaction request
1210 Financial Transaction response
1220 Financial Transaction Advice
1221 Financial Transaction Advice Repeat
1230 Financial Transaction Advice Response
Description: Authorization Request (1100) message requests approval authorization or guarantee for
the transaction to proceed. Authorization Response (1110) is expected in return for 1100 message,
either approving or denying the request.
Description: Authorization Request (1100) message requests approval authorization or guarantee for the
transaction to proceed. Authorization Response (1110) is expected in return for 1100 message, either approving
or denying the request.
Description: Financial Transaction Request (1200) is used to seek approval for a transaction that if approved, can
be immediately applied to the cardholder’s account for billing or statement purposes. Financial Transaction
Response (1210) is expected in return for 1200 message, either approving or denying the request.
Description: Financial Transaction Response (1210) is returned in response to Financial Transaction Request
(1200) to approve or deny the request.
Description: Financial Transaction Advice (1220) advises of a previously completed financial transaction. Format
and contents of fields at 1220 message are the same as at 1200 message. Each 1220 message must be
acknowledged with 1230 message.
Description: Financial Transaction Advice Repeat (1221) is identical to 1220 message, except that
it denotes to the receiver that it is a possible duplicate message. Format and contents of fields at 1221 message are
the same as at 1200 message. This message is used when an expected acknowledgement to 1220 message was not
received.
Description: Financial Transaction Advice Response (1230) is used to acknowledge the receipt of 1220 or 1221
message. Format and contents of fields at 1230 message are the same as at 1210 message.
9. REVERSAL MESSAGES
Description: Reversal Request (1420) is used to cancel part or all of a previously approved
transaction. Reversal Response (1430) is expected in return for 1420 message, either approving
or denying the request.
Description: Reversal Repeat (1421) is identical to 1420 message, except that it denotes to the receiver that it
is a possible duplicate message. 1421 message is used when an expected acknowledgement to 1420 message
was not received.
1430 – Reversal
Response
Description: Reversal Response (1430) is used to acknowledge the receipt of 1420 or 1421
message.
Description: Reversal Advice Request (1420) is advice to cancel part or all of a previously approved
transaction. Reversal Advice Response (1430) is expected in return for 1420 message, either approving the
request.
1430 – Reversal
Response
Description: Reversal Response (1430) is used to acknowledge the receipt of 1420 or 1421
message.
Description: Network Management Request (1804) message is used to perform echo tests. 1804
message always requires 1814 message in response.
S Special characters
B 8 bytes (64 bits) in binary format. Each bit signifies the presence (1) or the
i absence (0) in the message of the data field associated with that particular bit
t
x “C” for credit, “D” for debit and shall always be associated with a numeric
– amount data field, i.e., x+n 16 in amount, net reconciliation means prefix “C”
or “D” and 16 digits of amount, net reconciliation
M
z Tracks 2 and 3 code set as defined in ISO 4909 and ISO 7813
a
p
11.2 Data Field Format
MM Month
DD Day
YY Year
hh Hour
mm Minute
SS Second
L Length of variable data field that follows, from 01-99. The variable length
L subelement is two numeric characters.
L Length of variable data field that follows, from 001-999. The variable length
L subelement is three numeric characters.
L
L Length of variable data field that follows, from 0001-9999. The variable length
L subelement is four numeric characters.
L
L
V Variable length data field.
A
R
Data Field Presence Conditions
C – Conditional. Field/value is present in the message under certain conditions, which are
explained in Data Field Description.
M – Mandatory. Field/value must be present in the message.
O – Optional. Field/value presence in the message is up to the message initiator or the
responder.
Format
Bit-Map
Description
This field is a bit map indicating the presence or absence of fields in the secondary portion of
the message, bits 65-128. This field should only be present if there is at least one field from the
secondary range in the message.
Format
llvar n.. 19
Description
Format
n6
Description
The processing code is a series of three two-byte codes. The first two bytes (bytes 1 and 2)
indicate the type of transaction.
See the following table for valid values.
TWO-BYTE TRANSACTION DESCRIPTION
CODE
31 Balance Inquiry
01 Cash Withdrawal
21 Cash Deposit
38 Mini statement
50 Bill Payments
40 Funds Transfer
42 Airtime Purchase
62 Cardless Origination
63 Cardless Fulfilment
36 Account lookup
The second and third two bytes (bytes 3 and 4, and bytes 5 and 6) indicate the account 1 and
account 2 type, respectively. See the following table for valid values.
TWO-BYTE CODE ACCOUNT DESCRIPTION
0X Default-unspecified
1X Savings account
2X Checking account
3X Credit account
4X Others Account
5X Loans Account
6X Envelope Account
7X Escrow Account
8X Money Market Account
9X Loyalty Account
The non-zero value in second byte of each pair (i.e. byte 4 and 6) indicates an order of account that
is used in transaction in the list of card accounts with the same type. Valid values are 0-9.
Format
n 12
Description
Funds requested by the cardholder in the local currency of the acquirer or source location of the
transaction, exclusive of amounts, fees.
In the 1100 balance inquiry request, this field will contain zeroes. In the 1110 balance inquiry
response, this field will contain the account balance or zeroes if account balance is negative.
Format
n 12
Description
This field contains the transaction amount (Field 4), converted to the currency used to bill the
cardholder‟ s account. The conversion rate is in Field 10. No decimal point appears in this field;
the decimal place is implied based on the currency. If it is present, the following fields are also
required: “Field 10: Conversion Rate, Cardholder Billing”.
Field 7: Date and Time, Transmission
Format
n 10
MMDDhhmmss
Description
Date and time this message was sent by the message initiator.
Format
n8
Description
This field contains the rate used to convert the transaction amount (Field 4) to the cardholder
billing amount (Field 6). The Field 4 amount multiplied by this rate equals the Field 6 amount.
The left-most digit denotes the number of positions the decimal separator shall be moved from
the right (allowable values are 0 to 7). Positions 2–8 of the field are the actual rate.
For example: 69985022 = 9.985022.
Format
n6
Description
Format
n 6 hhmmss
Description
The time at which the transaction takes place at the card acceptor location, specified in local
time.
This field is also used to match a response message with its original message.
Format
n4
YYMM
Description
The year and month that the card will become expired.
This field specifies expiration date of the card defined in field 2 or field 48 Tag 96. If the field is
not present, the last issued active card used.
Format
n4
Description
A code describing the merchant’s type of business product or service. See ISO-8583 standard
documentation for the list of valid categories.
Format
n3
Description
Format
n3
Description
The Card Sequence Number data field contains the SVFE member number for the card that
initiated the transaction. Member numbers are used by SVFE to differentiate multiple cards
issued with the same card number.
Format
n3
Description
Code indicating the specific purpose of the message within its message class. See the following
table for valid values.
FU DESCRIPTION M
NC
100 Original Authorization request E
11
TI
20 Original financial request S
0
12
ON
0
40 Reversal, transaction did not S
0
CO
0 complete as approved A
0
4
DE
Field 25: Point of Service Condition Code G
0
E
0
Format T
Y
n2 P
E
Description
A code identifying transaction conditions at the point of service, thus, in many cases, identifying a
type of original or subsequent transaction. The field could be used for 01x0, 02x0, 04x0 requests.
Following values are possible:
„00 Normal transaction of this type
„01 Cardholder not present
„02 Unattendant terminal
„05‟ Customer present, Card Not Present
„08‟ Mail/telephone or e-commerce order (includes recurring transactions)
Description
Value of the fee charged by the acquirer for transaction activity in the currency of DE 4 (Amount, Transaction).
Description
Value of the fee charged by the acquirer for transaction activity in the currency of DE 4 (Amount, Transaction).
Format
llvar n.. 19
Description
This field contains the card number for card2 in P2P transaction.
Format
llvar z.. 37
Description
Format
an 12
Description
A reference supplied by the system retaining the original source information and used to assist in locating
that information or a copy thereof.
If no reply was received to the original transaction Field 037 must still be present, but it should contain a string of
spaces.
Format
an 6
Description
Code Assigned by authorizing institution indicating approval
Format
an 2
Description
A code which defines the action taken or to be taken as well as the reason for taking the action.
Format
ans 8
Description
Format
an 15
Description
Code identifying the merchant which defines the point of transaction in both local and interchange
environments.
Format
ans 40
Description
The name and location of the card acceptor. This field is required in authorization requests, advice messages
and related reversal requests for all card-read transactions. It contains the information necessary for printing
on customer account statements and on credit card billing statements.
Positions 1–(N-1), Terminal Location: The terminal location expressed as a terminal branch number, street
address, or equivalent.
Positions (N), Separator: value „
Positions (N+1)–37, City Name: The terminal location name of the city where the terminal is located, branch
number, or street address. Position N is between 10 and 30.
Positions 38, Separator: value „
Positions 39–40, Country Code: The two-character ISO alpha country code for the country where the
terminal is located. Country codes must be upper case.
This field will contain the transaction narration for Non ATM transactions. The same should be reflected
Format
lllvar ans …999
Tag data format: 3 bytes for each tag name + 3 bytes for each tag length + tag data
Description
For responses this field is used for sending additional information to terminal in various tags.
Format
Description
For responses this field is used for sending additional information to terminal in various tags.
Format
n3
Description
Format
B8
Description
Used to identify the cardholder at the point of service. For devices with a Pin Pad connected, this field should
contain the PIN information to be verified. If the transaction is not associated with a PIN, this field should not
be present.
Format
Description
Information on up to six amounts and related account data. It is used to hold balance information for
balance inquiry transactions, and also the cashback amount for a purchase with cashback transaction.
Information on up to 6 each 20 characters in length. Each block has the following format:
Position Format Field name Description
1-2 n2 Account type 2 digit code giving the
account type that the
amount relates to. Values
should be as for field P3
(Processing Code)
account types.
Format
Description
Format
Description
Private Data, Multiple, contains multiple data with similar type. Internal Data Depends on transaction type.
For Client`s Additional Data Inquiry field contains information on cardholder additional services. If the
transaction has no additional services for this client identifier, this field should not be present.
For Payment field contains variants of payment data.
Format
b8
Description
The Primary Message Authentication Code data field carries the message authentication code (MAC) for the
message. This code is generated by ANSI X9.19 Method. Fields at MAC are filled in according type of
message formats represented at next chapter “MASSAGE FORMAT” (look at last column “Field Used For
MacY or N”)
If the message contains secondary data fields, Field 128 is used to carry the message authentication code. If
the message authentication code is carried in Field 128, Field 64 is not included in the message.
Field 70: Network Management Code
Format
n3
Description
Format
n 42
Description
This field contains data from original transaction, intended to identify a transaction for correction or
reversal
Format
an 1
Format
n 12
Description
Field 95 contains the corrected amount of a transaction in the transaction currency. It is necessary
only for partial reversals.
Field 98: payee
Format
llvar ans.. 99
Description
Field is used in bill payments, P2P and other services to transfer additional information from transaction source
to issuer, acquirer or any other party involved in transaction.
Format
llvar ans.. 99
Description
Field is used in cardholder transactions. Field identifies an account number of cardholder relationship.
Format
llvar ans.. 99
Description
Field is used in cardholder transactions. Field identifies second account number of cardholder relationship.
For example, “TO account” for transfers.
Format
Description
Private Data, Additional Sets, contains multiple data sets for Client`s Additional Data Inquiry
transaction. Data type depends on requested data type .
Format
b8
Description
The Secondary Message Authentication Code data field carries the message authentication code (MAC) for the
message. See Field 64: Primary MAC Data
12. NETWORK MANAGEMENT
Request
70 Network n3 M 301
Management Code
Response
Field
Bit Data field Name Format Attri- Sta- Comments / Remarks Used For
No butes tus Mac Y or
. N
- Message Type n4 M Always is 1804 N
- Bit Map, Primary b64 M N
70 Network n3 M 301 N
Management Code
13. TRANSACTIONS
Request
28 Transaction Fee N9 C
30 Excise duty N9 C
37 Retrieval Reference an 12 M
Number
41 Card Acceptor Terminal ans 8 M
Identification
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
49 Currency Code n3 M
Request
28 Transaction Fee N9 C
30 Excise duty N9 C
37 Retrieval Reference an 12 M
Number
41 Card Acceptor Terminal ans 8 M
Identification
42 Card Acceptor an 15 M
Identification Code
37 Retrieval Reference an 12 M
Number
49 Currency Code n3 M
Request
37 Retrieval Reference an 12 M
Number
41 Card Acceptor Terminal ans 8 M
Identification
42 Card Acceptor an 15 M
Identification Code
Page 35
49 Transaction Currency n3 M
Response
Page 36
38 Authorization code N6 M Authorization code
43 Card Acceptor Name and ans 40 M Copied from the request message
Location
Request
Page 37
7 Transmission Date and MMDDhhmmss n10 M
Time
11 Systems Trace Audit n6 M
Number
12 Time, Local Transaction hhmmss N6 M
37 Retrieval Reference an 12 M
Number
41 Card Acceptor Terminal ans 8 M
Identification
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Response
Page 38
- Bit Map, Secondary b64 C If first bit in primary bitmaps is
1.
2 Primary Account Number LLVAR n…19 C The primary Account Number
of the card.
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Page 39
13.5 Funds Transfer
Request
37 Retrieval Reference an 12 M
Number
41 Card Acceptor Terminal ans 8 M
Identification
42 Card Acceptor an 15 M
Identification Code
Page 40
52 PIN Block B8 M Packed PIN value
Response
Bit Attri- Sta-
No. Data field Name Format butes tus Comments / Remarks
7 Transmission Date and MMDDhhmmss n10 M Copied from the request message
Time if present.
37 Retrieval Reference an 12 M
Number
38 Authorization code N6 C Authorization code
Page 41
39 Response Code N2 M
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
103 Account 2 identification LLVAR ans…99 M Copied from the request message
if present.
123 Source Channel LLLVAR Ans…999 O Copied from the request message
if present.
Bit Attri- St
No. Data field Name Format butes a- Comments / Remarks
tu
- Message Type n4 sM Value is 1200
- Bit Map, Primary b64 M
Page 42
28 Amount, Transaction Fee N9 C Charge Amount
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Response
Bit Attri- St
No. Data field Name Format butes a- Comments / Remarks
tu
- Message Type n4 sM Always 1210
- Bit Map, Primary b64 M
Page 43
3 Processing Code n6 M 500000
NN – Account type
37 Retrieval Reference an 12 M
Number
39 Response code An 2
copied from the request message
41 Card Acceptor Terminal ans 8 M
Identification
copied from the request message
42 Card Acceptor an 15 M
Identification Code
copied from the request message
43 Card Acceptor Name and ans 40 M
Location
copied from the request message
49 Transaction Currency n3 M
Bit Attri- St
No. Data field Name Format butes a- Comments / Remarks
tu
- Message Type n4 sM Value is 1200
- Bit Map, Primary b64 M
Page 44
- Bit Map, Secondary b64 C If first bit in primary bitmaps is
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Page 45
123 Source Channel LLLVAR Ans..999 O Indicates the source of the
transaction
Response
Bit Attri- St
No. Data field Name Format butes a- Comments / Remarks
tu
- Message Type n4 sM Always 1210
- Bit Map, Primary b64 M
37 Retrieval Reference an 12 M
Number
38 Authorization code An 6 O Authorization code
39 Response code An 2
copied from the request message
41 Card Acceptor Terminal ans 8 M
Identification
copied from the request message
42 Card Acceptor an 15 M
Identification Code
copied from the request message
43 Card Acceptor Name and ans 40 M
Location
copied from the request message
49 Transaction Currency n3 M
Page 46
102 Account identification LLVAR ans…99 C Operation Account Number.
Debit Account
Request
Page 47
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Response
7 Transmission Date and MMDDhhmmss n10 M Copied from the request message
Time if present.
Page 48
12 Time, Local Transaction hhmmss N6 M Copied from the request message
if present.
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
103 Account identification LLVAR ans…99 C Copied from the request message
if present.
123 Source Channel LLLVAR Ans..999 O Copied from the request message
if present.
Request
Bit Attri- St
No. Data field Name Format butes a- Comments / Remarks
tu
- Message Type n4 sM Value is 1200
- Bit Map, Primary b64 M
Page 49
2 Primary Account Number LLVAR n…19 C The primary Account Number
of the card or Virtual pan
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Response
Page 50
Bit Attri- St
No. Data field Name Format butes a- Comments / Remarks
tu
- Message Type n4 sM Always 1210
- Bit Map, Primary b64 M
37 Retrieval Reference an 12 M
Number
38 Authorization code An 6 O Authorization code
39 Response code An 2
copied from the request message
41 Card Acceptor Terminal ans 8 M
Identification
copied from the request message
42 Card Acceptor an 15 M
Identification Code
copied from the request message
43 Card Acceptor Name and ans 40 M
Location
copied from the request message
49 Transaction Currency n3 M
100 Biller Identifier LLVAR ans…99 M copied from the request message
Page 51
13.10 Cardless Fulfilment
Request
Bit Attri- Sta-
No. Data field Name Format butes tus Comments / Remarks
2 Primary Account Number LLVAR n…19 C The Virtual PAN defined for
Cardless fulfilment.
37 Retrieval Reference an 12 M
Number
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Page 52
80 Secret code/PIN LLVAR Ans..9 C Secret code/OTP/PIN
9
Response
2 Primary Account Number LLVAR n…19 C copied from the request message
Page 53
copied from the request message
41 Card Acceptor Terminal ans 8 M
Identification
copied from the request message
42 Card Acceptor an 15 M
Identification Code
copied from the request message
43 Card Acceptor Name and ans 40 M
Location
copied from the request message
49 Transaction Currency n3 M
2 Primary Account Number LLVAR n…19 C The Virtual PAN defined for
Account lookup.
Page 54
7 Transmission Date and MMDDhhmmss n10 M
Time
11 Systems Trace Audit n6 M
Number
12 Time, Local Transaction hhmmss N6 M
37 Retrieval Reference an 12 M
Number
41 Card Acceptor Terminal ans 8 M
Identification
42 Card Acceptor an 15 M
Identification Code
49 Transaction Currency n3 M
Response
Bit Attri- Sta-
No. Data field Name Format butes tus Comments / Remarks
2 Primary Account Number LLVAR n…19 C The Virtual PAN defined for
Account lookup.
Page 55
copied from the request message
11 Systems Trace Audit n6 M
Number
copied from the request message
12 Time, Local Transaction hhmmss N6 M
Page 56