Payment decline reasons
Each error message the buyer sees on the checkout, what it means and what you can do in your store to fix it.
When a payment doesn't go through, the checkout opens a window titled "We could not complete your payment", with a short message and the "Fix it and try again" button. The details the buyer typed stay in the form.
The messages on this page are the checkout's English ones. The buyer reads the same message in their checkout's language. The payment under review or declined page explains the same topic to the buyer.
Where to see the real reason
The checkout never shows the buyer the provider's technical code. To find out what happened:
- Open SalesTransactions and click the order with the Failed status.
- In the Payment attempts card, each row is a call to a payment account. The Error column shows the code and message the provider returned, in English.
A decline before the order exists, such as an invalid coupon or an address outside the delivery area, doesn't create an order. In those cases, the reason is the message the buyer sees.
Declines by the bank or the provider
When the provider declines the card, the buyer sees: "Your payment was declined. Check the card details or try another card." If the provider fails without giving an answer, the buyer sees: "Payment failed. Please try again."
The codes vary from one provider to another. These are the most common groups in the Error column:
| Code examples | What it means | What you can do |
|---|---|---|
CARD_DECLINED, do_not_honor, insufficient_funds, card_velocity_exceeded | A decline by the card's bank, due to balance, limit or no stated reason. A new attempt may go through. | Have a fallback account in the payment flows: it tries to charge when the first one declines. Suggest another card or PIX (Brazil's instant payment) to the buyer. |
expired_card, suspected_fraud | A final decline: expired card or a purchase flagged as suspicious by the bank. Trying again with the same card won't help. | The buyer needs to use another card or talk to their bank. |
issuer_unavailable, PROVIDER_UNAVAILABLE | The bank or the provider didn't respond in time. | Ask the buyer to try again in a few minutes. A fallback account in the flows also helps. |
PAYMENT_FAILED | The provider declined without explaining. The message next to it usually has the details. | Read the message. If it mentions account details or configuration, check the connection with Test in PaymentsProviders. |
payment_expired | The PIX or the boleto (Brazilian bank payment slip) expired unpaid. | Nothing in the store. The buyer can go back to the checkout and generate another code. |
3D Secure
For charges with bank authentication, the Provider response column also shows the 3DS result. When authentication fails, the bank declines the charge even with the right card.
Errors in the card form
These messages appear before the charge reaches the provider. The buyer fixes the issue and tries again. No new order or attempt is recorded.
| The buyer sees | What happened | What you can do |
|---|---|---|
| "A card field is still missing. Check the number, the expiry date and the CVV." | A card field was left empty or incomplete. | Nothing. |
| "The card details don't match. Check the number, the expiry date and the CVV." | The number, expiry date or CVV isn't valid. | Nothing. |
| "This card has expired. Check the expiry date or use another card." | The expiry date has passed. | Nothing. |
| "We do not accept this card brand. Please try another card." | The card brand isn't accepted by the store's payment accounts. | Check each provider's card brands in features by provider. To accept another brand, connect a provider that accepts it. |
| "Enter a valid document" | The CPF (Brazilian individual taxpayer ID) or CNPJ (Brazilian company taxpayer ID) is wrong. The checkout validates the check digits. | Nothing. The buyer corrects the document in the details step. |
| "We could not reach the server. Check your connection and try again — your order is still here." | The buyer's internet dropped during payment. | Nothing. |
| "The payment form is not ready yet." | The buyer clicked pay before the card field finished loading. | Nothing. They wait a moment and click again. |
Order errors
These messages come from a store rule or from the checkout's state.
| The buyer sees | What happened | What you can do |
|---|---|---|
| "This store cannot take payments in this currency. Pick another one, if offered, or contact the seller." | No active connection in the store accepts the chosen currency. | Connect a provider that accepts that currency or remove the price in that currency from the offer. See features by provider. |
| "Installments are not available at this store right now. Choose to pay in full and try again." | The payment account that received the sale refused installments. | Open PaymentsInstallments and click Save changes again: saving the rule is what makes the accounts accept installments. See installments. |
| "The total is below the minimum charge. Remove the coupon and try again." | With the discounts, the total fell below one unit of the currency, such as R$ 1.00. | Review the coupon's discount in CatalogCoupons. See coupons. |
| "One of the coupons is no longer valid. Remove it and try again." | The coupon expired, was deactivated or hit its usage limit while the buyer was on the checkout. | Check the coupon in CatalogCoupons. |
| "One of the add-on offers is no longer available." | A ticked order bump was paused or deleted during the purchase. The checkout unticks the box on its own. | Nothing, if it was on purpose. Otherwise, check the offer's order bumps. |
| "This pack is no longer available." | The link's pack was deleted. | Check the offer's packs and the link used on the sales page. |
| "We do not deliver to this address." | No shipping zone covers the address. | Review the zones in CatalogShipping. |
| "Choose a shipping method." or "Enter the delivery address." | A physical product's shipping method or address is missing. | Nothing. The buyer completes the form. |
| "We do not sell to the selected country." or "We do not deliver to the selected country." | The buyer's or the delivery country is outside the countries the store accepts. | Review the selling and delivery countries in where you sell and deliver. |
| "This checkout stayed open for too long and expired. Your details are still filled in: just start a new checkout to pay." | The checkout stayed open for more than 24 hours. The window's button changes to "Start a new checkout". | Nothing. |
| "This checkout has expired. Reload the page to continue." | The same checkout was already paid or is waiting for a PIX, for example in another tab. | Nothing. |
| "We could not start the payment right now. Your details are fine — try again in a moment or contact the store." | The payment platform refused to open the checkout for a reason unrelated to the buyer's details. | Check that the store's connections are active and tested in PaymentsProviders. If it continues, contact Vipter support. |
| "We could not start the checkout. Please review your details." | Some detail in the contact step is in a format the checkout doesn't accept. | Nothing. |
| "No payment method is available for this merchant right now." | There is no active payment flow for card or for PIX. | Create or activate a flow in PaymentsPayment flows. |
| "Payment could not be loaded" | The payment field didn't load in the browser. | Ask the buyer to reload the page or try another browser. |
Payment link unavailable
When the link can't sell, the buyer sees the "This payment link is not available" page, with the text "The offer may have been disabled or the link is incorrect. Contact the seller." That page's address has the reason after ?reason=:
| Reason | What happened | What you can do |
|---|---|---|
not_found | The link doesn't exist, the store was deleted or the custom domain doesn't belong to this store. | Check the link copied from the offer. |
link_disabled | The offer's Payment link is turned off. | Turn on Link enabled in the offer. |
offer_archived | The offer was archived. | Unarchive the offer. |
no_prices | The offer has no price. | Add a price to the offer. |
no_settleable_price | No active connection accepts the currencies of the offer's prices. | Connect a provider that accepts that currency. |
pack_unavailable | The link points to a pack the offer no longer has. | Use the pack's current link. |
project_unavailable | The store isn't selling: activation not finished, store Suspended or sales paused by Selling is paused: an overage charge is open. Update the card to sell again. | See store status. |
Declines after the purchase
- In a one-click upsell, the buyer sees "The card did not authorize this charge. Your original purchase is still confirmed." when the bank declines, or "We could not process this offer right now. Your original purchase is still confirmed." when the charge couldn't be made. The first purchase doesn't change. See one-click upsell.
- In a sale made from the dashboard on the customer's saved card, the dashboard shows Sale declined: provider code
- In a subscription extra charge, the dashboard shows Extra charge declined: provider code
In both dashboard cases, the reason is the same code as in the Error column, and the table in the first section of this page helps you read it.
What to do next
- Set up a fallback account for temporary declines in payment flows.
- See what each order status means in order, subscription and project statuses.
Order, subscription and project statuses
What each status shown in the dashboard means for orders, payment attempts, subscriptions, abandoned checkouts and the store itself.
Features by provider
Reference table with the payment methods, installments, countries, currencies, card brands, features, credentials and webhook of each provider Vipter connects to.