Visa · Processing Errors

Visa Reason Code 12.2: Incorrect Transaction Code

Updated November 6, 2026 · Part of the Visa reason code guide

Visa reason code 12.2 applies when a transaction was processed with the wrong transaction code. The classic case is a refund processed as a sale, so the cardholder is charged instead of credited. It also covers a credit processed when a reversal was required. Win it by proving the code was correct.

What Visa reason code 12.2 means

Reason code 12.2 is a Processing Errors dispute about the type of transaction, not its amount or date. Every card transaction carries a code that says whether it is a purchase (debit), a refund (credit) or another type. If the wrong code is used, money moves in the wrong direction.

Visa’s condition covers:

  • A credit processed as a debit: the customer was supposed to receive a refund and was charged instead.
  • A debit processed as a credit, the reverse error.
  • A credit processed when a reversal was required, for example refunding a transaction that should have been voided.

12.2 is a collaboration code. You can respond in the dispute-response stage, and the issuer can continue to pre-arbitration if it rejects your response.

Most 12.2 disputes are valid. It is a mechanical error, and when it happens the cardholder genuinely lost money.

Common causes

  • Staff selecting “sale” instead of “refund” on a POS terminal
  • Custom or legacy payment integrations that send the wrong transaction type for refunds
  • Voids and refunds handled inconsistently across systems
  • Manual entries in a virtual terminal for phone orders or exchanges

Evidence that wins a 12.2 dispute

  1. The order record showing the disputed transaction was a genuine purchase: items, total, customer and order ID (for example AB1-10023).
  2. Transaction logs from your gateway showing the transaction type and the action that created it.
  3. For credit-instead-of-reversal claims, your explanation and records showing why a credit was the correct way to return the funds, with its amount and date.
  4. Customer communication confirming the purchase, if the cardholder disputes the transaction type in bad faith.

How to prevent 12.2 chargebacks

  • Use refund functions that reference the original transaction instead of keying a new one.
  • Restrict manual virtual-terminal entries to trained staff.
  • Test refund and void flows in any custom payment integration, and retest after every update.
  • Reconcile refunds daily: every refund in your order system should match a credit at the processor.

Should you fight or accept?

Fight when the disputed transaction was a real sale, coded correctly, and the cardholder has misread their statement or is trying to reverse a valid purchase.

Accept when you find the error. Don’t also issue a separate refund, or the cardholder will be credited twice. If you’ve already refunded, the issue overlaps with disputes after a refund and your response should show the credit clearly.

Frequently asked questions

What is Visa reason code 12.2?
Visa reason code 12.2, Incorrect Transaction Code, is a processing-error chargeback. It means the transaction was submitted with the wrong transaction code, most commonly a credit (refund) processed as a debit (sale), so the cardholder was charged when they should have been credited.
How do I win a Visa 12.2 chargeback?
Provide records showing the transaction code was correct for what happened, such as an order and sale record proving the charge was a genuine purchase, not a mis-keyed refund. If a credit was processed instead of a reversal, explain why the credit was appropriate.
Should I just refund a 12.2 dispute?
If you did process a refund as a sale, the cardholder was charged twice in effect and the dispute is valid. Accept it rather than issuing a separate refund, so the customer isn't credited twice.

Related reason codes

Browse every Visa, Mastercard, Amex and Discover reason code →