Incorrect card number incorrect_number
What this decline means
The card number stored for this subscription is wrong — mistyped at entry, corrupted in a migration, or belonging to a card that no longer exists in that form. The charge cannot succeed as saved.
Why it happens on subscription renewals
- A typo at checkout that passed basic format checks but fails real authorization.
- A platform or app migration carried payment data across imperfectly, leaving numbers that no longer match a live card.
- The issuer reissued the card with a new number (after fraud or a product change) and the old number is now dead.
The merchant playbook
- Don't retry — a wrong number is wrong on every attempt, and repeated invalid-number attempts look like card testing to fraud systems.
- Ask the customer to re-enter their card from scratch rather than 'check' the existing one; re-entry replaces the broken record cleanly.
- If multiple subscriptions show incorrect-number failures after an import or app switch, audit the whole migrated batch — this code clustering in time is the classic migration-damage signature.
- Combine the ask with reassurance: customers hearing 'your card number is incorrect' may worry about fraud; clarify that re-saving the card fixes it and no charge went through.
Should you retry?
Never. The stored number will be exactly as wrong tomorrow. Re-entry by the customer is the only fix, and repeated retries actively harm your fraud standing.
Common questions
How did a wrong card number get saved in the first place?
Format checks catch most typos but not all, and migrations between platforms or apps can degrade stored payment data. The failure often only surfaces at the first renewal — checkout itself may have charged a different, valid token.
Is retrying an incorrect number really harmful?
Yes — repeated authorization attempts with invalid numbers resemble card-testing fraud patterns and can draw issuer or processor attention to your store's traffic.
Related codes: invalid_payment_method · expired_card · payment_method_declined · or see the
full decline-code guide.
Where Moorly fits: Moorly reads the decline reason behind every failed renewal in your existing subscription app and applies the playbook above automatically — the right treatment per code, with a dollar figure on what each failure family costs your store. It starts read-only. Join the early-access list →
Moorly is an independent product by Velun Labs and is not affiliated with Shopify, Appstle Inc., or Seal Subscriptions s.r.o. Code names follow Shopify's public API documentation as of August 2026; bank behavior varies by issuer — always confirm against your own admin.