Authorize.Net · Decline codes
What does Authorize.Net 317 “The credit card has expired (processor)” mean?
Checked
Authorize.Net response reason code 317, "The credit card has expired", is the processor-issued version of code 8: the processor itself declined because the card is past its expiry date. It will not succeed on retry. The shopper should pay with the replacement card or another card, and subscription customers should update their stored card.
- Type
- Hard decline
- Who declined
- The card processor
- Retry
- No. A new card or expiry date is needed.
- Shopper action
- Use your new or another card.
- Merchant action
- Request updated card details.
What PlatformDTC does
PlatformDTC classes Authorize.Net code 317 as never-retry and keeps it off its backup-processor route, since an expired card fails everywhere. 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
The processor checked the card and found it expired, even though the request passed Authorize.Net's own checks.
What the shopper can do
Use the card your bank issued to replace this one.
What the store can do
Send the customer a request to update their payment details.
For developers
errors[0].errorCode "317" (processor-issued twin of 8).
Frequently asked questions
- How is Authorize.Net code 317 different from code 8?
- Both mean the card expired; 317 comes from the processor, 8 from Authorize.Net.
- Can an expired card be charged later (Authorize.Net 317)?
- No. The customer needs to supply an updated card.
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
- 8 — The card's expiry date has passed, so it can no longer be charged.
- 316 — The processor rejected the card's expiry date as invalid.
- 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.
- 56 — The account only processes eChecks, so card payments are refused.