Skip to main content

Discounts — New Engine

info

New Engine

This section covers discounts in the New Engine (2023+), where a Discount is a standalone entity and Coupons are optional activation codes attached to it. For the legacy engine, see Discounts — Legacy Engine.

What is the Discount module?​

The Discount module is Loyal Guru's promotional engine. It gives commercial and marketing teams complete control over every type of price promotion — from automatic club prices and mass leaflet offers to personalized win-back vouchers — independently of the POS or e-commerce checkout system.

A Discount is configured once (what benefit, under what conditions, for whom). At checkout, Loyal Guru evaluates all active discounts against the cart. How that evaluation translates into the final price depends on the integration scope contracted:

  • LG as promo engine — Loyal Guru evaluates the discount and modifies the cart line values directly in the API response. The POS applies the returned prices as-is.
  • POS as promo engine — Loyal Guru evaluates the discount and tells the POS which discounts apply and to whom, providing all the data needed (product IDs, conditions, rule details) so the POS can apply them correctly on its side.

In both cases, Loyal Guru is the source of truth for which discount applies and to which customer. The difference is only in who performs the final price calculation.

What you can do​

Campaign typeExample
Mass automatic10% off all products every Saturday for everyone — no code, no delivery
Club priceLoyalty members pay €1.49 for Product X; non-members pay €1.99
Cart thresholdSpend over €100 → €15 off total, applied automatically
Category booster30% off all organic products every Tuesday for Gold members
BOGO / NxMBuy 2 get 1 free on Coca-Cola when 3+ units are in the cart
Bundle priceAdd Product A + Product B to the same cart → fixed combo price of €35
Win-back voucherCustomers inactive 90+ days receive a unique 20% off code via campaign
Shared couponBroadcast SUMMER20 via email — any eligible customer can apply it
Payment incentiveExtra 5% discount for customers paying with the co-branded credit card

Three levels of personalization​

Every discount is configured for one of three audience levels. The level determines both who receives the discount and how it is delivered:

LevelAudienceHow it is appliedCoupon / Voucher needed?
All members (mass)Every customer, enrolled or notAutomatically at checkout — no code, no delivery stepNo
Loyalty members (club)Enrolled loyalty club members onlyAutomatically at checkout for enrolled membersNo
Personalized (targeted)A specific audience segmentVia a Voucher (unique per-customer code) that links the customer to the discountYes — always
info

Personalized discounts always require a Voucher

When a discount is targeted at a specific audience, it cannot apply automatically — it has no way to identify which customers should receive it at checkout unless they present a code. The Voucher is the Customer ↔ Discount relationship. It is created either by a Targeted Delivery campaign or by calling the trigger endpoint directly.

How to deliver a personalized discount​

There are two ways to assign a discount to a specific customer:

MethodWhen to useHow it works
Targeted Delivery campaignBatch delivery to a segmentBuild an Audience, launch a Targeted Delivery — Loyal Guru generates one Voucher per customer and delivers it via the configured channel (in-app, email, SMS)
Trigger endpoint (POST /discounts/trigger)Single-customer, API-drivenCall the endpoint directly to assign the discount to one specific customer immediately — no campaign UI needed

How It Works​

  1. Create the Discount — define the benefit (type, value), the conditions (products, cart, store), and the personalization level (all members, loyalty members, or personalized).
  2. Deliver (if personalized) — via a Targeted Delivery campaign or the trigger endpoint. Loyal Guru creates a Voucher linking that customer to the discount.
  3. Evaluate at checkout — when a purchase is submitted via POST /carts/realtime, Loyal Guru evaluates all active discounts against the cart and returns the result:
    • LG as promo engine (apply_discounts: true): line values are modified in the response — the POS applies them directly.
    • POS as promo engine (apply_discounts: false): Loyal Guru returns which discounts apply and all the data needed for the POS to calculate and apply them correctly on its side.
  4. Stackability — priority and stackability rules determine which discounts apply when multiple compete for the same cart.

Configuration​

Go to Loyalty and Promotional engine → Discounts → New Discount in the Owner App. The creation flow has three steps:

  1. General — name, description, active dates, and personalization level (all members, loyalty members, or personalized/targeted).
  2. Conditions — product scope, cart conditions, customer conditions.
  3. Effect — discount type, value, and redemption method (automatic for mass/club; Voucher for personalized).

For the full step-by-step guide, see Create a Discount Campaign.

In this section​

PageDescription
Discount TypesPercentage, fixed amount, BOGO, tiered quantity, combo price
Create a Discount CampaignCreation flow: Description → Conditions → Effects → Limits → Stackability
Simulate and Apply DiscountsUse POST /carts/simulate as a calculator and POST /carts/realtime to apply discounts
Coupon ManagementUniversal codes, per-customer vouchers, and auto-selection
Stackability & PriorityExclusive flags and promotion ordering
LimitsGlobal caps, per-customer limits, and budget controls
Campaigns APICreate and update discount campaigns via Streaming API
IntegrationsReading from GET and JSON rules for integration teams