Cover image for Navigating e-commerce taxes

Navigating e-commerce taxes

adamlearns profile image Adam Originally published at adamlearns.com ・6 min read


This post is for people who are interested in selling products online. I am neither an accountant nor a lawyer, so take my research with a grain of salt.

Consumption taxes and their complexity

Whenever you make a sale (digitally or physically), it can be subject to a consumption tax. You likely know of consumption taxes as "sales tax", "VAT", "GST", or other names. The specific rates are based on a combination of both the buyer's and seller's governments along with the type of item sold.

The buyer is responsible for paying the consumption tax, but the seller is in charge of two crucial aspects:

  • Calculating the total tax amount
  • Remitting it to the appropriate government at a particular frequency (typically every quarter)

Before I started selling courses on my site, I naïvely thought that this would be an easy process given how many small vendors exist online. This page, despite being part of the developer documentation for TaxCloud, has some great information about the complexity of this process just for the US. Here's a quote describing that complexity:

Frequently we get calls from developers seeking sales tax rates. We cannot say this enough, rates are not the challenge for sales tax compliance. The actual challenge for sales tax compliance involves multiple factors:

  • Rates (easiest)
  • Jurisdiction identification (there are thousands of state, local, and special jurisdictions, all with varied rules and exemptions)
  • Exemption certificates for exempt entity purchasers
  • Sales tax holidays based upon product or service category and transaction date
  • Assorted caps and thresholds based upon destination and/or price
  • Rounding rules
  • Taxability — Full or partial exemptions based upon product or service category—This is the hardest part.

After doing more research, it turns out that half of the individual states in the US participate in what's called the Streamlined Sales Tax Project. In short, those states pay for fees like those incurred by using a rate-calculation service. TaxCloud will even remit your taxes in those states for free! The flip side is that half of the US doesn't pay these fees for you.

What's more is a term called nexus (reference). When e-commerce was just still young, the US only required that you charge sales tax in states where you had physical nexus, e.g. if you had a physical presence in that state. However, governments now know how much money they're missing out on from the business conducted online, so sales-tax laws were extended to cover economic nexus. This varies from state to state (reference), but I would roughly categorize US states into three categories for meeting economic nexus:

  • $100K+: you need to be doing a lot of business in the state before even collecting any sales tax.
  • 200+ transactions: you need to make a certain number of transactions (even for $1 each) before you start collecting sales tax.
  • Kansas: Kansas gets its own category because it's the only state to have no exception for small sellers, meaning if you sell something for a single dollar, you owe Kansas a few cents.

Complexity extends globally

We've only talked about the US so far! I looked into how taxes in the EU work; all countries in the EU participate in something called MOSS, which is a scheme that allows you to file all member states' VAT via a single state. For example, instead of remitting VAT once to France, once to Germany, and once to Spain, you could simply send all of the money to Spain, and Spain would finish the rest of the process for you.

You would still need to calculate the correct tax rates at the point of sale though. Doing so requires knowing the laws and staying up-to-date on them. In the EU, there are standard rates and reduced rates, and they vary for each country. There are calculators and databases online, but you still need to know which country one of your potential customers resides in, for which you need two pieces of evidence (e.g. the user's IP address and their billing address) (reference).

If you're thinking of selling globally, then you now know a little bit about the US and the EU. I have a game on Google Play, so Google sends me periodic notifications like these:

  • "State and local sales tax changes in Hawaii, Illinois, and South Carolina effective 1/1/2020"
  • "Important tax changes for purchases in Singapore"
  • "Important tax changes for purchases in Malaysia"

How are individuals supposed to keep up with these sorts of changes? Companies like Google can afford to do so because of how much business they conduct, but if you're just starting out, you may not have any revenue to speak of.

Searching for a solution

I was researching payment processors with phrases like "does Stripe/PayPal/Shopify/Square remit consumption tax for you?" At the time of writing, none of those services handle consumption-tax remittance for you, and some will barely help you compute the correct tax rates. I eventually stumbled on the term merchant of record (reference), which is what you call an entity that is authorized and liable for processing your transactions.

Note that just because a business acts as a merchant of record, it does not mean that they necessarily remit consumption taxes for you. Square, for example, acts as a merchant of record, so they'll make sure that payments are PCI-compliant (among other things), but I called their customer service on March 24th, 2020, and they confirmed that they do not remit taxes for you.

Businesses that do remit consumption taxes for you will advertise it because it's no accident that they're providing such a service. As you saw in the last section, it's a non-trivial amount of work to support that process and stay up-to-date.

There are three general solutions for the problem of calculating and remitting consumption taxes:

  1. Don't handle it at all
  2. Handle it yourself
  3. Let someone else handle it

Don't handle it at all

What nagged at me the entire time I was researching all of this was my original question of "how do so many vendors exist if it's this complicated?" I talked to several vendors and confirmed my suspicions—they just don't look into any of this. And the reason why is simple: nothing bad is going to happen to them. You likely have to do hundreds of thousands of dollars' worth of business before a government will even notice you, let alone start investigating or taking punitive actions against you (which, by the way, can include fines or prison time (reference)).

This won't hold true everywhere, and you're probably much more likely to be investigated by your own government before a foreign one. And maybe you'll have generated enough business by then where paying back taxes doesn't break your venture.

I don't recommend ignoring tax compliance. Ignoring it is effective to a point and will clearly save you the most time in the short term, but it would keep me up at night.

Handle it yourself

If you're going to do business in a small set of countries (or potentially even just one country), then this doesn't have to be so bad. Anything beyond a couple of countries and I think you'd be looking at days or weeks of development work to even get a basic solution up and running, and then you'd have to stay in-the-know about legal updates.

Let someone else handle it

This is what I went with for my site. The typical rates are 5-10% of the sale price, and a small flat rate is usually added on top of that. I figure that it's better to get ~93% of the net revenue and sell to many countries than it is to get 100% from only one or two countries.

Some of the services I found that will handle this are below. The links I give are to the pages where they specifically say that they handle remittance:


My biggest motivation for writing all of this was my incredulity over how difficult it is to get started with global e-commerce. I hope the information here could serve as a springboard for your own research. And hey, if you want to help me out in return, check out my courses!

Posted on Jun 18 by:

adamlearns profile



Software developer, game developer, and educator at https://adamlearns.com


markdown guide