Creating a WooCommerce payment reminder

With WooCommerce Smart Reminder Emails its super simple to let WooCommerce send emails on a schedule, like WooCommerce payment reminders or asking your customers to post a review on your site. In this tutorial, we’ll set up a payment reminder that is sent 5 days after the order has been placed.

Creating the email #

First, we’re going to create the email. Go to WooCommerce > Reminder Emails, and click on Create your first email!

The first thing to do is to set up the title, subject, heading and optionally extra recipients (CC & BCC). Note that you can use the placeholders listed in the sidebar for both the Subject and the Heading field!

  • Title – this is the name that will be used internally in the WordPress admin only, in your list of emails, on the scheduled emails list and when configuring PDF invoice attachments.
  • Heading – this is the heading that will appear at the top of the email body text. This is optional but recommended for consistency (all default WooCommerce emails also use this format).
  • To – This is where the plugin will send the email. By default, this will be addressed to the customer, using the email address they entered when placing the order. You can also specify a specific email address by setting this to “Other (specify below)”.
  • CC – If you always want to receive a copy of the reminder email on a certain address, you can enter one or more email addresses here, separated by commas (“one@email.com, another@email.com”).
  • BCC – Same as CC, except that the customer will not see your email address. We recommend to use BCC rather than CC for most purposes.

Now that you have set up the title, header and recipient, you can enter the email text. Here too, you can use the placeholders listed in the sidebar to put information from the order into the email, they will be automatically replaced when the email is sent. We advise you to use media and specific formatting sparsely. Several email clients remove extra formatting or only support a limited set of CSS properties.

Configuring the email trigger #

We want this email to be sent 5 days after the order has been placed. Most non-direct payment gateways (including the default Direct Bank Transfer (bacs), Cash on Delivery and Cheque gateways bundled with WooCommerce) set the order to the ‘On Hold status when it is first placed. So we’re using this status plus the payment method for our WooCommerce reminder email.

Important! In addition to setting the status after which the email should be sent, we also want to restrict the email to this status under “Restrictions”, otherwise the reminder email will still be sent out even when it is paid for/completed before the 5 days are over.

Creating multiple triggers #

Required #

Version 2.8.0WooCommerce Smart Reminder Emails.

Example setup #

In our example scenario, payment reminders will help describe a use-case for this feature:

  • A payment reminder is sent to customers that have chosen direct bank transfer (BACS) as the payment method.
  • The 1st reminder is to be sent after 30 days, if the order status is ‘On hold‘.
  • The 2nd reminder is to be sent after 60 days, if the order status is ‘On hold‘.

In WooCommerce, ‘On hold‘ is the default order status after an order is placed with the BACS payment method.

An image showing the setup

If the customer pays for their order:

  • after the 1st email reminder,
  • but before the 2nd reminder…

…the 2nd reminder will simply not be sent.

Testing #

After you have created the email and configured your trigger, it’s a good idea to test the workflow.

We don’t want to wait 5 days for this test, so instead we are going to set this to 5 minutes for now.

  1. Place an order via the checkout, just like the client would normally do, using your non-direct payment method (Direct Bank Transfer in our case).
  2. Verify that the order is correctly received and set to On Hold in the WooCommerce order admin
  3. The email should now be listed in the Scheduled Emails list (WooCommerce > Reminder Emails > Scheduled Emails tab).
  4. Wait until the scheduled time has passed and make sure to visit a page on your site, this can be any page (frontend or backend) and will make sure a WP Cron event will be triggered.
  5. Verify that the email is sent. Congratulations! You have successfully setup automatic WooCommerce payment reminders 
  6. Don’t forget to set the trigger back to ‘Days’ to prevent your customers from receiving this email after 5 minutes, too!

Did the email not get sent? Here’s a few steps to troubleshoot what went wrong:

  1. It could be that you checked a bit too early and the WordPress cron was not triggered yet. Browse your site some more and check the Scheduled emails tab again.
  2. If the email is still not sent, try manually sending it by pressing the ‘play’ icon in the scheduled emails list.
  3. If it is still not being sent, there is something wrong in the email configuration. Contact us at support@wpovernight.com, and we’ll do our best to find and fix the root cause.

Viewing scheduled emails #

To keep track of all scheduled emails and to cancel them or send them before the scheduled time has passed, all emails are listed in WooCommerce > Reminder Emails > Scheduled Emails:

This page has four columns:

  • Order # – The WooCommerce order number for which the email has been scheduled
  • Email – The internal name (title) of the email
  • Scheduled date – when this email will be sent
  • Actions – Immediately send the email (play) or cancel the email (cross)