In standard Odoo, pricelist-based discounts are not traceable clearly in either reports or accounting entries.
When a pricelist rule applies a discounted price:
- The discount is merged into the final unit price
- No explicit discount value (percentage or amount) is stored
- No separate accounting entry exists for the discount amount
As a result:
- There is no standard report showing:
- Original price, Discount amount, Net selling price
In accounting, revenue is simply reduced, which makes it difficult to:
- Track total discounts given
- Reconcile discounts with management reports
- Perform audit or compliance checks
Current Standard Odoo Behavior
Sales Side
- Advanced pricelists calculate and apply a final unit price
- Discount is not visible as a separate percentage or amount
Sales Analysis reports show only:
- Unit Price, Subtotal
There is no comparison available between:
- Product list price, Pricelist base price, Discounted price
Accounting Side
- Invoice journal entries are posted as:
Receivable Dr (Net Amount)
Revenue Cr (Net Amount)
There is no separate Discount or Contra-Revenue account
Tax is calculated correctly on the discounted value, but:
- Discount amounts are not auditable
Business Requirement
We need to achieve all of the following:
1. Sales Reporting
Visibility of original price vs discounted price
Ability to report total discounts given by:
- Customer, Product, Salesperson, Period
2. Accounting Visibility
- Post discounts to a separate Discount Given / Contra-Revenue account
- Maintain gross revenue for reporting
- Ensure tax calculation remains correct
3. Audit & Compliance
- Discounts must be fully traceable
- Sales and accounting figures must reconcile
Constraints
Standard Odoo does not support this behavior out of the box
Sale order line discount field does not work for pricelist rule–based discounts
Analytical reports alone are not sufficient for accounting purposes
Questions to the Community
- What is the recommended approach to explicitly track pricelist discounts?
- Is there an existing module (OCA / Enterprise / Community) that separates discount amounts in accounting entries?
- Has anyone implemented Gross revenue posting with a separate discount line?
- Would this be best handled by Custom invoice line logic? Analytic accounts? Overriding pricing or invoice preparation methods?
