I have the following configuration.
Product A with price 998,00 and flat tax rate 23%
Product B with price 1,00 and flat tax rate 23%.
Product A has Product B as a product part in product's A component definiton.
When product A is added to the cart its price is presented like that:
Price without tax: 999,00
Price with tax: 1228,77
Price with tax is ok because 998,00 * 1,23 + 1,00 * 1,23 = 1228,77
I've a custom ProductDetail template based on StandardRegular (Revindex v18)
On this custom template I'm presenting product price with tax and without tax (unlike default template where only price without tax is displayed).
For price without tax I use:
@Html.Raw(String.Format("{0:c}", @Model.ProductVariant.CombinedPrice))
and
@Html.Raw(String.Format("{0:c}", @Model.ProductVariant.CombinedPromotionPrice))
For price with tax I use:
@Html.Raw(String.Format("{0:c}", @Model.ProductVariant.CombinedPriceWithTax))
and
@Html.Raw(String.Format("{0:c}", @Model.ProductVariant.CombinedPromotionPriceWithTax))
Here:
Price without tax: 999,00
Price with tax: 1228,54
I think that CombinedPromotionPriceWithTax doesn't include product part tax.
It looks like this is calculated that way:
998*1,23+1,00 = 1228,54
In my opinion that is a wrong calculation - product part tax should be included in calculation. Although, maybe there is a solution to overcome this problem another way?
I've tried other fields with prices of ProductVariant model but I've not found correct values.