Personalised Offers for Magento 2

Create rule-based customer segments and send personal coupons for birthdays, VIP rewards or win-back campaigns, with account offers and reports.

  • Magento 2.4.6 – 2.4.9
  • PHP 8.2 – 8.5
  • Hyvä and Luma
  • Version 1.0.4
$199

One-off payment, with 12 months of updates.

What is included

  • Install with Composer, or download a zip from your account
  • Licence for one production domain, staging and development copies included

No subscription or automatic renewal. Keep using the versions included in your update period. Update and licence details

Key features

  • Customer segments with AND/OR rules on orders, spend, products bought and account data
  • Live preview of members before saving
  • Automatic personal coupons on joining, every N days or before the birthday
See all features

Composer package commercegears/module-promo-personalised-offers

Use purchase history already in your store to decide which customers receive each offer. Build segments for repeat buyers, high spenders or customers who have not ordered recently, preview their membership and attach a reward. This module uses rules you define; it does not use AI or an external prediction service.

What you can do

  • Live segment preview. Check membership before saving the conditions.
  • Controlled rewards. Single-use coupons, expiry and customer-level frequency limits.
  • Account and email. Offers in My Account, with subscriber-only emails by default.
  • Storefront banners. Show offers to logged-in members using private content.

How it works

  1. Segment. Combine order history and account conditions with AND/OR rules.
  2. Offer. Issue a personal coupon on joining, periodically or for birthdays.
  3. Measure. Review coupon use, attributed revenue and segment membership.

Getting started

Define a segment and preview its members before creating an offer. Set reward value, dates, eligibility, frequency limits and email options. Keep cron running for membership recalculation and coupon delivery. Luma and Hyvä storefront support is included; Coupon Wallet is an optional integration.

Install with Composer using composer require commercegears/module-promo-personalised-offers, then run bin/magento setup:upgrade. Composer installs the required CommerceGears dependencies: commercegears/module-core ^2.0, commercegears/module-promo-core ^2.0.

Scope and compatibility

Segments and offers are rule based. A customer receives a reward only once per applicable offer period, subject to the global frequency limit. Time-based membership is refreshed by scheduled recalculation. Emails default to newsletter subscribers and respect quiet hours and opt-out settings.

Release 1.0.2; Magento 2.4.7 – 2.4.9; PHP 8.2 – 8.5. Read the included user guide and test your own theme, checkout and integrations before production use.

  • The right offer for each customer

    A win-back coupon after 60 days without an order, VIP 10% after £1,000 of spend, a birthday coupon: each customer gets the offer that fits their history.

  • Runs by itself

    Segments update after orders and every day, coupons are issued and e-mailed by cron and expire automatically.

  • See what it brings

    Issued, used, conversion and revenue per offer, and how many customers join and leave each segment.

All features

What is included

Segments

  • Days since the last order, number of orders, total spend and average order value, all time or a period
  • Products bought by SKU, category or attribute, at least N orders in a period
  • Customer group, website, account age, birthday, newsletter, billing country, coupon use
  • AND/OR groups, live preview, members per day
  • Batched SQL calculation by cron, incremental updates after orders

Offers

  • On joining a segment, every N days while a member, or N days before the birthday
  • Percentage, fixed amount or free shipping, categories and minimum subtotal
  • Unique single-use code per customer with automatic expiry
  • Date range, priority and a limit of offers per customer across offers

Delivery

  • E-mail template per offer, batches, quiet hours, subscribers only by default
  • Offers for You in My Account and in Coupon Wallet's My Coupons
  • Banner for logged-in members, full page cache safe
  • Luma and Hyvä

Control

  • Report per offer and per segment, Promotions Overview
  • Segments for Exit Intent, Spin to Win and others
  • CLI to recalculate segments and issue coupons
  • Own admin permissions for segments, offers, report and settings

Feature tour

Everything your shoppers and your team see

01 / 06

Rules you already know

Magento's rule editor with order, spend, product and customer conditions, a live member preview and the members per day.

02 / 06

Coupon, timing and delivery on one screen

On joining, every N days or before the birthday; percentage, fixed amount or free shipping; e-mail, account and banner.

03 / 06

Offers for You

Reason, discount, personal message, code with a Copy button and expiry date in the customer account.

04 / 06

A reminder on every page

A slim bar for logged-in members with the code, Copy and View offer buttons, loaded privately so pages stay cached.

05 / 06

Native Hyvä templates

Tailwind and Alpine.js templates for the account page and the My Coupons section, mobile first.

06 / 06

Target your segments elsewhere

Exit Intent, Spin to Win and other CommerceGears promotions list your segments in their forms.

Live demo

Try it before you install it

A full Magento store with the module installed, on Luma and on Hyvä. The admin demo signs you in with one click.

Compatibility

Requirements and compatibility

Compatibility of Personalised Offers
Magento2.4.6 – 2.4.9
PlatformsMagento Open Source and Adobe Commerce (one price)
Storefront themes Luma Blank Hyvä
PHP8.2 – 8.5
Latest version 1.0.4
composer.json requires php ~8.2.0||~8.3.0||~8.4.0||~8.5.0 ext-json * magento/framework ~103.0.6 commercegears/module-core ^2.0 free, installed by Composer with this module commercegears/module-promo-core ^2.0 free, installed by Composer with this module magento/module-backend * magento/module-catalog * magento/module-catalog-rule * magento/module-config * magento/module-customer * magento/module-directory * magento/module-email * magento/module-newsletter * magento/module-rule * magento/module-sales * magento/module-sales-rule * magento/module-store * magento/module-ui *

Installation

Up and running in minutes

After you buy, create a Composer key in your account. Then, in the root of your Magento project:

  1. 01Add the repository and your key (once per project)

    composer config repositories.commercegears composer https://repo.commercegears.com
    composer config --auth http-basic.repo.commercegears.com PUBLIC_KEY PRIVATE_KEY
  2. 02Install the module

    composer require commercegears/module-promo-personalised-offers
  3. 03Enable it

    bin/magento setup:upgrade
    bin/magento setup:di:compile
    bin/magento setup:static-content:deploy
    bin/magento cache:flush

    The last three are only needed in production mode.

Prefer a zip? Every version you are entitled to can be downloaded from My modules. More about Composer access

User guide

Setting up Personalised Offers

The user guide has its own page: how to install Personalised Offers, what each option does and how to use it in your store. Written for version 1.0.4; a copy ships with the module.

In the guide

Read the user guide

Changelog

Release notes

1.0.4

Latest
  • Improvement: compatible with Magento 2.4.6 (PHP 8.2).

1.0.3

  • Improvement: user guide screenshots added.

1.0.2

  • Fix: segment preview count matches the listed members.

1.0.1

  • Fix: segment preview and recent members leave out customers hidden from the admin Customers grid.
  • Improvement: admin demo link.

1.0.0

  • New: first release with customer segments, automatic personal coupons per segment, offer e-mails and reports.

FAQ

Questions, answered

Something else on your mind? The developers who wrote the module answer before and after you buy.

Ask a question →

Already installed it? Open a support ticket

Does it use AI?

No. Version 1 is rule based: you decide the conditions of each segment and the offer for it. Everything is calculated from data already in your store.

Which data can segments use?

Orders (days since the last order, number of orders, total spend, average order value, coupon use), the products in those orders (SKU, category or product attribute, with a minimum number of orders and a period), and the customer account (group, website, account age, date of birth, newsletter subscription, billing country). Conditions can be combined in AND/OR groups.

Will it slow down my store with many customers?

Segments are calculated by the database in batches of customer IDs, by cron, not on page requests. A full recalculation that does not finish in one cron run continues in the next one. After an order or an account change only that customer is re-checked. On the storefront, other promotions read membership with one indexed lookup.

How quickly does a customer join a segment after an order?

Within about a minute (the queue is processed every minute by cron). Conditions that depend on time, such as "60 days since the last order", are updated by the daily full recalculation (configurable).

Can a customer get the same offer twice?

Only once per offer period: once per time they join the segment, once per repeat period for recurring offers, once per birthday. A global limit (default 1 offer per 7 days across all offers) stops customers getting several offers at once.

What kind of discount can an offer give?

A percentage, a fixed amount off the basket or free shipping, optionally only on products of some categories and with a minimum basket subtotal. Each customer gets a unique single-use code for their own account that expires automatically.

Are e-mails sent to everyone in the segment?

By default only to newsletter subscribers, outside the quiet hours (21:00 to 08:00 store time by default) and in batches. You can switch e-mails off per offer. Customers who get no e-mail still see the offer in their account.

Can customers stop the offer e-mails?

Yes. Every offer e-mail, also to customers who are not newsletter subscribers, has a "Stop these e-mails" link that works without logging in and asks for confirmation, plus List-Unsubscribe headers for the unsubscribe button of mail programs. Customers can also turn offer e-mails off or on again under Offers for You. You see and change the choice in the customer's account in the admin (*No Personalised Offer E-mails*). It applies to all offers and does not change the newsletter subscription.

Where do customers see their offers?

In My Account > Offers for You, in My Coupons when CommerceGears Coupon Wallet is installed, in an optional banner on every page while they are logged in, and in the e-mail.

Does the banner break full page cache?

No. Pages stay cached; the banner text and code are loaded privately in the browser for logged-in customers, as Magento does for the mini cart.

Can Exit Intent or Spin to Win use my segments?

Yes. Segments are offered to the other CommerceGears promotions through the Promotions core, so their forms list them, for example to show an exit offer only to lapsed customers.

How do I see if an offer works?

The report shows per offer how many coupons were issued, e-mailed and used, the conversion and the revenue of the orders that used them, and per segment how many customers joined and left. The numbers also appear in the Promotions Overview.

What happens to customer data when a customer is deleted?

Their segment memberships and offer records are deleted with the account. Segment data is derived from Magento data only and is not sent anywhere.

Support

Help from the developers who wrote it

From the blog

Guides and articles

  • Winning back customers who stopped ordering

    Most shops have a list of good customers who quietly stopped ordering. How to find them in Magento 2, send a personal win-back offer and measure who returned.

  • Personal coupons your customers can find again

    A goodwill code only helps if the customer can find it when they next order. How personal coupons work in Magento 2, and how to put them where customers will see them.