• Resolved macalusom

    (@macalusom)


    Out of nowhere an email verification step was displayed in order to enter the woocommerce checkout page. We are not using anything that requires email verification and we checked all settings to make sure we dont require email verification. Now you cant access the checkout page without verifying your email. The class is: “woocommerce-form woocommerce-verify-email” and the message the customers are getting is: To view this page, you must either login or verify the email address associated with the order.

    what is this and why does it display? I cant find any info on this anywhere

    Seems to be after one of the recent WooCommerce plugin updates.

    If you’re logged in and make an order you get the normal process, but if you’re not logged in you get redirected to the ‘verify email’ page

    Is there any official reply from WooCommerce devs or instructions on why this was added/how to disable from plugin settings?

    • This topic was modified 1 year, 4 months ago by macalusom.
Viewing 15 replies - 16 through 30 (of 60 total)
  • Saif

    (@babylon1999)

    Hello everyone!

    I understand that waiting for an update can be quite frustrating. For some reason, the link shared earlier is landing on the second page of the thread.

    Long story short, this was a security enhancement introduced here with a filter.

    You can disable it by adding the following one-liner to your theme’s functions.php file or via a code-adding plugin like Code Snippets.

    add_filter( 'woocommerce_order_email_verification_required', '__return_false' );

    The team will also be posting about ways to improve this process soon in the WooCommerce blog.

    You can press the “follow” at the bottom right corner to receive updates when a new post is published.

    If anyone has any other questions about this, please open your own thread from here.

    Cheers!

    i found a way to disable guest email verification, you have to comment a lines in this file

    wp-content/plugins/woocommerce/includes/shortcodes/class-wc-shortcode-checkout.php

    comment lines 175 to 184

    if ( self::guest_should_verify_email( $order, ‘order-pay’ ) ) {
    wc_get_template(
    ‘checkout/form-verify-email.php’,
    array(
    ‘failed_submission’ => ! empty( $_POST[’email’] ), // phpcs:ignore WordPress.Security.NonceVerification.Missing
    ‘verify_url’ => $order->get_checkout_payment_url(),
    )
    );
    return;
    }

    thats all!

    Thanks! But I guess this solution will work until the next update?

    I have same problem and looking for solutions too.

    I solved!

    go to:
    1) wp-content / plugins / woocommerce / includes / shortcodes : class-wc-shortcode-checkout.php

    2) go to line 390 and change true in false.

    now all work!

    this is the code that i change

    // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.MissingUnslash, WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
    if ( ! empty( $_POST ) && ! wp_verify_nonce( $_POST[‘check_submission’] ?? ”, ‘wc_verify_email’ ) ) {
    return false;
    }

    1.) Of course that works, because in effect it disables the code that was added (and with it introducing a breaking change). Something like this is what everybody needs to do as a workaround. Sadly.
    Please note: Your fix may only help in some cases. In other cases, the user may be asked to log in, and that’s a different part of the code.
    2.) Be careful, because with the next plugin update, you need to re-do your fix.
    3.) Some of us are currently trying to persuade the developer of that piece of code to add a hook to turn on and off his breaking change, but we’re not there yet.

    https://github.com/woocommerce/woocommerce/pull/38983

    i just did an update to woocommerce 8.0.1

    in the details i found following fix:
    Fix – Adds a grace period during which email verification will not be needed before the order confirmation (or payment) page is rendered. #39191

    but even after the update, i get this verification-page.
    i used the paypal payment with the woocommerce paypal plugin.

    does someelse have the same behaviour?

    Thread Starter macalusom

    (@macalusom)

    Many thanks @attila729 for your solution. It work ??

    And thanks to @therab to be carful if ubgrape of Woo plugin and re-do this fix.

    Hope that woocommerce made available this option on the main dashboard.

    Best regards

    Verification page still shown after update to WC 8.0.1 @kersavond.

    Please solve this issue ASAP.

    I tried it.. did it work for anyone? It didn’t work for me.

    add_filter( 'woocommerce_order_email_verification_required', '__return_false' );

    I also have the same problem, I would like to remove this step because if you don’t verify, the order is actually not approved even though the customer has paid…

    • This reply was modified 1 year, 3 months ago by didiair.

    @didiair it didn’t work for me either. I create an order in the backend and send the payment link to both an existing customer and a new customer. Both customers get the annoying screen with e-mail confirmation.

    @didiair?it didn’t work for me too.

    • This reply was modified 1 year, 3 months ago by kerosen2023.

    @babylon1999

    hi

    so..

    Is there a solution?
    I have tried what is written here and elsewhere
    Still getting email verification before order details
    Which creates a big problem because actually the order is not registered as long as you don’t verify and not everyone verifies..

    @didiair the solution worked for 1 website. And NOT for another website.

    I’m trying to find a way to solve it for the website it did NOT work for.

    Both websites allow customers to checkout as guests. So I don’t know what the issue is. If anyone has an update on why it works for some sites and not others, please share.

    Thank you

    I too have this issue and the suggested fix does not work. Its outrageous to have this called a “feature” and not to be able to disable it if needed.

    Hacking the code with an axe to get this done is not an option as it will break again on first update.

    • This reply was modified 1 year, 3 months ago by maxlumnar.
Viewing 15 replies - 16 through 30 (of 60 total)
  • You must be logged in to reply to this topic.