Details
-
Type: New Feature
-
Status: Open
-
Priority: Critical
-
Resolution: Unresolved
-
Affects Version/s: 3.0.0
-
Fix Version/s: Short Term
-
Component/s: None
-
Labels:None
Description
A coupon line item from Services::buildServiceCouponLineItems() does not take into consideration whether or not tax should be applied to the discount. This results in line items having being taxed and the discount not removing any of the tax amount from the original line item. For example
Service - $100
Discount - 50%
Tax - 10%
Total should be $55, but is currently $60 because $100 + $100*0.1 - ($100*0.5) = $60
Instead it should be $100 + $100*.01 - ($100*0.5 + ($100*0.5*0.1)) = $55
The question is, how should taxes be handled in coupon line items? Should the line item be marked as taxable? If so, what about when there are multiple services, some taxable some not? Should we instead create a separate line item for each service? Should we calculate the tax and embed it into the line item (don't like that idea)?
UPDATE
Moved to feature request as some jurisdictions require tax on the full price before discounts.
This task must therefore also include a setting to discount tax with coupons (disabled by default to preserve current behavior of not discounting tax).