Hello Everyone!
I am experiencing the same issue. I would like to add some more details here.
Host: WPEngine
PHP + MySQL: Latest versions
SSL Certificate: Installed, every page of the site is HTTPS.
WooCommerce + Stripe plugin: Latest versions
Theme: DIVI (Latest version)
WooCoomerce > Settings > Checkout Options > Force secure checkout: True/Checked
WooCoomerce > Settings > Stripe > Enable Test Mode: False/Not-checked
Live Secret Key + Live Publishable Key: Has proper values.
All caches have been disabled and/or purged.
The site is Japanese and has WooCommerce Multilingual installed. I am not sure if the character encoding / multilingual is creating a bug internally.
The checkout page still shows – “Pay with your credit card via Stripe. TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the documentation “Testing Stripe” for more card numbers.”
This is so frustrating. Eventually, we had to replace that text using jQuery, but internally the issue is still there.
If anyone is interested, this is the jQuery code we used.
jQuery(‘.page-checkout #stripe-payment-data > p’).html(‘Pay with your credit card via Stripe.’);
We tried to debug the issue a bit. Here is what we found.
In this file \includes\legacy\class-wc-gateway-stripe.php
Line # 48
$this->testmode = ‘yes’ === $this->get_option( ‘testmode’ );
$this->testmode is being set to true, although $this->get_option( ‘testmode’ ) is “no” !!!
No idea why.
Anyone with any helpful input?
Thanks.