Core Concepts
Cart promotions help to provide immediate purchase incentives by offering real-time benefits at the point of sale. Unlike loyalty programs that reward behavior over time, these promotions automatically scan the cart, check the rules, and apply rewards the moment conditions are met.
Every cart promotion is built on four key components:
| Component | Purpose |
|---|---|
| Eligibility | Defines who can access the promotion and under what circumstances. |
| Qualifying Conditions | Defines what the cart must contain for the promotion to trigger. |
| Benefit | Defines the reward or discount applied when conditions are met. |
| Limits | Defines the boundaries that control how often and how long the promotion runs. |
Eligibility
Eligibility defines who can access the promotion and where it can be applied. A promotion is only evaluated if the transaction falls within the defined conditions.
| Scope Type | Description | Example |
|---|---|---|
| Store/Zone | Restricts the promotion to specific physical locations or logical groups. | Valid only at Bangalore and Kerala store locations. |
| Day/Time | Restricts the promotion to specific days of the week or time windows. | Happy Hour: Valid only on Weekdays between 4 PM and 6 PM. |
| Customer | Restricts the promotion to specific customer segments or tiers. | Exclusive offer for Gold Tier members only. |
Earning criteria for loyalty earning cart promotions
This section applies to promotions that require customers to earn the benefit first.
| Earning Type | Description | Example |
|---|---|---|
| Single Activity | Triggered by a one-time action like making a transaction, registering, or updating a profile. | Earn a discount when you sign up for email updates. |
| Activity Milestone | Triggered when a customer reaches a cumulative goal from a pre-configured tracker. | Earn a reward on your 5th visit. |
Duration
Duration defines the time during which a cart promotion is active.
| Setting | Description | Example |
|---|---|---|
| Validity Period | The overall start and end dates for the promotion. | Promotion runs from June 1 to June 30. |
| Redemption Window | For earned promotions, the number of days a customer has to redeem after earning. | Must be redeemed within 30 days of earning. |
| Time-of-Day Restrictions | Limits the promotion to specific hours within valid days. | Valid only between 4 PM and 6 PM. |
By default, an organisation can have up to 250 active promotions across all types. To increase this limit, raise a Jira ticket to the Capillary Product Support team.
Qualifying conditions
Qualifying conditions define what the cart must contain for the promotion to apply. The system evaluates the cart in real-time, and the promotion triggers only when ALL configured conditions are met.
Cart-level conditions
These conditions evaluate the entire cart as a single unit:
| Condition Type | What it checks | Example |
|---|---|---|
| Cart Amount | Total gross value of the cart before tax and discounts. | Cart total must be $500 or more. |
| Count of items in the cart | Total number of distinct items (SKUs) in the cart. | The cart must contain at least 5 items. |
| Sum of line item amount for selected product | Total price of only the selected products. | Spend at least $1000 on Denim products. |
| Sum of line item quantity for selected product | Total number of units for only the selected products. | Buy at least 3 T-Shirts. |
| Payment Mode | The payment method used for the transaction. | Pay using a credit card to qualify. |
| Gift Voucher | Whether a specific gift voucher code is applied. | Apply the Employee_Special_Voucher to qualify. |
Product-level conditions
These conditions target specific items within the cart using filters:
| Filter Type | What it does | Example |
|---|---|---|
| Include | Only count items that match the specified criteria. | Include only items where Brand = "Nike". |
| Exclude | Count everything except items matching the specified criteria. | Exclude items where Category = "Clearance". |
| CSV Upload | Upload a list of specific SKUs to include or exclude. | Upload a CSV with 50 specific product codes. |
Benefits
The benefit is the reward a customer receives when their cart meets the qualifying conditions.
Benefit scope
Benefit scope determines where the discount applies:
| Scope | How it works | Example |
|---|---|---|
| Cart | The discount applies to the entire bill total. The cart is treated as a single unit. | Get a flat $10 off your entire bill. |
| Select products in the cart | The discount applies only to specific items within the cart. | Get 20% off on Running Shoes only. |
Product benefit logic
When applying discounts to specific products, define the relationship between triggering items and rewarded items:
| Logic Type | How It Works | Example |
|---|---|---|
| Over and above the condition (Buy X, Get Y) | Items that met the condition stay at full price. The benefit applies to additional items. | Buy 2 Pants, Get 1 Belt for 50% off. |
| Selected in condition (Buy X, Get % off X) | The benefit applies to the same items that met the condition. | Buy 2 Pants, Get 10% off those Pants. |
Benefit value types
Benefit value type defines how the discount amount is calculated:
| Benefit Type | How It Works | Example |
|---|---|---|
| Fixed Amount | Deducts a fixed currency value from the price. | Get $150 off. Price: $500 → $350. |
| Percentage Based | Deducts a percentage of the price. | Get 20% off. Price: $100 → $80. |
| Free Product | Adds a specific SKU to the cart at $0 cost. | Get a free Summer Tote Bag. |
| Fixed Target Amount | Sets items to a fixed bundle price regardless of original cost. | Buy any 3 Jeans for exactly $999. |
Recurring benefits
Enable Apply Benefit on Each Unit to make the benefit repeat within a single transaction:
| Unit Type | How It Works | Example |
|---|---|---|
| Item Quantity | Benefit triggers for every X items purchased. | Every 2 shirts bought = ₹50 off. Buy 4 Shirts = ₹100 off. |
| Item Amount | Benefit triggers for every $X spent. | Every ₹1000 spent on Denim = ₹100 off. Spend ₹2500 = ₹200 off. |
Stacking and priority
When multiple promotions are valid for a single transaction, stacking rules and priority settings determine which promotions are applied and in what order.
Stacking behaviour
Each promotion has a stacking setting that controls whether it can be applied with other promotions on the same cart.
| Setting | How it works | When to use |
|---|---|---|
| Exclusive (stacking disabled) | If this promotion is applied, no other promotions can be applied to the cart. | Use for high-value offers like "Flat 50% Off Everything" where additional discounts are not intended. |
| Stackable (stacking enabled) | Other applicable promotions can be applied alongside this one. | Use for smaller incentives like "Free Shipping" that should combine with other discounts. |
When exclusive and stackable promotions qualify at the same time, the exclusive promotion takes precedence and blocks all others from being applied, regardless of their individual stacking settings.
When multiple exclusive promotions qualify, only one can be applied. The system uses the promotion ranking order below to determine which exclusive promotion wins.
When multiple stackable promotions qualify, all of them are applied. The ranking order determines the sequence in which each discount is calculated — this matters because some discounts are applied to the original cart value, while others are applied to the already-discounted amount.
Promotion ranking order
When the system must choose between promotions — either because stacking is disabled or to determine the order of application — it evaluates them in the following priority order:
1. Segmented promotion (Highest priority) Targets a specific, pre-defined customer group. Because this promotion was deliberately configured for a precise audience, it is treated as the most intentional and takes precedence over all other types.
2. Reward The customer spent loyalty points or currency to acquire this promotion. Because the customer has already given up something of value to hold it, the system honours it before considering promotions they received passively.
3. Code-linked The customer actively typed in a promo code at checkout, signalling deliberate intent to use that specific offer. This explicit action gives it higher priority than promotions applied automatically.
4. Earliest expiry Among promotions that are otherwise equal in priority, the one expiring soonest is applied first. This prevents a customer from losing a nearly-expired offer because a longer-lived one was picked instead.
5. Maximum discount (Lowest priority) If no other differentiator applies, the promotion that gives the customer the greatest monetary saving is chosen. This acts as the final tiebreaker and ensures the customer always gets the best available value when all else is equal.
The ranking order applies within the constraints of your stacking configuration. A lower-ranked stackable promotion can still be applied alongside a higher-ranked one — ranking only determines the winner when a choice must be made.
Communication
Configure automatic notifications to customers at key moments in the promotion journey.
| Trigger | Availability | What It Does | Example |
|---|---|---|---|
| On Earning | Loyalty Earning & Rewards only | Sends a message when the customer earns the promotion. | "Congratulations! You've earned a 15% discount for completing your profile." |
| Expiry Reminder | All Promotion Types | Sends a reminder before the promotion expires. | "Don't miss out! Your 'Buy 2 Get 1' offer expires in 48 hours." |
Supported channels: SMS, Email, and Push Notifications.
Limits
Limits control how often and how widely a promotion can be used. These ensure the promotion remains financially viable and prevents misuse.
Constraint types
| Constraint Level | What it controls | Example |
|---|---|---|
| Global | Total redemptions across all customers for the promotion's entire lifecycle. | First 1,000 customers only. |
| Per Customer | Maximum redemptions or discount value for each individual customer. | Max 3 uses per customer, or max $500 total discount per customer. |
Available limit settings
| Limit | Description | Example |
|---|---|---|
| Individual Cart Limit | Max times the promotion applies within a single transaction. | Limit: 1. Customer buys 6 Coffees (Buy 2 Get 1 Free) but gets only 1 free coffee. |
| Individual Customer Limits | Max lifetime uses or total discount value per customer. | Max 3 redemptions, or max $500 total discount. |
| Refresh Period | When the customer's limit resets. Options: Never, Days, or Weeks. | Reset every 24 hours, or weekly reset on Sunday. |
| Global Count | Hard cap on total redemptions across all customers. | First 1,000 customers only. Once reached, promotion ends for everyone. |
| Maximum Earning per Customer | For earning-type promotions, limits how many times a customer can earn the promotion. | Each customer can earn this promotion once. |
| Validity days from issue | For earned promotions, how long can the customer redeem after issuance. | Must be redeemed within 30 days of earning. |
Redemption restrictions cannot be updated once the promotion is live.
Updated about 2 hours ago
