• Resolved prwordpressorg

    (@prwordpressorg)


    Hi

    I have a WooCommerce store that accepts payments using Stripe. Stripe accepts the payment (all ok) and then sends a payment_intent.succeeded webhook to my site… but this is not accepted by my site/give Stripe a 500 error. Thus the order is never marked as paid (even though it was).

    It could have something to do with iThemes Security… (?)

    I turned wp-config to debug and fond the following lines of notices:

    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  trim(): Passing null to parameter #1 ($string) of type string is deprecated in /www/doc/www.mydomain.com/www/wp-content/plugins/better-wp-security/core/core.php on line 1102
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 7022
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 2162
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 7022
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 2162
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Cookie/Jar.php on line 63
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Cookie/Jar.php on line 73
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Cookie/Jar.php on line 89
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Cookie/Jar.php on line 102
    [10-Dec-2022 17:51:42 UTC] PHP Deprecated:  Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Cookie/Jar.php on line 111
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  trim(): Passing null to parameter #1 ($string) of type string is deprecated in /www/doc/www.mydomain.com/www/wp-content/plugins/better-wp-security/core/core.php on line 1102
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 7022
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 2162
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82
    [10-Dec-2022 17:51:43 UTC] PHP Deprecated:  Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /www/doc/www.mydomain.com/www/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91
    [10-Dec-2022 17:51:44 UTC] PHP Deprecated:  strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 7022
    [10-Dec-2022 17:51:44 UTC] PHP Deprecated:  str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /www/doc/www.mydomain.com/www/wp-includes/functions.php on line 2162

    For complete information, I have the following settings in iThemes security:

    yes Protect System Files: Prevent public access to readme.html, readme.txt, wp-config.php, install.php, wp-includes, and .htaccess.
    yes Disable Directory Browsing
    yes Disable PHP in Uploads
    yes Disable PHP in Plugins
    yes Disable PHP in Themes

    API access
    Disable XML-RPC
    REST API restricted access

    File persmissions
    root 755
    wp-includes 775
    wp-admin 775
    wp-admin/js 775
    wp-content 775
    wp-content/themes 775
    wp-content/plugins 775
    wp-content/uploads 755
    wp-config.php 644
    .htaccess 644

    I am running the site on PHP 8.1.13, Wordpres 6.1.1, WooCommerce 7.1.1, iThemes Security 8.1.4, everything and all plugins are updated

    Would anyone see what I am not seeing please?

Viewing 3 replies - 1 through 3 (of 3 total)
  • Hi @prwordpressorg,

    You can define the ITSEC_DISABLE_MODULES constant and set it to true in the wp-config.php file as described in this article.

    Note it may take up to an hour for the iTSec plugin .htaccess rules to be cleared.

    If the Stripe issue persists after that, then it’s probably not due to the iTSec plugin.

    +++++ To prevent any confusion, I’m not iThemes +++++

    Plugin Support chandelierrr

    (@shanedelierrr)

    Hi @prwordpressorg, are you still having the Stripe webhook issue? If you disable the iTSec plugin, does the issue resolves or does it persist?

    Thread Starter prwordpressorg

    (@prwordpressorg)

    I deactivated iThemes Security, but the issue persisted, so it wasn′t caused by iThemes Security.

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘iThemes blocking Stripe webhook?’ is closed to new replies.