ISO 8583 response code

ISO 8583 response code is the two-character code an issuer or network returns in a card authorization response, such as 00 approved, 05 do not honor, 51 insufficient funds or 54 expired card, telling the merchant what happened and what to do next.

Also called: response code, decline code, authorization response code, issuer response code, network decline code, raw decline code

Updated

On this page4 sections

How does an ISO 8583 response code work?

ISO 8583 is the message standard used for card authorizations between acquirers, networks and issuers. Stripe’s guide notes that an ISO 8583 message has 128 fields; one of them carries the response code. 00 means approved. Everything else explains a decline or an error. Stripe’s list of Visa codes includes 05 do not honor, 14 invalid account number, 41 lost card, 43 stolen card, 51 not sufficient funds, 54 expired card, 57 transaction not permitted to cardholder, 91 issuer or switch inoperative, 96 system malfunction and 1A additional customer authentication required.

Why do response codes matter?

They decide what happens next. Visa groups its codes into categories: Category 1 codes such as 04, 14, 41, 43 and 57 mean the issuer will never approve, and Visa does not allow reattempts, while Categories 2 to 4 allow a capped number. As an illustrative example: of 5,000 declines in a month, 700 carry Category 1 codes. A policy that retries every decline once sends 700 attempts that cannot succeed and that count against the merchant; a code-aware policy sends none.

What makes response codes hard to use?

Generic codes such as 05 hide the real reason, and some issuers use them even for permanent problems. Providers rename and regroup codes. Networks reuse numbers with different meanings, such as Mastercard code 65, which Stripe lists as exceeds withdrawal count limit or an Identity Check soft decline. And codes change over time, so mappings need regular review against real outcomes.

Where does Omno use it?

Omno’s routing-decision log records the response code for every attempt, a rejected payment moves to the next provider in the merchant’s rule, and success metrics break declines down by provider, method and country.

Frequently asked questions

Are response codes the same on every network?

The common codes are shared, but each network has its own list and meanings differ at the edges. Stripe's reference lists separate code tables for Visa, Mastercard, American Express, UnionPay and other networks, and Mastercard adds merchant advice codes that change what a response code means.

Why do my providers show different decline reasons for the same card?

Providers translate network codes into their own labels and sometimes group several codes under one label. Store the raw network code next to the provider's label, so you can compare providers and apply network retry rules correctly.

esc
↑↓ to move ↵ to open All results