ISO 8583 response code: 14
The primary account number does not correspond to an account the issuer knows. The card number is either mistyped, malformed, or routed to an issuer that does not own that range.
Invalid card number (no such number)Hard decline
Retrying the same request will fail the same way.
What it means
Field 2 carries the PAN as a length-prefixed numeric string. A 14 means the value arrived intact but names no account — a different failure from a card that exists and was declined. It is one of the few declines that genuinely points at the data rather than at a decision, which makes it worth validating locally before it ever reaches the network.
Common causes
- A digit mistyped by the cardholder. A PAN that fails the Luhn check is usually rejected before it reaches the issuer, but a Luhn-valid typo is not.
- The PAN truncated or padded by a length-prefix error, so the issuer receives the wrong number of digits.
- A test PAN sent to a production endpoint, or a real card sent to a sandbox that only knows its own test ranges.
- The BIN routed to the wrong issuer, so the account is real but the recipient does not own that range.
How to fix it
- Validate the PAN with the Luhn algorithm before sending it. It catches single-digit typos and most transpositions at zero cost and without a network round trip.
- Check the length prefix on field 2 matches the digits sent. This is a variable-length field, and a wrong prefix truncates the PAN into a number that is not a card.
- Confirm the environment matches the card. Test card ranges do not exist in production, and live cards do not exist in a sandbox.
- Check the network the BIN belongs to. IIN ranges overlap between schemes, so routing on a partial prefix can send a card to an issuer that never had it.
Tools that help
Frequently asked questions
- Does a Luhn check catch every invalid card number?
- No. Luhn catches all single-digit errors and most adjacent transpositions, but a great many Luhn-valid numbers correspond to no real account. It is a cheap first filter that saves a network round trip on obvious typos, not a validity test.
- Why did a card that worked yesterday start returning 14?
- Most often the card was reissued with a new number, or your code started truncating it. If it is one card, assume reissue; if it started for many cards at once, look at whether field 2's length prefix or your PAN storage changed.