The WP-Members Memberships for WooCommerce plugin allows you to schedule a reminder email to let users know their membership is about to expire.
Enable Reminders
To enable this setting and select a time at which it will go out, go to the Settings > WP-Members > WooCommerce and enable “Send renewal reminder”. Select the number and time period from the selection to identify when it will go out relative to the user’s expiration.
Customize Reminder Email
The reminder email template uses the WooCommerce email template engine.
The default template is located in wp-members-woocommerce-memberships/templates/emails/
If no custom email template exists, the default will be loaded from the plugin. You can customize the template by saving your custom template to your_theme/woocommerce/emails/renewal-reminder.php (HTML) and your_theme/woocommerce/emails/plain/renewal-reminder.php (plain text).
Troubleshooting Reminder Emails
If reminder emails are not going out, first make sure that the setting is enabled. If you have not enabled reminder emails in the settings and made sure there is a time period set, they won’t be scheduled to go out.
The sending of reminders is a WP scheduled event. These are events that run in the background. I recommend WP Crontrol for managing and monitoring scheduled events. You can use this tool to make sure that wpmem_wc_send_reminder_email is scheduled, and when it is scheduled. This won’t tell you if it ran, but it will tell you when it is next scheduled to run. You can also trigger it manually from the table.
Related to tracking down reminder emails, as I recommend elsewhere, you should be sending email through a dedicated SMTP account. That allows you to check your “sent” folder for your email to see if reminders are going out.