Hello @margas6
Thank you for sharing all the details. We are not currently aware of any widespread issue of this kind.
To help resolve this, I recommend performing a full conflict test to rule out potential conflicts with your theme or another plugin. Here’s how to proceed:
- Temporarily activate the default theme Storefront.
- Disable all other plugins except for WooCommerce and PayPal Payments.
If the issue is resolved, re-enable the plugins one by one. Please let us know which plugin triggers the fatal error, as identifying the conflicting plugin will help us guide you further.
Kind Regards,
Krystian
Hello Krystian,
thank you for your help.
It seems that there was a conflict with another plugin (Cardlink Payment Gateway).
Problem resolved.
Hello,
I’m getting the same error in my server log (kinsta) but it’s not affecting my back/front end, though I haven’t had any woo sales since I did the update which tells me it could be affecting it somehow.
2024/12/14 00:51:16 [error] 6850#6850: *698283 FastCGI sent in stderr: “PHP message: PHP Fatal error: Uncaught Error: Call to undefined function WooCommerce\PayPalCommerce\Blocks\wc_terms_and_conditions_page_id() in /www/shop_225/public/wp-content/plugins/woocommerce-paypal-payments/modules/ppcp-blocks/extensions.php:47
Stack trace:
#0 /www/shop_225/public/wp-content/plugins/woocommerce-paypal-payments/lib/packages/Inpsyde/Modularity/Container/ReadOnlyContainer.php(133): WooCommerce\PayPalCommerce\Blocks\BlocksModule->WooCommerce\PayPalCommerce\Blocks\{closure}(Array, Object(WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Container\ReadOnlyContainer))
#1 /www/shop_225/public/wp-content/plugins/woocommerce-paypal-payments/lib/packages/Inpsyde/Modularity/Container/ReadOnlyContainer.php(72): WooCommerce\PayPalCommerce\Vendor\Inpsyde\Modularity\Container\ReadOnlyContainer->resolveExtensions(‘wcgateway.setti…’, Array)
#2 /www/shop_225/public/wp-content/plugins/woocommerce-paypal-payments/modules/ppcp-wc-gateway/services.php(549):” while reading response header from upstream, client: 188.74.137.134, server: shop.mysite.com, request: “GET /terms-and-conditions/?customize_changeset_uuid=e4d7dafb-388f-484b-8355-cd903276b3ac&customize_messenger_channel=preview-0 HTTP/2.0”, upstream: “fastcgi://unix:/var/run/php8.2-fpm-shop.sock:”, host: “shop.mysite.com:64493”
How do I isolate what plugin could be conflicting if the front end works fine, and the error log doesn’t follow any pattern of how frequently the error is occuring?
Hello @soprano
While the error appears to point to PayPal Payments, it is most likely caused by the Cardlink plugin loading the WooCommerce gateways too early. This results in some of the our settings code being executed before WooCommerce has finished initializing.
On our settings pages, we use a core WooCommerce function called wc_terms_and_conditions_page_id(). The error indicates that this function is not available at the time, likely because Cardlink causes it to be called prematurely, leading to the crash.
To address this, you can temporarily disable the Cardlink plugin or downgrade PayPal Payments to an earlier version until a fix is released. The choice is yours, but rest assured, we are working on resolving this issue soon.
Let me know if you need further assistance.
Kind Regards,
Krystian
Hey @inpsydekrystian ,
Thanks for the response.
I don’t use the Cardlink plugin. The only gateway plugins I have are the Woocommerce official Stripe + this Paypal one. I do use CartFlows to handle my checkout page but they don’t have anything to do with the payment gateway.
If it’s not Cardlink, what other plugin could it be? As mentioned, I get no front/backend errors that I see and the error log message above is quite sporadic so I’m not sure how to isolate the conflicting plugin.
For now I’ve disabled the Paypal plugin and my sales are returning to normal after having none for the last 4 days.
Hello @soprano
The output log you shared reminds me of a known issue where WooPayments caused a conflict, but this was specific to version 2.8.2. If you are using that version, please update the PayPal Payments plugin to the latest version. This update should resolve the problem.
Please let us know if updating resolves the issue or if not we kindly ask that you reach out directly to our support team so as not to continue the conversation under someone else thread.
Kind Regards,
Krystian
Hello @inpsydekrystian,
My current version of Woocommerce is Version 9.4.3 and Woocommerce Paypal Payments is Version 2.9.5.
I happened to update Paypals Plugin to Version 2.9.5 from 2.9.4 on the same day that I upgraded my PHP to version 8.2 from PHP 8.1 so I’m not sure if that might also have been responsible. There’s some mentions of compatibility for php 8.2 updates in the Woo Paypal Plugin changelog, but I don’t know if it’s fully compatible or not.
Hello @soprano
Currently, we officially test the plugin up to PHP 8.1. I cannot completely rule out the possibility that PHP 8.2 might be contributing to the issue. Best way would be temporarily downgrading your PHP version back to 8.1 and checking if the problem persists.
I wouldn’t entirely rule out a potential conflict with CartFlows or other plugins, however from the other side CartFlows is a widely used plugin, and we haven’t received significant reports of compatibility issues. A full conflict test would be the best next step to rule out plugin or theme conflicts.
If you haven’t already, please perform a complete conflict test by deactivating other plugins and switching to a default theme like Storefront to see if the issue resolves. If the issue persists we kindly ask that you reach out directly to our support team as we prefer not to continue the conversation under other users thread.
Kind Regards,
Krystian