Card decline code
invalid_expiry_year: Invalid expiry year
The expiry year entered for the card is invalid. The customer needs to correct the expiry date.
What invalid_expiry_year means
invalid_expiry_year means the year part of the expiry date was not accepted.
Should you retry the payment?
Ask the customer to re-enter the card.
How to recover a subscription payment declined with invalid_expiry_year
- Email the customer a link to re-enter their card details on your billing page.
- Do not retry the stored card: the same data will be declined again.
- Once the details are corrected, collect the open invoice immediately.
What to tell the customer
Ask them to check and re-enter the expiry date.
"Hi Sam, the expiry year on your card wasn't accepted. Please re-enter your card details here."
More wording for every situation is in our dunning email templates.
How Revnio handles invalid_expiry_year
Revnio records invalid_expiry_year on the failed payment, follows your retry schedule (by default 1, 3, 5 and 7 days, adjusted for the customer's value and plan, and moved to weekday business hours), and emails the customer a secure link to pay or update their card. WhatsApp (Pro plan) reminders follow if the email is not clicked. The Insights page shows how often each decline code recovers for you. On Paddle, Paddle runs the payment retries itself and Revnio handles the customer outreach.
Decline codes are returned by the card issuer through your payment processor. Code names here follow Stripe's; Chargebee and Paddle surface the same issuer reasons with their own wording. Last reviewed 2026-10-15.
Frequently asked questions
What does decline code invalid_expiry_year mean?
The expiry year entered for the card is invalid. The customer needs to correct the expiry date.
Should I retry a payment declined with invalid_expiry_year?
Only with the correct date. Ask the customer to re-enter the card.
Can Revnio recover payments declined with invalid_expiry_year?
Revnio picks up the failed payment from Stripe, Chargebee or Paddle, adjusts retry timing to the decline code, and reaches the customer by email and WhatsApp (SMS is coming soon) with a secure link to pay or update their card.
Recover failed payments on autopilot
Revnio retries failed payments at the right time and reaches customers by email and WhatsApp until the card is fixed. Works with Stripe, Chargebee and Paddle.
Related
- invalid_expiry_monthThe expiry month entered for the card is invalid. The customer needs to correct the expiry date.
- expired_cardThe card on file has passed its expiry date. Retrying will never work; the customer needs to add the new card. It is also the most preventable failure, because you know the expiry date in advance.
- invalid_cvcThe CVC is invalid. The customer needs to re-enter their card details.
- All decline codesEvery common card decline code, grouped by what to do next.
- Dunning email templatesCopy-ready emails for each kind of failed payment.