I'm developing an eCommerce site for a client whose shop is based in Ontario, Canada. They sell books, DVDs and music CDs to all provinces in Canada. After reading up on Canada's sales-tax system, the setup that my client has been using seems inconsistent with what I've learned so far.

From canadabusiness.ca:

Depending on the province or territory in which you operate your business, you need to collect either:

  • A combination of GST and PST
  • GST only
  • HST

However, my client has been charging both GST and HST for all provinces, based on what the product is, as follows:

  • Alberta - Books (GST 5%) - CDs/DVDs (HST 5%)
  • Manitoba - Books (GST 5%) - CDs/DVDs (HST 13%)
  • Nova Scotia - Books (GST 5%) - CDs/DVDs (HST 15%)

Am I missing something here, or has my client been charging sales tax incorrectly?

  • Books are exempt from the provincial portion of sales tax in some provinces. Apr 23, 2018 at 1:04
  • This is a business tax question, probably better suited to another SE forum.
    – pojo-guy
    Apr 27, 2018 at 11:43
  • Thanks for the heads up, @pojo-guy. I Googled "stack exchange tax-related questions" and was directed to this one, but I suppose that was probably because questions related to personal taxes are answered here. I'll look for another SE forum. Apr 28, 2018 at 10:20

1 Answer 1


I know this answer will not be on-topic for this site, but please read it and consider the points. You do not want to get involved in any tax disputes with the government, and you don't want to find yourself at the end of a lawsuit brought by your client if they get in trouble with the CCRA.

I am not a tax professional nor a lawyer, but from software consulting industry experience and previous experience working on eCommerce tax features I can tell you the following:

  1. You should strongly advise your client to consult a tax specialist regarding the tax configuration requirements for their eCommerce software. It is not a straight-forward/blanket calculation on the sub-total of the shopping cart. Calculating retail tax is complicated and if you are a one-man shop and have never worked on tax solutions before, it is a big bite to chew. Just some of the variables that will come into play include:

    • The merchant's physical location(s)
    • The customer's physical location
    • The type of product being sold (e.g. some items tax exempt, some items only need certain tax types applied)
    • The customer's tax-exempt status
    • Changing tax rates and tax types applicable over time
    • The type and volume of any discounts/rebates/promo codes applied to the order or applied at the product level
    • Whether or not the discount is applied at the order level or the product level
    • ...the list goes on

    If they decide to hire a tax professional, the deliverable from that should be a requirements document for you to implement, outlining every use-case with sample orders and an expected tax calculation which you can thence create unit tests on.

  2. In the end, regardless of whether or not they take your advice to seek the help of a tax professional, you need to have your client document the exact tax requirements they wish for you to configure. Have them sign-off on whatever you implement.

  3. From one software developer to another, I highly recommend you design the system so that the client can adjust whatever tax configuration is required at the time. If you implement a generic functionality for applying various types of sales tax based on product type and province, the client can configure it in any way they see fit. Just remember, the "generic functionality" is complicated and there is lots to consider. It is a major effort to build out and test a system that does it all.

In the end, you want to cover yourself as such that there can be no disagreement that you implemented exactly what was asked of you by the client.

  • Thank you so much for taking the time to answer my question. It was definitely the answer that I needed to hear, and I will move forward following your advice. Unfortunately, I don't have enough rep to upvote your answer. Apr 28, 2018 at 10:17

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .