@scratz, you mentioned -
Did I get the use-case right?
'normal tax' - Default. Calculate tax on the discounted price using the percentage specified in config file. Thus is how things normally work.
'full tax' - calculate tax on the original undiscounted price using the percentage specified in config file.
'tax-percentage ' - conditionally show a text-box where the user can specify a custom tax percentage and this would be then used to calculate tax on the original undiscounted price.
'no-tax' - zero tax.
As @trendoman mentioned, in the get_taxes() function of cart_ex.php, we can loop through all items in the cart and calculate tax according to the selected values.
Tax on shipping can be added to the calculated value if desired.
How does that sound?
From what I could understand, there are certain products that may have 'Item level discounts' configured (which serves to reduce their effective prices) but you'd still want to tax these products at their original prices (and this tax percentage could be product specific). Conversely. there are certain products that do not need to be taxed at all.Sometimes, taxes on the full value of certain discounted products need to be charged, and sometimes there are items that don't require taxes to be charged.
Did I get the use-case right?
Assuming I got the use-case correct above, we can have a dropdown for every product with these four values where -Is there any way to create an option for each product that is something along the lines of "full tax / tax-discount / no-tax" to be taken into consideration during the tax calculations?
'normal tax' - Default. Calculate tax on the discounted price using the percentage specified in config file. Thus is how things normally work.
'full tax' - calculate tax on the original undiscounted price using the percentage specified in config file.
'tax-percentage ' - conditionally show a text-box where the user can specify a custom tax percentage and this would be then used to calculate tax on the original undiscounted price.
'no-tax' - zero tax.
As @trendoman mentioned, in the get_taxes() function of cart_ex.php, we can loop through all items in the cart and calculate tax according to the selected values.
Tax on shipping can be added to the calculated value if desired.
How does that sound?