FROM CACHE - en_header

Mixed VAT and non VAT and Discount, Tax calculating incorrectly

7 0 2


So We are UK based. So VAT applies here. 

We sell Some standard Taxable items at the normal 20% and we have some made of just sugar/icing so they count as edible and thus are 0% VAT in the UK. 

So I untick the Sugar items Variant of "Charge tax on this variant". 


If I put together a cart of just Taxable items and apply a customers discount code. VAT calculates fine. 

If I put together a cart of just sugar 0% VAT items and a discount code. VAT calculates fine. 


If I include both Sugar and Normal VAT and apply a discount code. The VAT comes out as a weird half way figure between VAT being applied and not being applied. 

Example screen shot below;

Booties Sugercraft Toppers Blue have "Charge tax on this variant" unticked

Snowflake Cupcake Cases in Rip-Top have "Charge tax on this variant" ticked. 

Example of VAT problemExample of VAT problem

The way our government (HMRC) says you should calculate VAT and a discount is to apply the discount first then calculate the VAT. 

Above example the VAT should only be on the "Snowflake Cupcake Cases in Rip-Top" and result in £2 VAT. 

I can't figure out where £4.4 came from. If you put the full VAT on all items it should come out as £10.69. Which If I re enable tax it does. 


Is there some weird proportioning of the discount going on that shouldn't be?


Anyone any clue how to re arrange my setup to get this to calculate right?

Replies 3 (3)
Shopify Partner
22 1 1

Hello @jetblackstar1 


Interesting case !

Can i have more information about it ?

- The discount you applied, how do you configure it ? Is it a % of discount? Or is it a fixed amount discount?

- Is the shipment subject to tax? 


My guess here is ->

Inside the tax amount, there is a mix of Shipping tax and product tax.
With more informations, i might be able to rebuild the tax amount.

Hope it helps, waiting for your reply.

Have a nice day,


E-commerce analytics should be easier, that is why we have created
Shopify Partner
6 0 0

I actually have the same problem.
The discount does not apply to the entire order but proportionally to each product.
This is a problem when you have a mixed VAT in the same order.


I take an example.

I have a product with 5.5% VAT.

And a product with 20% VAT.


To calculate the VAT, shopify will apply the discount in proportion to the value of each product.

For the first product with 5.5% VAT, shopify calculates this way :

1 - VAT without reduction
10*5,5% = 0,55

2 - The price of the reduction on the product applied proportionally :
5*10/30 = 1,67

3 - VAT calculate on discount :
1,67*5,5% = 0,092

4 - Shopify deducts the VAT from the product, the VAT from the discount :
0,55 - 0,092 = 0.458

Whereas I don't want my discount to be mixed with VAT.
I want a discount on the whole order with 20% VAT.

What can be done to solve this problem ?

Sorry for my english which is approximate and thank you for your help.

Shopify Partner
143 5 34

The £4.44 comes from applying the 20% to the total amount eligible to this rate.
In your case the eligible amount consists of two elements:

  • the Snowflake's discounted value:
    £14.28 - discount of £9.08 * portion of snowflake (£14.28 / £62.53) = £12.21
  • shipping = £10

So 20% of (£12.21 + £10) = £4.44

Public Apps | Theme customization & App development
 - Was my reply useful? Like it to let me know!
 - Did I answer your question? Please mark as Accepted Solution.
 - Need more help? Contact us.