Troubleshooting Common WooCommerce PayPal Payments Issues: A Comprehensive Guide
Content
Many WooCommerce store owners rely on the WooCommerce PayPal Payments plugin for a seamless checkout experience. However, like any complex piece of software, it can sometimes run into issues that prevent payments from processing correctly, cause order status mismatches, or hide payment options. This guide compiles the most common problems and their potential solutions, based on community reports and troubleshooting steps.
1. PayPal Payment Option Not Showing or Button Not Working
The Problem: Customers report that the PayPal button or payment method is missing from the checkout page, especially on specific pages like 'Pay for Order' or in certain browsers like Safari.
Why It Happens: This is often a conflict with your site's theme or another plugin. Browser-specific issues, particularly with Safari's privacy settings, can also prevent the PayPal script from loading correctly.
How to Fix It:
- Perform a Conflict Test: The most common first step is to temporarily switch to a default WordPress theme (like Storefront) and disable all plugins except for WooCommerce and PayPal Payments. If the button reappears, reactivate your theme and plugins one by one to identify the culprit.
- Check for Known Bugs: In some cases, like the 'Pay for Order' bug, a specific plugin version may be the cause. Check the plugin's GitHub repository for any recent fixes or patches. Downgrading to a stable version can be a temporary workaround while waiting for an official update.
2. Payment Fails or Order Status is Incorrect
The Problem: A customer completes payment, but the order in WooCommerce shows as "Failed" or "Pending," even though the funds were taken. Alternatively, the order might be marked "Completed" without payment being received.
Why It Happens: This is frequently due to a problem with PayPal webhooks. Webhooks are how PayPal communicates payment status updates back to your site. If they are not received, your site never gets the message that the payment was successful.
How to Fix It:
- Resubscribe to Webhooks: Go to WooCommerce > Settings > Payments > PayPal > Connection. Find the "Webhook Status" section and click the button to resubscribe. This often resolves the issue.
- Enable Logging: In the same "Connection" tab, enable "Logging." This will create detailed error logs that are essential for diagnosing why a payment failed. You can then share these logs for more advanced help.
- Check for Code Snippets: For specific payment methods like iDEAL, a code snippet might be needed to ensure orders are created properly. For example:
add_filter('woocommerce_paypal_payments_order_approved_webhook_can_create_wc_order', '__return_true');
3. Wrong Amount Displayed in PayPal Window
The Problem: The cart total on your site is correct, but the amount shown in the PayPal pop-up window is wrong (e.g., showing a subtotal instead of the full total).
Why It Happens: This is almost always caused by a conflict with another plugin that modifies cart totals, such as discount rule plugins, currency switchers, or product bundles. The PayPal plugin captures the order amount at a specific point in the process, and if another plugin changes it afterward, a mismatch occurs.
How to Fix It:
- Identify the Conflicting Plugin: Disable any plugins related to discounts, pricing, or currencies. Test the checkout process to see if the amounts match. If they do, you have found the conflict.
- Contact the Other Plugin's Developer: Reach out to the support for the discount or currency plugin and ask them to ensure compatibility with WooCommerce PayPal Payments. They may need to adjust how their plugin calculates totals.
4. Payment Succeeds but Customer is Not Redirected
The Problem: The customer pays successfully on PayPal's site, but when the pop-up closes, they are stuck on the checkout page with no confirmation. The order may or may not exist in WooCommerce.
Why It Happens: This can be another symptom of a theme/plugin conflict or a JavaScript error on the checkout page that prevents the final confirmation step from completing.
How to Fix It:
- Conflict Test: As with the first issue, perform a full conflict test by switching to a default theme and disabling all other plugins.
- Check for JavaScript Errors: Open your browser's console (F12) on the checkout page and look for any red error messages. These can point to the source of the problem.
5. "NOT_ENABLED_FOR_PAYMENT_SOURCE" or Other Gateway Errors
The Problem: Errors like "NOT_ENABLED_FOR_PAYMENT_SOURCE" appear when trying to use Alternative Payment Methods (APMs) like iDEAL.
Why It Happens: This specific error means the payment method (e.g., iDEAL) has not been activated on your PayPal business account. Other gateway errors can be caused by restrictions on the buyer's account or card.
How to Fix It:
- Contact PayPal Merchant Support: For errors related to your account configuration or a specific payment method, you must contact PayPal directly. They can check your account settings and enable the required features.
General Best Practices for Troubleshooting
- Use a Staging Site: Always test updates and troubleshooting steps on a staging copy of your live site first.
- Enable Logging: This is the single most important tool for diagnosing issues. Always enable logging in the plugin's Connection settings before trying to reproduce a problem.
- Keep Everything Updated: Ensure WordPress, WooCommerce, your theme, and all plugins are running the latest versions to benefit from bug fixes and compatibility patches.
If you have tried these steps and your issue persists, the next best step is to gather your System Status Report (from WooCommerce > Status) and any relevant log files from the PayPal Payments plugin. These provide crucial information for further diagnosis.
Related Support Threads Support
-
Popup Closes but order is not proccessedhttps://wordpress.org/support/topic/popup-closes-but-order-is-not-proccessed/
-
Paypal Payments issueshttps://wordpress.org/support/topic/paypal-payments-issues/
-
‘Not captured’ is showing for captured paymentshttps://wordpress.org/support/topic/not-captured-is-showing-for-captured-payments/
-
Paypal errorshttps://wordpress.org/support/topic/paypal-errors/
-
Customer paid by E-check even when I have enabled ‘Require Instant Payment’https://wordpress.org/support/topic/customer-paid-by-e-check-even-when-i-have-enabled-require-instant-payment/
-
PayPal Errorshttps://wordpress.org/support/topic/paypal-errors-4/
-
Fake disount, it will pay with original price when pay by PayPalhttps://wordpress.org/support/topic/fake-disount-it-will-pay-with-original-price-when-pay-by-paypal-2/
-
iDeal payments not receivedhttps://wordpress.org/support/topic/ideal-payments-not-received/
-
NOT_ENABLED_FOR_PAYMENT_SOURCEhttps://wordpress.org/support/topic/not_enabled_for_payment_source/
-
Error with the bundles pricehttps://wordpress.org/support/topic/error-with-the-bundles-price/
-
I am unable to Receive Payment through PayPal.https://wordpress.org/support/topic/i-am-unable-to-receive-payment-through-paypal/
-
Endless loading checkout if selcted PayPal as payment methodhttps://wordpress.org/support/topic/endless-loading-checkout-if-selcted-paypal-as-payment-method-2/
-
PayPal – Issues with “Pay in 3” Installment Paymentshttps://wordpress.org/support/topic/paypal-issues-with-pay-in-3-installment-payments/
-
PayPal not Working with Safarihttps://wordpress.org/support/topic/paypal-not-working-with-safari/
-
Paypal errorshttps://wordpress.org/support/topic/paypal-errors-2/
-
Paypal payments not recognising mandatory fields already filled inhttps://wordpress.org/support/topic/paypal-payments-not-recognising-mandatory-fields-already-filled-in/
-
Paypal payements not loading in Safarihttps://wordpress.org/support/topic/paypal-payements-not-loading-in-safari/
-
Alternative Payment Methodshttps://wordpress.org/support/topic/alternative-payment-methods-2/
-
Product Price Not Match in Paypal Invoicehttps://wordpress.org/support/topic/product-price-not-match-in-paypal-invoice/
-
Some PayPal Payments failhttps://wordpress.org/support/topic/some-paypal-payments-fail/
-
CANNOT_BE_ZERO_OR_NEGATIVE pay for orderhttps://wordpress.org/support/topic/cannot_be_zero_or_negative-pay-for-order/
-
Failed Orderhttps://wordpress.org/support/topic/failed-order-8/
-
PayPal payment option is not availablehttps://wordpress.org/support/topic/paypal-payment-option-is-not-available/
-
Errors in payPal reportshttps://wordpress.org/support/topic/errors-in-paypal-reports/
-
Addresses and contact details not being passed from paypalhttps://wordpress.org/support/topic/addresses-and-contact-details-not-being-passed-from-paypal/
-
Cant give order through paypalhttps://wordpress.org/support/topic/cant-give-order-through-paypal/
-
Error Processing Checkout. Please Try Againhttps://wordpress.org/support/topic/error-processing-checkout-please-try-again-114/
-
paypal notificationhttps://wordpress.org/support/topic/paypal-notification-3/
-
Accepting payments as donationshttps://wordpress.org/support/topic/accepting-payments-as-donations/
-
Something went wrong. Please try againhttps://wordpress.org/support/topic/something-went-wrong-please-try-again-21/
-
paypal popup disappearshttps://wordpress.org/support/topic/paypal-popup-verschwindet/
-
Paypment via PayPal (transactionID) link is not shownhttps://wordpress.org/support/topic/paypment-via-paypal-transactionid-link-is-not-shown/
-
Paypal payment shows wrong amounthttps://wordpress.org/support/topic/paypal-payment-shows-wrong-amount/
-
For some customers paypal doesn´t work with our shop (woocommerce)https://wordpress.org/support/topic/for-some-customers-paypal-doesnt-work-with-woocmmere/
-
Paypal Payments are being marked as completed and not going into processinghttps://wordpress.org/support/topic/paypal-payments-are-being-marked-as-completed-and-not-going-into-processing/
-
Redirecting away from Confirmation Page after Checkouthttps://wordpress.org/support/topic/redirecting-away-from-confirmation-page-after-checkout/
-
Payment done but not receivedhttps://wordpress.org/support/topic/payment-done-but-not-received/
-
payment failed by PayPalhttps://wordpress.org/support/topic/payment-failed-by-paypal/
-
IDEAL mobiele betalingen mislukkenhttps://wordpress.org/support/topic/ideal-mobiele-betalingen-mislukken/
-
PayLink to Pay for this order errorhttps://wordpress.org/support/topic/paylink-to-pay-for-this-order-error/
-
iDEAL payments do not workhttps://wordpress.org/support/topic/ideal-payments-do-not-work/
-
PayPal Link – Pay for this order – errorhttps://wordpress.org/support/topic/paylink-to-pay-for-this-order-error-2/
-
Paypal not workinghttps://wordpress.org/support/topic/paypal-not-working-35/