Discount Creep Agent (Reference)

The Discount Creep Agent detects gradual increases in discounts over time. It uses time-series trend analysis and period-over-period comparisons of discount changes to identify these incremental increases.

List of Required Fields

The following table lists the set of transaction fields required for the Discount Creep Agent to compute its metrics and detection rules. Ensure these fields or equivalent are available and consistently populated in your source Transaction Datamart before deploying the Agent. Those exact field names are not required, but a similar fields with that data is required.

Name

Label

Description

CustomerId

Customer Id

A unique identifier for the customer account.

CustomerName

Customer Name

The display name of the customer account.

CustomerSegment

Customer Segment

A classification grouping customers by size, behavior, or strategic value (e.g., key account, mid-market, long tail).

GrossMargin

Gross Margin

The absolute margin in value terms (Revenue minus Cost of Goods Sold), before overhead allocation.

InvoicePrice

Invoice Price

The price actually charged to the customer on the invoice. The realized transaction price.

LocalListPrice

Local List Price

The standard list price applicable in the customer's local market, before any discounts or adjustments.

PricingDate

Pricing Date

The date on which the transaction or pricing event occurred.

Quantity

Quantity

The number of units sold or transacted in the given period.

Periods

Definition

Series 1 (Current Period)

Item

Value

Description

Data Label

Current Period

Sets a label (name) of the Series1 data series (data set). Data label can be freely customized and renamed according to your preferences.

Data Source

[DM] Transactions (Transactions)

Selected Transaction Datamart. For more information see Required Customer Data.

Currency

USD

Defines which currency the money data will be converted into.

Group By

Group By

Level

Customer Segment

Level 1

customerId

Level 2

Name

Level 3

The specific field names may vary depending on the set of fields in your source Transaction Datamart. The selected fields will be utilized to establish the grouping hierarchy in the Summary Table of the Current Period Series. For additional information about grouping, see the Group section.

Measures

Measure

Label

Aggregation

Name

Description

Invoice Price

Current Revenue

CurrentRevenue

The aggregated sum of invoice price for all included transactions in the current period.

List Price

Current Discount %

{ }

CurrentDiscountRate

For more information about formula see Current Discount Rate.

Margin

Current Margin %

{ }

CurrentMarginRate

For more information about formula see Current Margin Rate.

The specific measures may vary depending on the set of fields in your source Transaction Datamart.

Filters

To ensure the inclusion of only valid transactions for the Current Period, we exclude records with a zero Invoice Price and zero Quantity. Additionally, records are filtered to include only those with an Invoice Date later than a configurable relative date threshold, specified as N months ago from a designated anchor date.

Example
(Invoice Price > 0) AND (Quantity > 0) AND (List Price > 0) AND (Invoice Date > custom N months ago 3)

Summary Table (Current Period)

Customer Segment

customerId

Name

Current Discount %

∑Invoice Price

Cable ties & fasterners

CID-0053

European Distributor NL

37.217

2,912,069.03

Cooling

CID-0034

SO Company Inc UK Global customer Paddington

36.453

334,060.50

Electric Vehicles

CID-0037

Gabe Corporation

49.897

274,510.21

  • Customer Segment – The top-level grouping dimension selected in the Group By definition. Rows are organized by customer segment.

  • customerId – The customer identifier used as the next grouping level within the table hierarchy.

  • Name – The customer name level that further specifies each grouped row.

  • Current Discount % – The calculated discount rate for the current period, based on the configured measure for discount.

  • Current Revenue – The aggregated sum of invoice price for all included transactions in the current period.

  • Current Margin % – The weighted gross margin percentage for the current period.

The specific field names can vary by the source Transaction Datamart. The selected Group By fields define the table’s grouping hierarchy, while the measures determine which aggregated metrics appear as columns.

Series 2 (Previous Period)

Item

Value

Description

Data Label

Previous Period

Sets a label (name) of the Series2 data series (data set). Data label can be freely customized and renamed according to your preferences.

Data Source

[DM] Transactions (Transactions)

Selected Transaction Datamart. For more information see Required Customer Data.

Currency

USD

Defines which currency the money data will be converted into.

Group By

Group By

Level

Customer Segment

Level 1

customerId

Level 2

Name

Level 3

Measures

Measure

Label

Aggregation

Name

Description

List Price

Previous Discount %

{ }

PreviousDiscountRate

For more information about formula see Previous Discount Rate.

Margin

Previous Margin %

{}

PreviousMarginRate

For more information about formula see Previous Margin Rate.

Invoice Price

Previous Revenue

PreviousRevenue

The aggregated sum of invoice price for all included transactions in the previous period.

Filters

To ensure the inclusion of only valid transactions for the Previous Period, we exclude records with a zero Invoice Price and zero Quantity. Additionally, records are filtered to include only those with an Invoice Date within a specific date threshold, specified as N months ago in a designated anchor date.

Example
(Invoice Price > 0) AND (Quantity > 0) AND (List Price > 0) AND (Invoice Date between custom N months ago 12 (13/10/2024) AND custom N months ago 9 (13/01/2025))

Summary Table (Previous Period)

Customer Segment

customerId

Name

Previous Discount %

Cable ties & fasterners

D-0029

KD Fasteners

-11.21605801

Cooling

D-0001

Mahle GmbH

-12.81463801

Electric Vehicles

D-0007

Mitsubishi Electric

-13.19063988

  • Customer Segment – The top-level grouping dimension selected in the Group By definition. Rows are organized by customer segment.

  • customerId – The customer identifier used as the next grouping level within the table hierarchy.

  • Name – The customer name level that further specifies each grouped row.

  • Previous Discount % – The calculated discount rate for the current period, based on the configured measure for discount.

  • Previous Margin % – The weighted gross margin percentage for the previous period.

  • Previous Revenue – The aggregated sum of invoice price for all included transactions in the previous period.

Join Series (Join Series)

Item

Value

Description

Data Label

Join Series

Sets a label (name) of the Join Series data series (data set). Data label can be freely customized and renamed according to your preferences.

Definition

Set up the relationship between the series by mapping the matching data columns/dimensions that you would like to include in the definition.

Series

Dimension

Series

Dimension

Current Period

customerId

Previous Period

customerId

The specific measures may vary depending on the set of fields in your source Transaction Datamart.

Measures

Measure

Description

Discount % change

For more information about formula see Discount % Change.

Revenue impact

For more information about formula see Revenue impact.

Summary Table (Join Series)

Customer Segment [Current Period]

customerId [Current Period]

Name [Current Period]

Customer Segment [Previous Period]

Name [Previous Period]

Discount% change

Revenue impact

Cooling

D-0001

Mahle GmbH

Cooling

Mahle GmbH

-0.180831358

9184624.446

Cable ties & fasterners

D-0029

KD Fasteners

Cable ties & fasterners

KD Fasteners

0.131913707

32688952.16

Electric Vehicles

D-0007

Mitsubishi Electric

Electric Vehicles

Mitsubishi Electric

0.452948893

19094153.51

  • Customer Segment – Grouping dimension used to present results per segment, consistent with the series’ Group By configuration for alignment across periods.

  • customerId – The customer identifier that aligns rows across periods for the joined output.

  • Name – The customer name shown for readability within each grouped row.

  • Discount % change – The computed period-over-period change in discount derived from joining the current and previous period series.

  • Revenue impact – The quantified effect on revenue associated with the observed discount change for the joined row.

Detection Rules

Detection Rules defines the Agent’s alert conditions and includes scheduling. When conditions are met, actions are triggered during the next Agent run.

  • Series selection and conditions – Select which series to evaluate and specify the conditions that constitute a detection. Use Preview Rules to validate the rows that match before proceeding.

  • Tuning and iteration – Refine the rule definitions to fit your business context and the number of detected cases.

info Default thresholds are flexible, adjust as necessary.

Example

Series

Rules

Join Series (Join Series)

Discount % change > 5

Schedule

Configure when and how often the Agent runs as part of this step so detections are evaluated on a cadence.

Example

Start Date

Period

Interval

13/10/2025 8:55

Day

7

Start Date – The date when the scheduled task will run for the first time.
Period – Period which represents the offset between each run.
Interval – Interval which represents the number of repetitions in a selected period. Allowed characters are 0-9. 0 means one-off run.

Action Definition

Notifications assigned to specific users (The assignment must be made to a genuine system user). For more information see Action Definition.

Example

Summary

Description

Due Date

Assign to

Discount creep Action

Discounts increase over time, review of the account could reveal some opportunities

in 7 days

First Name Last Name

Impact Calculation

You can define specific metrics to compute the foreseen impact of the actions. Please only use total absolute value (and not relative values) as those metrics will be aggregated.

Impact Definition

Measure

Impact Type

Realization Rate (%)

Order

Revenue Impact

Revenue

20

1

Summary

Review the setup of the Agent, here you can see all the set parameters in one place.

If you are happy with the setup, click Submit for Approval. Once the Agent is approved, it becomes active and starts monitoring your data based on the schedule.

Review the final results in the Summary step.