Decline codes
PayPal decline codes: what each one means and what to do
Checked
PayPal reports a failed payment in two ways. A card payment carries a processor response code, such as 0500 DO_NOT_HONOR or 5120 INSUFFICIENT_FUNDS, set by the bank or processor. Any PayPal payment can also fail with an Orders API error, such as INSTRUMENT_DECLINED or PAYER_ACTION_REQUIRED. Each page below gives PayPal's own meaning, what the buyer and the store can do, and what PlatformDTC does with that decline.
| Code | Meaning |
|---|---|
| 0100 | Referral: the card's bank wants the cardholder to contact it before it approves. |
| 0390 | Account not found: the bank has no account matching these card details. |
| 0500 | Do not honor: the card's bank refused the payment and gave no reason. |
| 0580 | Unauthorized transaction: the payment isn't authorized for this card. |
| 0960 | System malfunction: a technical fault stopped the payment, not a bank refusal. |
| 10BR | Issuer rejected: the card's bank turned the payment down. |
| 1310 | Invalid amount: the payment amount was refused as invalid. |
| 1320 | Invalid currency code: the currency of the payment can't be used here. |
| 1330 | Invalid account: the card's account is not valid for payments. |
| 1380 | Invalid expiration: the expiry date sent doesn't match a valid card. |
| 1382 | Invalid card verification value: the security code (CVV) was rejected. |
| 5100 | Generic decline: the card was refused and no reason was given. |
| 5110 | CVV2 failure: the card's security code didn't match. |
| 5120 | Insufficient funds: the card doesn't have enough money or credit for this payment. |
| 5140 | Card closed: the card's account has been closed by the bank or cardholder. |
| 5150 | Pick up card, special conditions: the bank wants this card out of use. |
| 5160 | Unauthorized user: the person paying isn't authorized to use this card. |
| 5170 | AVS failure: the billing address didn't match the bank's records. |
| 5180 | Invalid or restricted card: this card can't be used; PayPal says try another. |
| 5200 | Duplicate transaction: a matching payment was already submitted. |
| 5400 | Expired card: the card is past its expiry date. |
| 5650 | SCA required: the bank needs the cardholder to authenticate the payment. |
| 5700 | Transaction not permitted: outside the scope of accepted business for this card. |
| 5710 | Attempts exceed limit: too many payment attempts on this card. |
| 5910 | Issuer not available, not retriable: the bank couldn't be reached and PayPal says don't retry. |
| 5920 | Issuer not available, retriable: the bank couldn't be reached; try again later. |
| 5930 | Card not activated: the card hasn't been activated by the cardholder yet. |
| 5950 | Updated account: an updated card has been issued, so the old details were declined. |
| 6300 | Account not on file: the bank has no record of this card account. |
| 7710 | Authentication failed: the 3-D Secure check didn't pass. |
| 8000 | Processor system error: a technical fault at the processor stopped the payment. |
| 9100 | Declined, please retry: a temporary decline; PayPal's advice is to retry. |
| 9500 | Suspected fraud: the payment was flagged; PayPal says use another card. |
| 9510 | Security violation: the payment broke a security rule and was declined. |
| 9520 | Lost or stolen: the card was reported lost or stolen; PayPal says use another card. |
| 9530 | Hold, call center: the merchant must call the number on the back of the card. |
| 9540 | Refused card: the card was refused for this payment. |
| 00N7 | CVV2 failure, retry with CVV: the security code failed; try again with the right one. |
| PCVV | CVV failure: the card security code check failed. |
| PP06 | Account closed: a previously open account is now closed. |
| PPRN | Reattempt not permitted: another attempt on this payment isn't allowed. |
| PPAB | Account blocked by issuer: the card's bank has blocked the account. |
| PPAD | Billing address: the payment was refused over the billing address. |
| PPAX | Amount exceeded: the payment is over a limit on the card or account. |
| PPCT | Card type unsupported: this type of card isn't accepted for the payment. |
| PPD3 | 3-D Secure error: the card authentication step had an error. |
| PPEF | Expired funding instrument: the card or account used to pay has expired. |
| PPEL | Exceeds frequency limit: too many payments in a period on this card. |
| PPEX | Expiry date: the payment was refused over the card's expiry date. |
| PPFR | Restricted funding instrument: the card or account has a restriction on it. |
| INSTRUMENT_DECLINED | Instrument declined: the card or bank in the buyer's PayPal was refused. |
| PAYER_ACTION_REQUIRED | Payer action required: the buyer must go back to PayPal to finish the payment. |
| PAYER_CANNOT_PAY | Payer cannot pay: this buyer's and this seller's PayPal settings don't allow the payment. |
| TRANSACTION_REFUSED | Transaction refused: PayPal refused the request without a specific reason. |
| PAYEE_ACCOUNT_RESTRICTED | Payee account restricted: the merchant's PayPal account is restricted. |
| PAYER_ACCOUNT_LOCKED_OR_CLOSED | Payer account locked or closed: the buyer's PayPal account can't be used. |
| COMPLIANCE_VIOLATION | Compliance violation: PayPal declined the payment on compliance grounds. |
| MAX_NUMBER_OF_PAYMENT_ATTEMPTS_EXCEEDED | Max payment attempts exceeded: too many attempts on this order. |
| CARD_EXPIRED | Card expired: the card used through PayPal has expired. |
| CARD_TYPE_NOT_SUPPORTED | Card type not supported: this kind of card can't be processed; use another. |
| AGREEMENT_ALREADY_CANCELLED | Agreement already cancelled: the buyer's PayPal billing agreement has been cancelled. |
| REDIRECT_PAYER_FOR_ALTERNATE_FUNDING | Redirect for alternate funding: send the buyer back to pick another funding source. |
| TRANSACTION_BLOCKED_BY_PAYEE | Blocked by payee: the merchant's own PayPal fraud settings blocked the payment. |
| PAYEE_BLOCKED_TRANSACTION | Payee blocked transaction: the merchant's PayPal fraud tool declined it. |
| TRANSACTION_LIMIT_EXCEEDED | Transaction limit exceeded: the total is over a PayPal transaction limit. |
| PAYMENT_DENIED | Payment denied: PayPal declined to process the transaction. |
Processor response codes and Orders API errors
Processor response codes are four-character values PayPal returns on a declined card capture or authorization, in processor_response.response_code. They come from the card's bank or the processor and are the closest thing PayPal gives to a bank decline reason. PayPal publishes each code with a short name (for example 9500 SUSPECTED_FRAUD) and, for a few, an instruction such as "Try using another card. Do not retry the same card."
Orders API errors are the issue names PayPal returns when a request fails, for example INSTRUMENT_DECLINED when the buyer's funding source is refused, or PAYER_ACTION_REQUIRED when the buyer has to go back to PayPal. They apply to PayPal wallet payments and card payments alike.
PayPal card payments and PayPal wallet payments
When a shopper types a card into PayPal's card fields, the decline usually comes with a processor response code from the card's bank, so the reason can be as specific as an expired card or a failed security code.
When a shopper pays with their PayPal wallet, PayPal chooses the funding source inside the wallet and usually reports a failure as an Orders API error such as INSTRUMENT_DECLINED. PayPal's guidance for that case is to restart the payment so the buyer can pick another funding source.
What PlatformDTC does with PayPal declines
PlatformDTC turns every PayPal card processor code it recognises into a plain decline type (insufficient funds, expired card, bank refusal with no reason, temporary error, authentication needed or a dead card) and keeps the raw code in the failure message for support.
With Smart retry on, PayPal subscription renewals that fail for lack of funds or with a generic PayPal refusal get a longer ladder than cards: up to 7 attempts, each at least 3 days after the last, moved to the subscriber's next payday when one falls within a week, inside a window of at least 24 days. Dead agreements and closed or locked PayPal accounts are never retried: the subscription is cancelled at once, whatever the setting. Hard declines (dead, expired or restricted cards, PAYER_CANNOT_PAY) are not retried on either schedule, the default Fixed one included: the subscription is held past due and the customer is asked for a new payment method. Refusals caused by the store's own PayPal account (PAYEE_ACCOUNT_RESTRICTED, PAYEE_BLOCKED_TRANSACTION) are never blamed on the customer: the renewal is paused, retried automatically, and the merchant gets a dashboard alert.
Frequently asked questions
- Where do I find the PayPal decline code for an order?
- For card payments, in the capture or authorization's processor_response.response_code. For any PayPal payment, the failed request's error body names the issue, such as INSTRUMENT_DECLINED, in details[0].issue.
- Which PayPal decline codes should never be retried?
- PayPal itself says not to retry the same card for 5150, 5180, 9500 and 9520. Expired, closed or invalid cards, failed security codes and cancelled billing agreements also won't succeed on a retry.
- Why does PayPal say INSTRUMENT_DECLINED without a reason?
- The error covers any refusal of the buyer's chosen funding source by the processor or bank. PayPal's advice is to restart the payment so the buyer can pick another source.
- Does PlatformDTC retry PayPal subscription payments?
- Yes, for declines that can recover. With Smart retry on, funds and generic refusals get up to 7 attempts over at least 24 days, temporary errors up to 4, and bank refusals without a reason one; on the default Fixed schedule they are retried 1, 3, 5 and 7 days apart. Dead cards, expired cards and closed accounts are not retried on either schedule.
Sources
- Orders v2 API schema: processor_response.response_code — PayPal
- Orders v2 API errors — PayPal
- Handle funding failures — PayPal