We have a subscription service which is billed with odooV8. The invoice should include the number of subscriptions as well as the amount of months the subscription was used.
To separate these two components, we use the uom_qty field for the subscription count and the UoM field for the amount of months, so we can create a subscription product with the price per subscription and month. As Unit of Measure the base unit is one month and there are more like quarter, half-year and year.
In addition we have a discount for customers with a high number of subscriptions, i.e. 5% discount when the customer has more than ten subscriptions. The discount is being calculated with a pricelist rule, which counts the products based on the standard UoM for that product.
So when a customer has an invoice with 8 subscriptions for three months, he should not get a discount. However, Odoo calculates the mass discount in the product's standard UoM which is 8 subscriptions * 3 months = 24 and uses that value for processing the discount for the pricelist.
How do we get around this nicely? Should we create a product for each subscription length with fixed prices? Or is there a better way to do this?