The customer email-verification prompt on My Account > Orders is described in Customer email confirmation and guest order linking. By default, WooCommerce decides whether to show that prompt based on guest checkout, the confirmation email setting, and whether the account has a temporary-password notice. Use the woocommerce_customer_email_verification_should_show_prompt filter to override that decision for a specific site or user.
Note:
This is a Developer level doc. If you are unfamiliar working with code and resolving potential conflicts, we recommend you work with a Woo Agency Partner for larger projects, or find a WooCommerce developer on Codeable for smaller customizations. We are unable to provide support for customizations under our Support Policy.
The filter
↑ Back to topwoocommerce_customer_email_verification_should_show_prompt — added in WooCommerce 11.1.
$should_show (bool): Whether WooCommerce would show the prompt, based on its built-in checks.$user_id (int): The WordPress user ID of the customer viewing My Account.
Return true to show the prompt, false to hide it. Your callback’s return value replaces WooCommerce’s own decision outright — you can force the prompt to show even when guest checkout is off or the confirmation email is disabled, or force it to hide even when WooCommerce would otherwise show it.
Hide the prompt for everyone
↑ Back to topadd_filter( 'woocommerce_customer_email_verification_should_show_prompt', '__return_false' );
Hide the prompt for a specific role
↑ Back to topFor example, to hide it for wholesale customers who never check out as guests:
add_filter( 'woocommerce_customer_email_verification_should_show_prompt',
function ( $should_show, $user_id ) {
return in_array( 'wholesale_customer', (array) get_userdata( $user_id )->roles, true )
? false
: $should_show;
},
10,
2
);