Encourage a repeat purchase from existing customers with complementary products/services – include a coupon

AutomateWoo includes a preset that follows a recent repeat purchase with product recommendations and a unique coupon code. The preset checks that the customer has another recent paid order, waits one hour, and sends a non-transactional email.

Before you begin

↑ Back to top
  • Review how WooCommerce chooses related products and cross-sells. The preset uses related products by default.
  • Create a template coupon under Marketing > Coupons. Set the discount amount, eligible products or categories, sale-item behavior, and other restrictions that every generated coupon should inherit.
  • Use a customer with at least two paid orders when testing. The preset checks the customer’s second-last paid order, so a first-time customer cannot qualify.
  • Treat this as a marketing message. Review your store’s marketing opt-in and unsubscribe settings before activation.

Create the workflow from the preset

↑ Back to top
  1. Go to AutomateWoo > Workflows.
  2. Select Browse presets.
  3. Find Cross sell: Target repeat customers (with coupon), then select Create workflow.
  4. Keep the workflow Disabled while you replace its placeholders and preview it.

The preset creates this configuration:

  • Trigger: Order Completed starts the workflow when an order reaches Completed status.
  • Rule: Customer – 2nd Last Paid Order Date is in the last 30 calendar days.
  • Timing: The email is delayed by one hour.
  • Validation: AutomateWoo rechecks the order status and rules before the queued run.
  • Action: Send Email sends a non-transactional recommendation and coupon email.

Customize the email

↑ Back to top

The preset addresses the email to the customer’s email address. Replace the XXX% placeholders in its subject and message with the actual offer, then update the heading, preheader, and wording to match your store.

Keep Is transactional? disabled so AutomateWoo applies your marketing opt-in and unsubscribe settings.

Configure the coupon variable

↑ Back to top

The preset contains a placeholder customer.generate_coupon variable. Replace its template value with the code of the coupon you created. You can also control the generated code’s expiry, prefix, and total usage limit.

A template is required. You can set an expiry in days, a prefix, and a total usage limit in the variable settings. The default limit is one use; if you leave expiry blank, AutomateWoo uses the template’s expiry.

The generated code is unique, but it is not restricted to the recipient’s email by default. Use an appropriate usage limit and template restrictions. See Personalized Coupons for more examples.

Choose the product recommendations

↑ Back to top

The preset uses the order.related_products variable. This variable inserts related products for the items in the completed order, excludes products already in that order, and displays up to eight products by default.

To recommend the cross-sells configured directly on those products instead, replace it with the order.cross_sells variable using the Variables panel. Either variable can return no products when no eligible recommendations are available, so check your product relationships before activation.

Test and activate the workflow

↑ Back to top
  1. Save the workflow as Disabled. Select Preview in the Send Email action and choose a suitable test order. Check the message, coupon placeholder, and recommendations. Previewing does not save a generated coupon.
  2. Use Send Test from the preview to send yourself a test email. Check the generated test coupon’s discount, restrictions, expiry, and usage limit.
  3. For an end-to-end test, use a staging store with test customers and email delivery under your control. Set the workflow to Active and save it. Disabled workflows do not queue events.
  4. Complete a test order for a customer whose preceding paid order was within the last 30 calendar days. Check AutomateWoo > Queue, then check AutomateWoo > Logs and the generated coupon after the delay.
  5. If the workflow doesn’t run, check the order status, the earlier paid order, marketing opt-in settings, and the template coupon. Disable the staging workflow after testing, then activate and save the workflow on your store when it’s ready.

Each qualifying workflow run can create a new coupon. Monitor generated coupons and adjust the 30-day rule or one-hour delay to suit your products, offer, and buying cycle.

Questions and support

↑ Back to top

Something missing from this documentation? Still have questions and need assistance?

  • If you have a question about a specific extension or theme you’d like to purchase, contact us to get answers.
  • If you already purchased this product and need some assistance, get in touch with a Happiness Engineer via our support page and select this product’s name from the Product dropdown.

Related Products

Offer Royal Mail shipping rates to your customers.

Get shipping rates from the Canada Post Ratings API which handles both domestic and international parcels.

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.