International Duties and HS Codes

I have international duties and taxes enabled and it is displaying at checkout. Looking into HS codes for various countries, it looks like for the same kind of product the full HS code and the duty amount differs depending on the country. For example, the action figure or dolls subcategory within the Toys category in Canada has a full HS code of 9503009011 and a duty rate of 0%. But for the UK, the full HS code is 9503002190 and a duty rate of 4%. Shopify allows the entry of just one HS code per product, and that is just the shortened version of 950300. Because the full HS codes for all countries aren’t assigned to a product, this means that duties aren’t being accurately calculated at checkout. Instead of calculating a 4% duty for the UK, it shows as 0%. The necessary funds to purchase the shipping label won’t be collected, since the correct duties may not be collected at checkout from the customer depending on their country. Or is there something about the HS codes that I’m not understanding?

I see that there are integrations such as ClickShip and Easyship. Do those accurately display duties and taxes on the Shopify checkout page? My Shopify store has a marketplace setup where sellers list their items for sale on a third party app, then the items populate on the Shopify store. So it is important for the sellers to have Shopify collect the proper duties and taxes, as well as for the sellers to know the proper HS code when they visit usps.com or ups.com to purchase a shipping label.

https://www.tariffinder.ca/en/search/import/US/action%20figure/9503009011

https://www.trade-tariff.service.gov.uk/commodities/9503002190?day=7&month=2&year=2025

You’re understanding it correctly — this is one of the trickiest parts of international shipping on Shopify.

The first 6 digits of an HS code (like 9503.00 for toys) are universal across 200+ countries. But each country adds its own extra digits after that, and those determine the actual duty rate. That’s why your action figures are 9503.00.90.11 in Canada (0% duty) but 9503.00.21.90 in the UK (4% duty).

Shopify actually does support country-specific HS codes now. On each product page, go to Shipping → Customs information → click “Add HS codes by country/region.” You can enter the full extended code for each market you ship to. The base 6-digit code stays in the main field, and the country-specific codes go in the per-country fields. Shopify then uses the right one at checkout depending on the buyer’s location.

For finding the correct extended codes per country, each government publishes their tariff schedule for free. The UK one you already found (trade-tariff.service.gov.uk) is great. For the US, the equivalent is at hts.usitc.gov. For Canada and the EU, search for “Canadian Customs Tariff” or “EU TARIC database.” In all cases, search by your 6-digit base code and you’ll see all valid extensions underneath.

Regarding your marketplace setup — the HS codes need to be on the product before checkout for Shopify to calculate duties correctly. If your sellers are populating products via an app, ideally the app would set the HS code when the product is created. If that’s not possible, you can add them after the fact via the bulk editor or a CSV import (Settings → Taxes & Duties → Manage → Update with CSV).

As for ClickShip/Easyship — they can help with duty calculation but they pull from the same HS code data on your products. The accuracy still depends on having the right codes assigned. No integration can fix a missing or incorrect HS code.