Classify products according to their sales and seasonality.
auto_awesome What this module does
AI-generated from the code · Odoo 12.0Classify products automatically as A, B, C or D based on how much they sold in a chosen period, and mark how seasonal each product is. Thresholds and periods are set per company in Sales settings.
This module adds two extra labels on every product: a sales classification (A, B, C or D) and a seasonality classification (Very high, High, Medium, Low). Both appear on the product form and on product variants, right after the product category, and can be used as filters in the product search view (Sales Classification A to D). Only sales managers can edit them; other users see them read-only.
In Sales settings you define, per company, the sales amounts that separate classes A, B and C (D is everything below C), how many past days of sales to look at, and how many days a newly created product should be ignored. Defaults are 10,000 / 5,000 / 2,500, 365 days evaluated and 0 days ignored.
The classification is based on confirmed sales in the chosen period, using delivered quantities to weight the revenue. A scheduled job named "Classify products by sales" can run the calculation automatically (it is delivered inactive, weekly by default), and it processes every company with its own rules. Products created more recently than the "days to ignore" setting are left out of the calculation. The module works on product.product, product.template, res.company and res.config.settings.
Depends on
Models and fields (4)
- res.company · extends an existing modelsale_classification_a (Sales equal or above this amount), sale_classification_b (Sales equal or above this amount and below A), sale_classification_c (Sales equal or above this amount and below B), sale_classification_days_to_ignore (Ignore products newer than these days), sale_classification_days_to_evaluate (From the date the action is run, evalute these days)
- product.product · extends an existing modelsale_classification (Sales classification), seasonality_classification (Seasonility)
- product.template · extends an existing modelsale_classification, seasonality_classification
- res.config.settings · extends an existing modelsale_classification_a, sale_classification_b, sale_classification_c, sale_classification_days_to_ignore, sale_classification_days_to_evaluate
Text generated by AI (DeepSeek) from reading the Odoo 12.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 1 confirmed, 8 with no information of 9 versions.
Sources · Odoo 12.0
Confirmed on 2026-11-03 in branch 12.0 of OCA/sale-workflow.
terminal Installation and usage
OCA documentation · Odoo 12.0Configuration
Source · Odoo 12.0To configure this module, you need to:
- Go to Sales > Configuration > Settings and Product Catalog group.
- There you can configure the sales amount ranges that a product has to acomplish to be consider in each sales classification group.
- By default, a period of 365 days will be evaluated, but it can be set here as well.
- We can also set a minimum product life in the Sales classification days to ignore setting.
A cron is available to schedule the classification evaluation periodically. Go to Settings > Technical > Automation > Scheduled Actions and set the Classify products by sales cron to your preferred settings.
Usage
Source · Odoo 12.0If you want to configure your products by hand, you can go to any of them and set the Sale Classification and Seasonality Classification on hand.
No verified information in OCA: Installation.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.