A Product Recommendation model requires a transactions source to run. The source can be either a Data Source or a Datamart.
The dataset should contain at least 2 years of transaction history (recommended) to ensure sufficient product co-occurrence coverage.
Required Transaction Data Columns
|
Field |
Required? |
Comment |
|---|---|---|
|
Date |
Yes |
Must be defined as a dimension in the Data Source or Datamart. Used to aggregate and filter transaction periods. |
|
Product ID |
Yes |
Typically ProductID. Must uniquely identify the sold product. |
|
Product Name |
Yes |
Human-readable name for display in the model output and recommendations. |
|
Transaction Identifier |
Yes |
Identifies unique transactions or invoices to group purchased items. For example a basket ID. |
|
Revenue Measure |
Yes |
Represents total sales value per product per transaction (usually unit price × quantity). Avoid negative or null values. |
|
Margin Measure |
Yes |
Used to improve ranking or filtering of recommendations by profitability. |
|
Quantity Measure |
Yes |
Avoid negative or null values. May be log-transformed internally by the model. |
|
Customer ID |
No |
Typically CustomerID. Required only for Customer-based recommendations (see below). |
|
Customer Name |
No |
Typically Customer Name. Used only when Customer-based recommendations are enabled. |
Customer-Based Recommendation
When the Enable Frequently Purchased and Others Buy option is selected in Step 2 (Configuration), the following additional fields are required:
|
Field |
Required? |
Comment |
|---|---|---|
|
Customer ID |
Yes |
Must match the CustomerID field used in the transaction source. Used to identify the customer for co-purchase analysis. |
|
Customer Name |
Yes |
Descriptive customer label for reporting and dashboards. |
Data Scope and Filtering
It is also required to set the data filter in “Filter” to get complete periods (and not e.g. half a week at the beginning or the end of the scope).