← All Stripe decline codes
Card update requiredHard decline

invalid_expiry_year

Expiration year is invalid

Category

Hard decline

Retryable

No — update the card

Suggested retry

No auto-retry

What it means

The expiry year saved on the card is not a valid year.

Why it happens

A data-entry error, or an already-expired year saved by mistake.

How to recover the payment

Ask the customer to re-enter a valid expiry year.

Category tip: Not worth retrying automatically until the card is updated.

Recovery email preview

Subject: Action needed — your payment did not go through

The expiry year on your card looks wrong. Please update your card details.

Update payment method

Sent automatically by churnguardian the moment this code appears.

How churnguardian handles it

churnguardian stops automatic retries and emails the customer a one-click link to update their card, so recovery happens as soon as they act.

  • Decline-aware retries timed to recovery odds
  • Branded recovery emails with a one-click card update
  • Stops automatically the moment the charge clears
Start recovering payments

At a glance

Retryable
No
Retry window
No auto-retry
Card must be replaced
Yes

Frequently asked

What does the Stripe decline code invalid_expiry_year mean?+

The expiry year saved on the card is not a valid year.

Is the Stripe decline code invalid_expiry_year retryable?+

Ask the customer to re-enter a valid expiry year.

How do I recover a payment declined with invalid_expiry_year?+

Ask the customer to re-enter a valid expiry year.

What should I send the customer for invalid_expiry_year?+

The expiry year on your card looks wrong. Please update your card details.

Recover your first failed payment this week

Join bootstrapped and early-stage SaaS teams winning back thousands in MRR every month, on autopilot.

14-day free trial · No credit card required