Skip to main content
Visa

Visa

Visa Issuer Response Code 12: Invalid Transaction

technical declinehard decline

Last updated: September 25, 2026

About 12 - "Invalid transaction"

Key details

Brand
Visa
Code
12
Category
Issuer Response Codes
Response
12
Detailed Response
Invalid transaction
technical declinehard decline

What it means

Visa response code 12 indicates an 'Invalid transaction.' This error occurs when the issuing bank or payment network rejects the transaction request because it contains invalid parameters or represents an operation not permitted for the card or merchant setup.

Classification & retryability

technicalhardRetryable: conditional

Do not automatically retry the identical authorization request. Retrying is only appropriate if you identify and correct a malformed payload or configuration parameter, or if the customer provides a different payment method.

Why does code 12 occur?

  • The transaction request contains missing, malformed, or conflicting data fields.
  • The cardholder's account is restricted from performing this specific type of transaction.
  • The merchant account is attempting an operation or currency not supported by the issuing bank.

How to solve 12?

Examine your gateway and processor logs to verify the format and contents of the authorization request. Ensure that all mandatory transaction fields, currency codes, and processing indicators comply with Visa network rules. If the technical request is valid, advise the cardholder to use a different card or check with their issuing bank.

Solving as a merchant

Verify that your payment integration is sending properly formatted authorization requests and that your merchant account supports the attempted payment type. If the payload is correct, prompt the customer for an alternative payment method.

Solving as a customer

Contact your card-issuing bank to verify if your card has restrictions against this type of transaction, or use an alternative payment card to complete the purchase.

Tip from SmartRetry Suppress immediate automated retries on code 12, as resubmitting identical payloads will consistently fail. Instead, verify whether the decline stems from acquirer-level terminal or currency restrictions, then conditionally reroute through an alternative processing pathway that supports the transaction configuration.

Frequently asked questions about this topic

Share this article

Share on XShare on FacebookShare on LinkedIn
Kyle Regacho

Author

Kyle Regacho
LinkedInFind me on Linkedin

Focused on payment recovery, decline codes, and authorization optimization at SmartRetry. Helps payment teams turn failed transactions into recovered revenue

Read all articles >
View all