NewNo plan feeNo plan fee. Just 2.9% + $0.30 per card sale, and signing up is free.Try now →

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

Related

Payments library