Error codes

Soft decline

Stripe

invalid_cvc

The CVC number is incorrect.

What does invalid_cvc mean?

The invalid_cvc decline is returned when the CVC value is malformed — typically the wrong length or containing invalid characters. This differs from incorrect_cvc, which means the format is right but the value is wrong.

Is it a soft or hard decline?

invalid_cvc is a soft decline. The card is valid; only the CVC entry needs correction.

Common root causes

  • Customer entered only 2 digits instead of 3 (or 3 instead of 4 for Amex)

  • CVC field included letters or symbols

  • Checkout flow truncated or modified the CVC

  • Stored CVC was corrupted

Recommended recovery steps

  1. Prompt customer to re-enter CVC with the correct format

  2. Use Stripe Elements to validate CVC length in real time

  3. Use network tokens to eliminate CVC requirements on recurring charges

  4. Consider wallet payments to bypass manual CVC entry

How FlyCode handles invalid_cvc

For recurring subscription charges, FlyCode uses network tokens that don't require CVC, preventing this decline on long-term subscribers. For initial charges, FlyCode routes customers to checkout flows with real-time CVC validation.

What does invalid_cvc mean?

The invalid_cvc decline is returned when the CVC value is malformed — typically the wrong length or containing invalid characters. This differs from incorrect_cvc, which means the format is right but the value is wrong.

Is it a soft or hard decline?

invalid_cvc is a soft decline. The card is valid; only the CVC entry needs correction.

Common root causes

  • Customer entered only 2 digits instead of 3 (or 3 instead of 4 for Amex)

  • CVC field included letters or symbols

  • Checkout flow truncated or modified the CVC

  • Stored CVC was corrupted

Recommended recovery steps

  1. Prompt customer to re-enter CVC with the correct format

  2. Use Stripe Elements to validate CVC length in real time

  3. Use network tokens to eliminate CVC requirements on recurring charges

  4. Consider wallet payments to bypass manual CVC entry

How FlyCode handles invalid_cvc

For recurring subscription charges, FlyCode uses network tokens that don't require CVC, preventing this decline on long-term subscribers. For initial charges, FlyCode routes customers to checkout flows with real-time CVC validation.

What does invalid_cvc mean?

The invalid_cvc decline is returned when the CVC value is malformed — typically the wrong length or containing invalid characters. This differs from incorrect_cvc, which means the format is right but the value is wrong.

Is it a soft or hard decline?

invalid_cvc is a soft decline. The card is valid; only the CVC entry needs correction.

Common root causes

  • Customer entered only 2 digits instead of 3 (or 3 instead of 4 for Amex)

  • CVC field included letters or symbols

  • Checkout flow truncated or modified the CVC

  • Stored CVC was corrupted

Recommended recovery steps

  1. Prompt customer to re-enter CVC with the correct format

  2. Use Stripe Elements to validate CVC length in real time

  3. Use network tokens to eliminate CVC requirements on recurring charges

  4. Consider wallet payments to bypass manual CVC entry

How FlyCode handles invalid_cvc

For recurring subscription charges, FlyCode uses network tokens that don't require CVC, preventing this decline on long-term subscribers. For initial charges, FlyCode routes customers to checkout flows with real-time CVC validation.

Understanding This Decline Code

Extended content body

Frequently Asked Questions

What does invalid_cvc mean?

What's the difference between invalid_cvc and incorrect_cvc?

For initial charges, use Stripe Elements which validates CVC format in real time. For recurring subscription charges, use network tokens which bypass CVC requirements entirely.

How does FlyCode avoid CVC errors?

FlyCode uses network tokens for recurring charges which eliminate the need for CVC entirely on renewals, preventing CVC-related declines on long-term subscribers.

FlyCode partnered with Stripe, to turn failed payment intro revenue.

With our newest Stripe app, you can stop chasing your customers about their failed payments and recover more payments with zero development work.

With our newest Stripe app, you can stop chasing your customers about their failed payments and recover more payments with zero development work.

Giving Back

Partnering with organizations that promote women in technology and families in need is something we are proud to do.

Text graphic displaying "SPE CODES; NEXT LEVEL" in a bold, stylized font on a solid background.
Logo featuring a stylized text "Catching" with an orange accent, set against a simple background.

2026 FlyCode © All Right Reserved.

Giving Back

Partnering with organizations that promote women in technology and families in need is something we are proud to do.

Text graphic displaying "SPE CODES; NEXT LEVEL" in a bold, stylized font on a solid background.
Logo featuring a stylized text "Catching" with an orange accent, set against a simple background.

2026 FlyCode © All Right Reserved.