Skip to content

Payment Gateway Not Working in WooCommerce? We Trace and Fix It

Customers say they paid, but orders sit at Pending payment, or every payment fails with a vague error. We follow one real payment from your store to the gateway and back, find where it breaks and fix that link.

Backup before every change Clear upfront pricing WhatsApp support No lock-in contract
What's Included

What We Cover

Every engagement includes the items below. If your situation needs something different, we discuss it before we start — no surprises.

Matching affected orders against payments in the gateway dashboard
Checking live and test mode, API keys and account status in the plugin
Verifying webhook or notification URLs and secrets after domain changes
Finding firewall, security plugin or CDN rules that block gateway callbacks
Reading gateway plugin logs and WooCommerce order notes
Checking gateway plugin compatibility with your WooCommerce version
Fixing outgoing connection errors between your server and the gateway
Test payments in sandbox mode plus one small live payment you approve
A list of orders that still need checking by hand

Who Is This For?

  • Stores where customers are charged but orders stay pending
  • Shops whose payments started failing after an update or migration
  • Owners using Razorpay, PayU, Cashfree, CCAvenue, PayPal or Stripe
  • Stores getting duplicate orders from customers who paid twice
  • Store owners in the USA or UK who need a gateway fault traced
A laptop with code on screen in a dark room
On this page

The money left the customer, but the order never caught up

Payment gateway faults are the most stressful kind of store problem, because they involve someone else’s money. A customer messages to say they were charged and got no confirmation. The order shows “Pending payment” even though the gateway dashboard says the payment succeeded. Or the payment window opens, the customer enters their UPI ID or card, and it fails with a message that tells nobody anything useful.

These faults sit between two systems: your WooCommerce store and the gateway’s servers. Each side can look fine on its own, which is why they are easy to misread. This page sits under our overview of WordPress errors and fixes and covers the payment step specifically. If customers cannot even reach the payment step, because Place order does nothing or shipping options are missing, our checkout troubleshooting page is the better starting point.

How a gateway payment actually travels

Most of the confusion goes away once you know the route. With Razorpay, PayU, Cashfree, CCAvenue, PayPal, Stripe and most others, a WooCommerce payment goes roughly like this:

  1. The customer places the order. WooCommerce creates it with the status Pending payment.
  2. The gateway plugin sends the customer to the gateway’s payment page or opens a payment window on your site.
  3. The customer pays. The gateway records the payment on its side.
  4. The gateway tells your store the result, either by sending the customer back to a return URL, by calling your site directly in the background (a webhook or notification), or both.
  5. The plugin checks that message, marks the order Processing or Completed, reduces stock and WooCommerce sends the emails.

Step four is where most problems live. If the customer closes the tab before the redirect and the background notification never reaches your site, the gateway shows a captured payment while your store still thinks the customer has not paid. Nothing is technically “broken” on either screen. The message between them was lost.

Common symptoms and what they usually mean

The notification from the gateway did not arrive or was rejected. Typical reasons: the webhook URL in the gateway dashboard points to an old domain or to http instead of https, the webhook secret in the plugin does not match the one in the dashboard, or a firewall, security plugin or CDN is blocking the gateway’s server from reaching your site. A site that moved hosts or changed its address recently is a strong suspect, and our post on errors that appear after a migration explains why so many settings point at the old address afterwards.

Every payment fails immediately

Often a key problem. Test keys entered in live mode or the reverse, keys regenerated in the dashboard but never updated in the plugin, or an account that the gateway has not fully activated yet. Gateways also reject payments for reasons on their side, such as a payment method not enabled for your account. The gateway dashboard usually shows a reason for each failed attempt, and it is worth reading before changing anything on the website.

The payment window does not open

When the button to pay does nothing, a script has usually failed to load. Script optimisation in a caching plugin, a content security rule, or a theme conflict can all cause it. This one overlaps with checkout faults, and the browser console normally shows the error.

Errors after a WooCommerce update

Gateway plugins have to keep up with WooCommerce. An outdated plugin may stop working after a WooCommerce update, or the other way round. Stores that switched on High-Performance Order Storage (under WooCommerce, then Settings, then Advanced, then Features) should check that the gateway plugin is listed as compatible. When an update is involved, the approach in our page on a site that broke after an update applies here too.

Server connection errors

The store also has to talk to the gateway, for example to create the order on the gateway’s side or to process a refund. If the server’s outgoing connections fail, you may see cURL errors in WooCommerce’s logs. Our post on cURL errors in WordPress explains the common ones, which usually come down to outdated certificates on the server, a firewall or a timeout.

Duplicate orders or double charges

A customer who does not see confirmation often tries again. You then get two orders, sometimes two payments. The fix is to find out why the first confirmation did not arrive, then refund the duplicate through the gateway dashboard or the plugin, depending on what your plugin supports.

What you can check before calling anyone

Take a backup of the site and database first and keep a copy off the server. Then look, without changing anything yet:

  • Compare both sides. Pick one affected order. Find the same payment in the gateway dashboard by amount, time or order number. Note what each side says.
  • Check the order notes. Open the order in WooCommerce. Gateway plugins usually add notes when they receive a response. No note at all suggests the message never arrived.
  • Read the plugin’s log. Many gateway plugins have a debug or logging option in their settings. Logs appear under WooCommerce, then Status, then Logs.
  • Confirm the mode and keys. Is the plugin in test or live mode, and do the keys match the dashboard you are looking at?
  • Check the webhook address. In the gateway dashboard, compare the webhook URL with your current domain, including https and www.
  • Ask your host. If you recently changed security settings or added a firewall or CDN, ask whether requests from outside are being blocked.

Do not mark unpaid orders as Processing by hand until you have confirmed each payment in the gateway dashboard. It is easy to ship an order that was never paid.

How we handle gateway faults

Message us on WhatsApp or through the contact form with the gateway name, a screenshot of one affected order and, if you can, the matching entry from the gateway dashboard. After a first look we reply with our honest reading of where the payment is getting lost and a realistic starting point. Money arriving without matching orders is something we handle as urgent.

We take a backup before touching anything. Then we trace one real payment end to end: the order on your store, the record on the gateway side, the notification settings and the logs in between. Where possible we reproduce the problem on a staging copy using the gateway’s test mode, so no real customer is charged while we work. Once the cause is fixed, we run test payments and at least one small live payment you agree to, then confirm the order status, stock and emails all update. If order emails are part of the problem, we treat that separately, because it often has nothing to do with the gateway. That is what our email delivery fix page covers.

Afterwards we list any orders that may still need checking by hand, so you can match them against the gateway dashboard. We do not have access to your gateway’s money and we do not make refunds for you unless you ask us to and give us that access. Store owners outside India are welcome too: the team works on Indian time, and payment for our work can be made by PayPal or Wise.

This sits alongside our general WordPress bug fixing service. If you want someone to watch the store regularly rather than only when it breaks, see our WooCommerce support for store owners.

Choosing or changing a gateway

Sometimes the honest answer is that the gateway plugin has been poorly maintained, or the gateway itself does not suit the store. Choosing one is a different question from fixing one. If you are weighing options, our guide to picking a payment gateway as a small business in India compares the common choices, and setting up a gateway from scratch explains the steps. We can help you switch, but we will tell you first whether the current one can simply be fixed.

Common Problems

Problems We Fix

If what is happening to your website is on this list, we have fixed it before. If it is not, tell us anyway — the list is the common ones, not the only ones.

Paid but pending

The gateway took the money but its notification never reached or was rejected by your store.

Every payment fails

Usually wrong keys, the wrong mode, or a payment method not enabled on your gateway account.

Payment window will not open

A script failed to load, often because of optimisation settings or a conflict.

Broke after an update

The gateway plugin and WooCommerce versions no longer work well together.

Double charges

A customer saw no confirmation, paid again, and now has two orders.

How It Works

Our Process

A straightforward process so you always know what is happening and what comes next.

  1. Step 1 of 6

    Send us the gateway name and one affected order

  2. Step 2 of 6

    We compare that order with the gateway's record of it

  3. Step 3 of 6

    We back up the store and check settings, webhooks and logs

  4. Step 4 of 6

    We fix the broken link, on staging in test mode where possible

  5. Step 5 of 6

    We run test and agreed live payments and check order status

  6. Step 6 of 6

    You get a summary and a list of orders to recheck

FAQ

Payment Gateway Error Fix — Common Questions

Questions people ask about payment gateway error fix.

The gateway usually tells your store about the payment through a background notification. If that is blocked or points to the wrong address, the order is never updated.

Only after you have found each payment in the gateway dashboard. Otherwise you risk shipping orders that were never paid.

Often read access is enough, or you can share screenshots. We only need full access if settings on the gateway side must change.

No. We use the gateway's test mode on a copy where possible, and any live test payment is one you agree to beforehand.

Yes, but we first tell you whether the current gateway can simply be fixed. For choosing one, see our guide on payment gateways for small businesses.

No. Sometimes the gateway itself has an issue or has limited your account. We tell you when the fix has to come from their side.

Still have a question? We are happy to help.

Ask Us Directly

We do not guarantee sales, leads, or Google rankings. We help improve the technical setup, user experience, reliability, and clarity of your website so your marketing has a stronger base.

Ready to Get Started?

Your Website Deserves Proper Care

Get a free, no-pressure website health check. We'll tell you exactly what needs attention and what it will cost — before you commit to anything.

No hidden fees Backup before every change Clear communication in Hindi or English India-based team