Please note, the following is completely untested and I would suggest trying it on test site first. I think this might work…
<?php
function expire_user_woocommerce_created_customer( $customer_id, $new_customer_data, $password_generated ) {
global $expire_users;
if ( ! class_exists( 'Expire_User' ) ) {
return;
}
$expire_settings = $expire_users->admin->settings->get_default_expire_settings();
$expire_data = array(
'expire_user_date_type' => $expire_settings['expire_user_date_type'],
'expire_user_date_in_num' => $expire_settings['expire_user_date_in_num'],
'expire_user_date_in_block' => $expire_settings['expire_user_date_in_block'],
'expire_user_date_on_timestamp' => $expire_settings['expire_timestamp'],
'expire_user_role' => $expire_settings['expire_user_role'],
'expire_user_reset_password' => $expire_settings['expire_user_reset_password'],
'expire_user_email' => $expire_settings['expire_user_email'],
'expire_user_email_admin' => $expire_settings['expire_user_email_admin'],
'expire_user_remove_expiry' => $expire_settings['expire_user_remove_expiry']
);
$user = new Expire_User( $customer_id );
$user->set_expire_data( $expire_data );
$user->save_user();
}
add_action( 'woocommerce_created_customer', 'expire_user_woocommerce_created_customer', 10, 3 );
?>
If you’re able to confirm that this works please let me know.