Blog9 min read

Clover Payment Failures in WooCommerce — Decline Codes Explained

Payment declines are frustrating for customers and costly for merchants. Here's what each Clover decline code actually means, how to recover from soft declines, and how to prevent avoidable failures.

Most payment declines aren't plugin bugs — they're the issuing bank saying no. But some are avoidable misconfigurations on your side that turn good cards into failed transactions. This guide covers the common Clover decline codes, distinguishes soft declines from hard ones, and walks through the configuration issues that cause preventable failures.

Soft vs hard declines

Every card network distinguishes between two kinds of declines. Treating them the same is one of the biggest causes of lost revenue.

Hard declines are final: stolen card, closed account, permanently blocked. Retrying doesn't help. Common hard decline codes include 14 (invalid card number), 15 (no such issuer), 41 (lost card), 43 (stolen card), 54 (expired card), 57 (transaction not permitted).

Soft declines are temporary: insufficient funds right now, daily limit hit, risk score too high on that specific attempt. Retrying a soft decline often succeeds. Common soft decline codes include 51 (insufficient funds), 61 (exceeds withdrawal limit), 62 (restricted card), 65 (activity limit), 91 (issuer unavailable).

Common Clover decline codes, decoded

05 — Do not honor

The catch-all soft decline. Issuer is saying 'not right now' without specifics. Often risk-scored. Tell the customer to try another card or call their bank to whitelist the transaction.

14 — Invalid card number

Card number failed Luhn check or simply doesn't exist. Typo. Show a friendly error asking the customer to recheck their card.

51 — Insufficient funds

Soft. Customer's available balance is lower than the charge. Suggest a different card.

54 — Expired card

Hard. Card is past its expiration date. Customer needs a new card from their bank.

82 — CVV mismatch

Customer entered the wrong CVV. Usually a typo. Ask them to re-enter it.

NU — 3D Secure required

Issuer wants the customer to complete 3D Secure (an SMS code or bank app confirmation). If your Clover gateway has 3DS enabled, the flow continues automatically. If not, the payment fails.

Preventable configuration failures

AVS mismatch rejections

Address Verification System compares the billing address the customer enters against what their bank has on file. If your Clover gateway is configured to reject on AVS mismatch, typos in the customer's address will kill legitimate transactions. Relax AVS to match on ZIP only (or disable it) unless you're in a high-fraud vertical.

Stripe/other gateway collision

If you have another payment gateway enabled in WooCommerce (Stripe, PayPal, etc.) and Clover is misconfigured as the default, customers can end up routed through a half-configured Clover flow instead of the working alternative. Audit which gateways are enabled and set Clover as default only when it's fully configured.

Sandbox credentials in production

Every real card will fail if your plugin is using Sandbox Clover credentials against live traffic. Confirm environment = production, PAKMS key is production, App ID/Secret are production.

Expired Clover app approval

New Clover Developer apps need explicit approval for payment processing on production. If your app is still in 'pending approval' status, payments fail with a generic gateway error.

Currency mismatch

WooCommerce's store currency must match the currency your Clover merchant account is configured for. A USD merchant account can't process a transaction initiated in EUR.

Recovering from declines

  • On soft declines, show the customer a retry button that reloads the Clover iframe. Don't force them back to the cart.
  • Offer alternative payment methods at checkout (PayPal, Apple Pay if available) so a single-card decline doesn't lose the sale.
  • For recurring subscriptions that fail, set up a dunning email flow that asks the customer to update their card within 7 days before canceling.

Debugging a specific failure

  1. Open the WooCommerce order that failed. Find the payment error message — it usually includes the Clover response code.
  2. Cross-reference the code with the list above. If it's a soft decline, that's a customer-side issue.
  3. If it's a gateway or configuration error, check plugin settings: environment, credentials, app approval status.
  4. If the customer swears it should have worked, ask them to try the same card with another merchant to confirm the card itself is alive.
  5. If it looks like a fraud-filter rejection, check your AVS/CVV settings — you may be rejecting legitimate customers.
Tip: Log every failed payment attempt with the decline code and timestamp. Over a month, patterns emerge — a spike of '05 do not honor' from a single IP is fraud; a spike of CVV failures after a theme update is your checkout UX breaking.

Frequently asked questions

Is a decline a refund?

No. A declined transaction didn't charge the customer's card at all — nothing to refund. The failed attempt may appear briefly as a pending authorization but drops off within a few days.

Should I automatically retry soft declines?

Not without customer consent. Auto-retrying can hit bank limits and get you flagged. Let the customer retry or offer a 'try another card' flow.

Does CloverWoo support 3D Secure?

Yes — when enabled in your Clover gateway settings, Clover's hosted iframe handles the 3DS challenge flow automatically. No additional plugin work required.

Why do test cards work in Sandbox but not in production?

Clover Sandbox accepts a specific set of test card numbers. Production will reject them — only real cards work against production credentials.

Run Clover + WooCommerce as one system

CloverWoo — sync, payments, and POS operations in one plugin for $60/month.