ISO 8583 Parser
Free ยท Reference ยท ~6 min read ยท Updated 2026-08-07

ISO 8583 Processing Codes: The Full DE3 List

DE3 is six digits in three pairs: what kind of transaction this is, which account the money leaves, and which account it lands in. Read it as TT FF TT โ€” transaction type, from-account, to-account. Get the pairing wrong and a cash withdrawal reads as a purchase.
On this page: Transaction type codes ยท From / to account codes ยท Reading a full value ยท Two traps

What are the DE3 transaction type codes?

The first two digits say what the cardholder is doing. This is the pair that decides how the transaction is priced, which limits apply, and whether it counts as cash for lending purposes.

CodeTransaction type
00Goods and services (purchase)
01Cash withdrawal
02Adjustment
09Purchase with cashback
17Quasi-cash / fast cash
18Service charge
20Returns / refund
21Deposit
28Payment transaction โ€” funds pushed to the card account (Mastercard-defined)
30Balance inquiry
31Statement / mini-statement
40Transfer
50Payment
72Pre-authorization
91PIN change
92PIN unblock

Not every row above is universal. The core codes (00/01/09/20/30) read the same almost everywhere, but beyond that core the values are assigned by each scheme or host. 28 is a documented example: Mastercard's public Transaction Processing Rules define it as a Payment Transaction (a transfer of funds to an account) in both authorization and clearing messages โ€” other hosts assign the same slot differently. Outside the core, check the spec for the channel you are actually parsing.

What do the from-account and to-account digits mean?

Digits 3โ€“4 are the from account and digits 5โ€“6 are the to account. Both use the same code set. On a plain purchase both are usually 00, because there is only one account involved and the scheme infers it.

CodeAccount type
00Default / unspecified
10Savings account
20Checking (current) account
30Credit account
38Credit card account
40Universal account
50Investment account
60Electronic purse

How do you read a value like 011000?

Split it into three pairs and read left to right:

DE3Reads as
000000Purchase, both accounts unspecified โ€” the ordinary retail sale
011000Cash withdrawal from a savings account
012000Cash withdrawal from a checking account
200000Refund, accounts unspecified
301000Balance inquiry on a savings account
401020Transfer from savings to checking

Two things that bite in production

In short: DE3 is 2 + 2 + 2 โ€” type, from, to. On a card-present purchase you will see 000000 nearly every time; anything else is telling you the transaction is not a plain sale, and that usually means different pricing.

Read next