Error codes
Soft decline
Adyen
Adyen code 12 – Invalid Transaction
The transaction is invalid. The shopper should contact their issuing bank for clarification.
What does Adyen refusal code 12 mean?
Adyen refusal code 12 Invalid Transaction is returned when the issuing bank does not accept the transaction type, parameters, or combination being attempted. The card itself is usually valid — the issuer just won't process this specific transaction in this form.
Is it a soft or hard decline?
Code 12 is a soft decline in classification, but blindly retrying the same payload rarely helps. Recovery typically requires changing something about the transaction (routing, MIT/CIT flagging, 3DS) or collecting a different payment method.
Common root causes
Credential-on-file (stored card) transaction not tagged correctly as MIT vs CIT
Missing 3-D Secure when the issuer requires it
Prepaid or restricted card types that don't accept this transaction
Cross-border transactions with formatting the issuer rejects
Incorrect or unsupported amount formatting
Recommended recovery steps
Verify MIT/CIT indicators on recurring and stored-card transactions.
Apply 3-D Secure if absent and the issuer is in an SCA region.
Try an alternate acquirer or route if your setup supports it.
Request a different payment method if the card type doesn't support this transaction.
How FlyCode handles Adyen code 12
FlyCode identifies 12 declines and applies appropriate routing, authentication, and transaction-indicator adjustments where the merchant configuration allows. When the block is structural (e.g., closed-loop prepaid cards), FlyCode triggers AI outreach for a compatible payment method.
What does Adyen refusal code 12 mean?
Adyen refusal code 12 Invalid Transaction is returned when the issuing bank does not accept the transaction type, parameters, or combination being attempted. The card itself is usually valid — the issuer just won't process this specific transaction in this form.
Is it a soft or hard decline?
Code 12 is a soft decline in classification, but blindly retrying the same payload rarely helps. Recovery typically requires changing something about the transaction (routing, MIT/CIT flagging, 3DS) or collecting a different payment method.
Common root causes
Credential-on-file (stored card) transaction not tagged correctly as MIT vs CIT
Missing 3-D Secure when the issuer requires it
Prepaid or restricted card types that don't accept this transaction
Cross-border transactions with formatting the issuer rejects
Incorrect or unsupported amount formatting
Recommended recovery steps
Verify MIT/CIT indicators on recurring and stored-card transactions.
Apply 3-D Secure if absent and the issuer is in an SCA region.
Try an alternate acquirer or route if your setup supports it.
Request a different payment method if the card type doesn't support this transaction.
How FlyCode handles Adyen code 12
FlyCode identifies 12 declines and applies appropriate routing, authentication, and transaction-indicator adjustments where the merchant configuration allows. When the block is structural (e.g., closed-loop prepaid cards), FlyCode triggers AI outreach for a compatible payment method.
What does Adyen refusal code 12 mean?
Adyen refusal code 12 Invalid Transaction is returned when the issuing bank does not accept the transaction type, parameters, or combination being attempted. The card itself is usually valid — the issuer just won't process this specific transaction in this form.
Is it a soft or hard decline?
Code 12 is a soft decline in classification, but blindly retrying the same payload rarely helps. Recovery typically requires changing something about the transaction (routing, MIT/CIT flagging, 3DS) or collecting a different payment method.
Common root causes
Credential-on-file (stored card) transaction not tagged correctly as MIT vs CIT
Missing 3-D Secure when the issuer requires it
Prepaid or restricted card types that don't accept this transaction
Cross-border transactions with formatting the issuer rejects
Incorrect or unsupported amount formatting
Recommended recovery steps
Verify MIT/CIT indicators on recurring and stored-card transactions.
Apply 3-D Secure if absent and the issuer is in an SCA region.
Try an alternate acquirer or route if your setup supports it.
Request a different payment method if the card type doesn't support this transaction.
How FlyCode handles Adyen code 12
FlyCode identifies 12 declines and applies appropriate routing, authentication, and transaction-indicator adjustments where the merchant configuration allows. When the block is structural (e.g., closed-loop prepaid cards), FlyCode triggers AI outreach for a compatible payment method.
Understanding This Decline Code
Extended content body
Frequently Asked Questions
Is Adyen code 12 a soft or hard decline?
What transactions commonly fail with code 12?
Common cases include stored-card transactions missing MIT/CIT indicators, cross-border charges needing 3DS, prepaid cards that don't accept subscriptions, or unsupported amount/currency formatting.
Does FlyCode retry Adyen 12?
FlyCode classifies 12 as a non-retry decline when the cause is structural and triggers customer outreach for a compatible payment method or routing adjustments where the merchant can resolve it directly.

