Skip to main content

Visual price compliance based on product, category and company thresholds

Project description

Odoo Community Association

Sale Price Compliance

Alpha License: LGPL-3 OCA/sale-workflow Translate me on Weblate Try me on Runboat

This module extends the sales pricing functionality to display a color code based on the price at which products are being sold.

Managing Price Compliance Thresholds can be done by adding Manage Price Compliance group to any user. Compliance Tiers can be filtered on sale reports.

You can use up to 3 different price compliance tiers for products, categories or for all company.

You can customize the texts and icons of the tiers via the System Parameters.

Labels of the tier fields will change according to sale_price_compliance.price_compliance_selection_tiers_text System Parameter in views.

This functionality only applies to Sales.

A sale with a line with Non Compliant price (doesn’t fit in any defined tiers) can’t be confirmed. Only Sale Administrators can validate this sales and a message will be posted.

Price Compliance thresholds are selected in this order: Product > Product Category > Company

Each Tier represents the maximun discount applied to the Price of the Product to achieve the target tier.

Color Compliance Tiers

  • Tier 1 🟩: High-yield (Fully compliant)

  • Tier 2 🟨: Medium-yield (Moderately compliant)

  • Tier 3 🟧: Low-yield (Low compliant)

  • Non Compliant 🟥: Non Compliant price (blocked)

  • Pricelist 🟦: Pricelist has been used and it’s price is between pricelist and last compliant tier.

Information Display on Price Compliant Tiers Includes a popup to display detailed information about the price ranges within each price compliance tiers.

Also displays Product Base UoM and Product List Price in Sale Currency in the Top Right corner of the Popup.

Price Compliance Widget

Price Compliance Sale Line Form

Price Compliance Sale Line List

Price Compliance Sale Line Kanban

Table of contents

Use Cases / Context

This module was developed because sometimes commercial users are incentivized to sell at prices that are more beneficial to the company.

It will be useful if you want to visually show your commercial users whether the price they are selling at is in line with the company’s pricing policy.

Usage

To use this module, you need to:

Configure Parameter Text: Change the default price compliance tiers texts

  1. Go to System Parameters.

  2. Create a new parameter with key sale_price_compliance.price_compliance_selection_tiers_text.

  3. Write a dictionary with the values for tiers that you want to change it’s default text.

  4. Save the parameter.

  5. Create a new parameter with key sale_price_compliance.price_compliance_selection_tiers_icon.

  6. Write a dictionary with the values for tiers that you want to change it’s default icon.

  7. Save the parameter.

Example:

Param sale_price_compliance.price_compliance_selection_tiers_text:

{‘t1’: ‘Gold’, ‘t2’: ‘Silver’, ‘t3’: ‘Bronze’, ‘pricelist’: ‘Draw’}

Param sale_price_compliance.price_compliance_selection_tiers_icon:

{‘t1’: ‘🥇’, ‘t2’: ‘🥈’, ‘t3’: ‘🥉’, ‘non_compliant’: ‘⛔️’, ‘pricelist’: ‘🤝’}

Resulting texts and icons will be:

  • Gold: 🥇

  • Silver: 🥈

  • Bronze: 🥉

  • Non Compliant: ⛔️

  • Draw: 🤝

Available keys to be used in the dictionary are:

  • t1: Tier 1

  • t2: Tier 2

  • t3: Tier 3

  • non_compliant: Non Compliant

  • pricelist: Pricelist

Configure: Product Price Compliance Thresholds configuration

  1. Go to Sales > Products > Products > Select one > Sales tab

  2. Enable Use Price Compliance Thresholds under Sale Price Compliance Thresholds

  3. Fill from 1 to 3 tiers that you want to use in this product.

Example: Tier 1: 10%, Tier 2: 20%, Tier 3: 30%. (Use all tiers)

Configure: Product Category Price Compliance Thresholds configuration

  1. Go to Sales > Configuration > Products > Product Categories > Select one

  2. Enable Use Price Compliance Thresholds under Sale Price Compliance Thresholds

  3. Fill from 1 to 3 tiers that you want to use in this category.

Example: Tier 1: 15%, Tier 2: 25%, Tier 3: 0%. (Don’t use tier 3)

Configure: Company Price Compliance Thresholds configuration

  1. Go to Sales > Configuration > Settings

  2. Enable Use Price Compliance Thresholds under Pricing section

  3. Fill from 1 to 3 tiers that you want to use for the company.

Example: Tier 1: 30%, Tier 2: 0%, Tier 3: 0%. (Don’t use tier 2 and 3)

Sale: As a Salesman user

  1. Create a new sale and fill contact field

  2. Add a new line with a product that has been configured to use Price Compliance

  3. Click on the 🟩, 🟨, 🟧, 🟥 or 🟦 icon at the start of the line.

  4. You will see a popup with useful information about the Tier ranges.

  5. Play with it and then set a Non Compliant price (change price or discount to achieve this).

  6. Try to confirm the Sale and see the error.

Sale: As a Sales Administrator

  1. Confirm the previous Sale.

  2. See the message on the chatter.

Reporting: Sales report

  1. Go to Sales > Reporting > Sales

  2. Select bar chart or Pivot view

  3. Group by Price Compliance Level

Reporting: Salesperson report

  1. Go to Sales > Reporting > Salesperson

  2. Select Bar chart + stacked or Pivot view

  3. Group by Price Compliance Level

Reporting: Product report

  1. Go to Sales > Reporting > Product

  2. Select Pie chart + stacked or Pivot view

  3. Group by Price Compliance Level

Reporting: Customers report

  1. Go to Sales > Reporting > Customers

  2. Select Bar chart + stacked or Pivot view

  3. Group by Price Compliance Level

Known issues / Roadmap

  • Widget is not shown properly if the order is not saved and refreshed.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Moduon

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainers:

Shide rafaelbn

This module is part of the OCA/sale-workflow project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file odoo_addon_sale_price_compliance-16.0.1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo_addon_sale_price_compliance-16.0.1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 26625bc77d437f7720cbd342298b048ed9c698c623edf8b4e22bbdf717818c38
MD5 1d2fc0d9fcedd4d18f512b2bef28fb26
BLAKE2b-256 02912bd9dc1873ac98282ce60107a0517de85e9577c6123516420c41bf313033

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page