Authorize.Net · Decline codes
What does Authorize.Net 8 “The credit card has expired” mean?
Checked
Authorize.Net response reason code 8, "The credit card has expired", means the expiry date on the card is in the past, so the transaction cannot be processed. Retrying will not help. The shopper should use the replacement card their bank sent, or another card. For subscriptions, ask the customer to update the saved card before the next billing date.
- Type
- Hard decline
- Who declined
- Authorize.Net (expiry check)
- Retry
- No. The card needs replacing; only a new card or new expiry date works.
- Shopper action
- Use the replacement card or another card.
- Merchant action
- Ask the customer to update their card.
What PlatformDTC does
PlatformDTC classes Authorize.Net code 8 as never-retry: checkout shows Authorize.Net's "The credit card has expired" message and does not try a backup processor, because no processor can charge an expired card. On a subscription renewal the code is not retried: the subscription is held past due and the customer gets an email with a link to add a new card.
Why it happens
Every card carries an expiry month and year. Once that date passes, Authorize.Net rejects the card with code 8.
What the shopper can do
Look for the new card your bank mailed before the old one expired, or pay with a different card.
What the store can do
For recurring billing, contact customers ahead of their card's expiry and send a link to update the payment method.
For developers
errors[0].errorCode "8"; 317 is the processor-issued version. Stored customer profiles keep the old date until you update the payment profile.
Frequently asked questions
- Can I retry an expired card decline (Authorize.Net 8)?
- No. Only an updated card or expiry date will be approved.
- What should a subscriber do after an Authorize.Net code 8 renewal failure?
- Enter the replacement card's details, including its new expiry date and security code, through the store's update-card link. On PlatformDTC the renewal is not retried on the expired card; the link arrives by email.
Sources
- Authorize.Net Response Code Tool (response reason codes) — Authorize.Net
- Authorize.Net response codes (JSON list behind the Response Code Tool) — Authorize.Net
Related
- 317 — The processor declined because the card has expired.
- 7 — The expiry date was sent in the wrong format or is not a valid date.
- 4 — The processor reports the card must be picked up: the issuer wants it out of use.
- 78 — The security code (CVV) sent was in the wrong format, for example the wrong number of digits.
- 11 — An identical transaction was sent within the duplicate window (two minutes by default).
- 318 — The processor rejected the request as a duplicate of an earlier transaction.
- 17 — Your Authorize.Net gateway is not set up to accept this card brand.
- 28 — Your processor platform is not set up to accept this card brand.