docs

Promotions

Feature Summary

The Promotions feature allows businesses to create targeted and flexible discounts applied directly to order items. Whether through Automatic Discounts, Buy X Get Y, or Combo Deals, promotions help increase conversion, boost basket size, and tailor offers to specific customer segments.

Promotions are managed through the SCAYLE Panel or Admin API and can be defined with specific scheduling, priorities, conditions (global and item-based), shop, country and audience specific targeting, and combinability with other promotions. These configurations are evaluated in real-time by the Storefront API, ensuring promotions are applied only when all rules are satisfied.

Advanced views and condition builders use Google Common Expression Language (CEL) to allow fine-tuned logic. Promotions can coexist and stack with Price Campaigns and Vouchers, respecting defined combinability rules.

Supported Effects

Each promotion is assigned a so-called effect. An effect is the result of a promotion being applied to a specific item in the basket/order when all the conditions are satisfied. Effect can also be considered the “type” of the promotion:

Buy X get Y

A Buy X Get Y promotion is a type of conditional discount where a customer must purchase a certain number of qualifying items (X) to receive a discount on one or more additional items (Y). The discount on the Y items can be a percentage, a fixed amount, or completely free.

Examples

  • Buy two t-shirts and receive one pair of socks for free.
  • For every sneaker in the basket, you receive one care product for free.
  • Buy 2 quantities of the same item and receive 10% of discount on the third item

Learn more about Buy X Get Y.

Automatic discounts

When the promotion conditions are satisfied, the customer will receive a relative (e.g. 10%) or absolute (e.g. 10€) discount on specific items in the basket/order.

Examples

  • 10% off of every sneaker, but only when customer is in the audience “VIP”.
  • 15€ off of every item, which is more expensive than 200€.
  • 10€ off of the cheapest/most expensive item in the basket

Learn more about Automatic Discounts.

Combo Deals

A Combo Deal promotion allows you to offer a set of specific items for a single, predefined price. The promotion is only applied if all required items in the combo are purchased together.

Example

Buy one Jeans and one t-shirt for 20 €.

Learn more about Combo Deals.

Architecture & Diagram flow

Key Benefits

  • Flexible Discount Structures: Choose from multiple promotion types including automatic discounts, Buy X Get Y and Combo Deals
  • Audience Targeting: Apply promotions to specific customer groups or audiences for personalized marketing.
  • Item set building: Build a specific set of products to apply a promotion to / to be distributed as reward for a promotion.
  • Stackable Configurations: Combine promotions between each other, with vouchers and price campaigns for complex discount strategies.
  • Automated Application: Promotions are applied automatically when conditions are met - end user input is not a must - though can be configured under promotion codes.
  • Efficient Management: Create, edit, activate, or deactivate promotions directly from the SCAYLE Panel and / or Admin API with ease.

Capabilities Overview

✔️ Supported

  • Ability to set up a Promotion Code on top of Automatic Discounts
  • Ability to define Tiered Discounts based on the customer's Minimum Order Value (MOV) for Automatic Discounts
  • Promotion combinability controls
  • (Multi-) Shop, country, and audience-level targeting
  • Custom data fields and advanced conditions using CEL expressions
  • Pro-rata distribution of discounts over items participating in the campaign available
  • Automated promotion management via API support for promotion fetch, validation, and updates
  • Manual creation and management of promotions via SCAYLE Panel\

❌ Not Supported

  • Mid-life promotion type change (you must create a new promotion for a different type)
  • Currency auto-conversion for fixed-value discounts (must configure per shop country)
  • Basket level promotions
  • Advanced conditions related to customer attributes

Understanding the Feature

Each promotion has a set of basic configurations, such as:

NameDescription
NameEach promotion has a specific name, that you can freely choose. The name is not unique, so multiple promotions can have the same name.
Display NameEach promotion can have a specific Display Name attached that will be exposed throughout the full order lifecyle (e.g. Checkout, Invoices and E-mails)
CombinableConfiguration which states whether the promotion can be combined with others and if so, with which ones. You can either include or exclude other promotions.
SchedulePeriod in which the promotion is valid.
AudiencesDefines groups eligible for the promotion. You can pick from an existing Audience, or select All Available
StateA promotion can be either active or inactive. Promotions in the state inactivate are not returned by the Storefront API, and are also not valid when applying them to items in a basket/order.
PriorityPriority refers to the ranking of a promotion when compared to other promotions. Useful in the storefront, when running multiple promotions and you want to evaluate, which one has a higher priority by comparing.
Custom DataCustom data represents a JSON object, that you can use freely to persist any data that you like.
Supported EffectAutomatic Discount, Combo Deal or Buy X Get Y.
Promotion ConditionsConditions are special rules that must be satisfied in order for the promotion to be applied.

Key Notes & Limitations

⚠️ No Currency Normalization for Absolute Discounts: A 10-unit discount set in Germany (EUR) will apply as 10 units in Poland (Zloty) too. Separate promotions must be created for each country.

⚠️ Buy X Get Y Requires Configuration: This feature is disabled by default to prevent accidental free giveaways. Contact your SCAYLE Account Manager to enable it.

⚠️ Promotion Type Is Immutable: Once a promotion is created, its type cannot be changed. To switch types, create a new promotion and disable the old one.\

Applicable Scenarios

Create Audiences - enables fine filtering of users that will take part of the promotionAudiences
Create Item sets - can simplify filtering of products that will take part on the promotionItem Sets
Set up an automatic discount with a fixed 10€ value on item level.Automatic Discount
Set up an 10% automatic discount on items upon usage of the code "10discount"Promotion Code
Buy 3 Levi's Jeans and Get 15% on the cheapest item (with option to proportionally distribute discount)Buy X Get Y
Buy 3 Levi's Jeans and Get 20€ on the cheapest item (with option to proportionally distribute discount)Buy X Get Y
Buy 2 products from item set A and 1 product from item set B and get a 15% discount on the cheapest item (with option to proportionally distribute discount).Buy X Get Y
Buy 2 items from Item Set A for 30€.Combo deal
Buy automatically discounted products from a specific category / item attributes for a given period of timeFlash sales
Get 10% discount when the basket reaches 100€, 15% when it reaches 250€, and 20% when it reaches 500€.Tiered Discount