How does tax work - VAT and GST

##Set-Up

Super-admin needs to set up the tax system

  1. Set up your country / region as default tax zone

  1. Set up required tax categories

For Australia, we have one - GST
If you have different tax rates for different kind of products (for example, 20% as default tax rates, but reduced rate 15% for food products), then you have to create different tax categories, one per type of products, and select if you want which one you want to display by default [see image below].

  1. Then you can set up one or more tax rates within this tax category

Again, for Australia we only have one - 10%
You will have one tax rate per tax category for your default zone. If you are delivering to zones with a different tax rates, you can create other tax rates for your category and link them to the according zones.

This is set to ‘included in price’ for both GST and VAT, as the tax is included in the price of products rather than added on afterwards.

##Who charges tax?

Enterprises have a ‘Registered for sales tax’ / ‘Registered for GST’ flag in their enterprise profile under Business Details - that can be true or false. No tax will be charged unless the hub for an order is registered for sales tax.

##What is charged?
If Enterprise is ‘registered for sales tax’, then

  • they can mark products as GST/VAT inclusive, which will then consider that they have 10% etc included in price.
  • the shipping charge (ie. pickup or to the door delivery) may be inclusive of tax. The tax on shipping can be configured from the Tax Settings page.
  • fees can be set to be inclusive of or exclusive of tax by putting them in a tax category on the Enterprise Fees page.

If Enterprise is not registered for sales tax, then

  • no tax is recorded in orders from that enterprise, even when tax is configured for products, shipping or enterprise fees

How is tax on fees calculated? (a worked example)

  1. There is a cake that attracts 10% GST. It sells for $22, inclusive of $2 GST.
  2. Henry’s Hub charges a packing fee of 5% on all of their cakes. This packing fee includes 10% GST.
  3. The packing fee is calculated at 5% of $22 = $1.10.
  4. The packing fee is inclusive of $0.10 GST.
  5. Therefore, an order for the cake will cost $22 + $1.10 = $23.10, and will include $2 + $0.10 = $2.10 GST.

##How is this displayed to Customer?
The Shopfront will then show the tax inclusive prices, which are broken out purchase process as follows:

The full-page cart and the order confirmation page+email will show:

  • The item prices, inclusive of GST
  • [TODO] Each of the fees charged, marked as “(inc. GST)” when GST is included in it
  • [TODO] Per order / admin & handling fees, marked as “(inc. GST)” when GST is included in it
  • [TODO] The shipping charge, marked as “(inc. GST)”
  • The total GST charged in the order
  • The total price, inclusive of GST

[TODO] The checkout screen will show:

  • The same things as the other screens, except the item prices and fees will be shown as subtotals instead of as an individual breakdown.
  • NB. No tax details are currently shown on the checkout screen, since these values are more difficult to calculate due to the dynamically changing shipping method.

What happens when an existing enterprise registers for GST?

  • A producer is registered for GST and is supplying a cake.
  • The cake attracts GST, and its GST-inclusive price is $22.
  • A hub that is not registered for GST is selling the cake.
  • The hub sells the cake for $22 - there is no change to the price.
  • The hub then registers for GST.
  • The cake still sells for $22, but now $2 of that is charged to the customer as GST, and the hub keeps only $20 after tax.
  • If the hub wishes to prevent this shortfall, they must increase the price of the cake to $24.20.

##Reports

  • [TODO] The Customer Totals report will need a new column that includes the GST total - see git
  • Reports may need to be adjusted to separate the fees out and see the tax for correct accounting, see here
  • Sales tax report should now be correct, but could be much more readable, see git

Check

  • easy enough to handle standard and reduced rate for UK VAT? This could be solved by having two categories, one for standard rate and one for reduced rate. Then products would be put in the appropriate tax category.
1 Like

This all looks good. I have a couple of suggestions:

  1. In the UK there are 2 tax bands - standard rate tax at 20% and
    reduced rate at 5%. These rates are regularly adjusted in
    government budgets so we need to be able to change them.

  2. As Stroudco is VAT registered we would need to pay VAT on an admin
    fee. However we do not need to pay VAT on a markup, so we need
    to make sure that our invoices and reports show our 12% markup as a
    markup and not an admin fee.

  3. For future OFN UK users it would be good for them to have an option to charge an admin fee and have that as VAT inclusive - but this is not necessary for the initial development needed by Stroudco.

I picked up that the UK variable VAT rate might cause a lot more work, so I thought it was worth adding that ALL FOOD AND DRINK IS STANDARD RATED SO I DON’T THINK WE NEED TO BOTHER HAVING A REDUCED RATE VAT CATEGORY IN OFN.

Although you are right on this I think it will be important to include this reduced rate in the long term. It’s largely for things like soap, toothpaste, shampoo, for which there is scope for local production that I think works well within Food Hubs.

Perhaps we can just make this a non-urgent feature, the dual rate in UK VAT.

Lynne

Yep good plan, I’ve put it in as TODO in the above, we’ll see how this works, but kind of collecting up issues that can be moved to github when they’re more in the ‘let’s do now’ category . . (info mgmt overhaul in progress :wink:

Will talk to @RohanM about the ‘mark-up’ vs ‘admin’ in standup this morning. It’s slightly tricky, because you could use the ‘per order’ fees to pull it out and not include in tax - but they’re called ‘admin & handling’ on the front at the moment, and there isn’t a ‘% per order’ currently (the % is calculated per product)! How much does it matter what it’s called in the system?

For later consideration, would it be a case of actually having two tax rates to choose from, and would the reduced rate also apply to fees / shipping etc or they would still be the standard VAT rate?

Kirsten and I have had a quick chat, and we’re thinking that the easiest way to choose which fees are taxed would be to specify a tax category for each fee when defining them. That would be a lot more explicit, rather than having implicit knowledge that particular fee types are taxed and others aren’t.

When creating fees that attract tax, we’d need to alert enterprises that aren’t registered for sales tax since this is a contradictory setup.

Sorry it has taken me so long to reply to this. Picking up Kirsten’s questions first:

It’s slightly tricky, because you could use the ‘per order’ fees to pull it out and not include in tax - but they’re called ‘admin & handling’ on the front at the moment, and there isn’t a ‘% per order’ currently (the % is calculated per product)! How much does it matter what it’s called in the system? For later consideration, would it be a case of actually having two tax rates to choose from, and would the reduced rate also apply to fees / shipping etc or they would still be the standard VAT rate?

I think all that matters to Stroudco is that there is not an item on the shopping screen or customer invoice (or any other report) that is called ‘admin fee’ or ‘handling fee’ or anything similar.

It is fine that the % is calculated per product - as long as that percentage can be discounted for customers who are either doing voluntary work or paying a ‘membership’ standing order.

Yes the current Stroudco system allows the user to choose from one of 3 options (zero, reduced or standard tax rates) although there is currently no use for the reduced rate. Yes fees/shipping would attract standard rate tax.

Moving on to Rohan’s point:

the easiest way to choose which fees are taxed would be to specify a tax category for each fee when defining them. That would be a lot more explicit, rather than having implicit knowledge that particular fee types are taxed and others aren’t. > When creating fees that attract tax, we’d need to alert enterprises that aren’t registered for sales tax since this is a contradictory setup.


This sounds fine as long as enterprises can change the tax category in the future if the tax rates change. I agree we need to make it clear to enterprises that even if they are not VAT registered, that because Stroudco IS VAT registered, their products might be liable to VAT. This is the note we put in the Stroudco producer joining form:

  1. Stroudco is VAT registered. Most food products are not VATable but please check this link to see if your product is VATable: > Food products (VAT Notice 701/14) - GOV.UK > If you sell VATable products through Stroudco and if you are not VAT registered, Stroudco will deduct 20% VAT from the sale price of any VATable product before paying you the balance. Please bear this in mind when setting your prices.

ok people. The first tranch of this is in staging ready to test. I’ve included some notes above about how I’ve done the set-up and recommend someone goes through and sets up UK staging how you want it.

It looks to me like the different tax rates will be no problem, you just set two and the producer / hub selects which one applies when setting up the product

The issue about the mark-up I think we probably getting around by creating another fee type called ‘mark-up’ or by doing 2nd dot point here

Just to chime in with a quick question regarding GST on Australian OFN, it’s now applicable to products, but I can’t seem to find a way to apply it to enterprise fees. I noted that tax on fees was mentioned above, but wasn’t sure if it was in place as part of the latest update? (if so, can someone point me in the right direction?)

For instance, any delivery fees we would charge, would need to include GST (and I guess show that in the customer order and invoices - as noted in the set-up at the top of this discussion “Each of the fees charged, marked as “(inc. GST)” when GST is included in it”)

yep, that’s not in yet - setting GST on fees is in staging, will come through this week.

I think also that we might want to override how Matt did the shipping tax (e.g. set at instance level) and just allow the Enterprise who’s creating the shipping method also choose whether it includes tax or not? @rohan?

thanks Rohan - as soon as this is in UK staging I will set up some tests. thanks for all your work on it.

Hi everyone! About Norway, we will need actually three type of VAT rates… for non-food the regular rate is 25%. Then for food and drinks it’s 15%, and there is a special rate for raw fish which is 11,11%… Some hubs may or may note be VAT registered (but I see we can say true or false). Appart from that we need to go more into testing, but I guess it wouldn’t be so different from what is already done in UK and Australia.

Testing notes:
[they can mark products as GST/VAT inclusive, which will then consider that they have 10% etc included in price. [again check - perhaps won’t if super-admin has set tax to not be included]

  • Yes, when I made a product with the tax category ‘GST’, 1/11th of the price was split out as GST at checkout. This 1/11th was also pulled out as ‘Sales Tax’ in the Sales Tax report. Conversely, when the tax category was ‘None’ no GST was split out at checkout or in the sales tax report.

[the shipping charge (ie. pickup or to the door delivery) is taken as inclusive of tax [looks like this can be turned on or off in Tax Settings . . check / test]

  • Yes, when tax setting ‘shipment including vat’ was ticked, my flat percentage shipping fee was assumed to include 10% GST. This was shown in the Sales Tax report. However, GST on shipping isn’t visible to customers at checkout (whereas tax on products is). When I unticked ‘shipment including vat’ my shipping fee no longer included tax (but the flat % remained unchanged). Reports no longer split GST out of my shipping charge.

[fees can be set to be inclusive of or exclusive of tax]
Yes, my admin fee (coordinator flat %) could be set to GST inclusive (in which case GST was split out in the sales tax report) or not (no GST captured in sales tax report). Admin fee GST was also not visible to the customer.

Hi Myriam - see set-up instructions above - you should be able to easily set up the three tax rates . .

I have a story about cake to verify that some of our thinking about tax is correct:

A producer is registered for GST and is supplying a cake.
The cake attracts GST, and its GST-inclusive price is $20.
A hub that is not registered for GST is selling the cake.
The hub sells the cake for $20 - there is no change to the price.
The hub then registers for GST.
The cake still sells for $20, but now $1.82 of that is charged to the customer as GST, and the hub keeps only $18.18.
If the hub wishes to prevent this shortfall, they must increase the price of the cake to $22.

Would this be the correct behaviour?

1 Like

Ignore me if i’m asking questions in the middle of your testing.

Will there be anything in the shopfront to show customers which items are GST inclusive (a little asterix or as part of the price breakdown pie chart?)

GST doesn’t show up in the Edit Cart page.

In the checkout & final invoice page, there is currently nothing to show which of the products in the order are attracting the GST - only a final GST amount.

Will GST as a breakdown be included in products reports? - this links to the wishlist concept of keeping a central price list on Xero and importing in to OFN

this is a photo of rohan shortly after he announced “I think I’ve finished the QE#%@KJ tax” … he didn’t swear, I added that for effect.

We’ve got a bunch of stuff queued up but aiming to have the whole shebang in staging2 tomorrow afternoon. so prepare your testing data please :smile:

ok people, sales tax as described above is now in Aus staging and will be pushed to production in v0.8.1

Be most excellent if you can test it lots. We’ve done quite a bit but obviously is complicated, so the more eyes the better!

NB. there are a bunch of improvements that are [TODO]. These are nice to have, but not critical to it working so going onto the backburner

Bloody marvellous @RohanM

Thanks for all your work on this
Yes - correct behaviour re cake pricing

I made some changes in the wiki as it was not clear for me that you had to create a tax category for each group of products, and in a tax category, the potential different taxe rates are linked only to the different zones…
https://guides.spreecommerce.com/user/configuring_taxes.html
Hope it’s clearer :wink:
@Kirsten: to make it more clear maybe I can replace the screenshots by some from the norwegian instance where we have different tax categories, so that we have a more “complex” example?