HS/HSN Codes and Country of Origin on Shopify Invoices

A shipment held at customs because a commercial invoice is missing a country of origin field costs you far more than the paperwork would have taken to get right the first time, in delayed delivery, storage fees, and a customer wondering where their order went. HS codes and country of origin aren’t fields every Shopify merchant needs to think about, but the moment you start shipping internationally, they stop being optional and start being the difference between a shipment that clears customs smoothly and one that sits in a bonded warehouse for a week. This guide covers what these fields actually mean, when your invoices need them, and how to get them onto your Shopify paperwork correctly.

What Are HS Codes and Why Do They Matter?

The Harmonized System, or HS, is a standardized numerical classification used by customs authorities worldwide to identify exactly what a product is. Some countries call their national extension of it the HSN, particularly in South Asia, but the underlying six-digit international core is the same system everywhere.

How the Harmonized System Classifies Goods

Every product in international trade maps to a six-digit HS code at minimum, with many countries extending it to eight or ten digits for more granular classification, such as the US Harmonized Tariff Schedule. Customs authorities use this code to determine the duty rate, applicable regulations, and whether the product needs any special licensing or restrictions. A product misclassified under the wrong code can end up with the wrong duty rate applied, which creates problems for both you and your customer, since the customer is usually the one who ends up disputing an unexpectedly high duty bill at the door.

Why Customs Authorities Require It on Invoices

Customs doesn’t rely on a product description alone to calculate duties, since descriptions are subjective and inconsistent across sellers. The HS code standardizes that classification globally, so a customs officer in any country can look at the code and know precisely what’s being imported, regardless of how the seller chose to word the product name. A mismatch between the HS code on your invoice and the code on your customs declaration is one of the most common causes of documentary holds at ports and airports, and customs authorities generally reconcile every document in the shipment package against each other before releasing it, so consistency across your invoice, packing list, and declaration isn’t optional.

What Is Country of Origin and How Is It Different from Ship-From Location?

Country of origin trips up more merchants than HS codes do, mostly because it’s easy to confuse with where the package is shipped from, and the confusion is understandable given how many other fields in ecommerce genuinely do refer to the shipping location.

Where Goods Were Made, Not Where They Were Shipped From

Country of origin refers to the country where the goods were actually manufactured or substantially transformed, not the country your warehouse or fulfillment center happens to be located in. If you’re shipping from a US warehouse but the product was manufactured in Vietnam, Vietnam is the country of origin, not the United States. Getting this wrong on a customs declaration isn’t a minor clerical error; it directly affects duty calculations and can flag a shipment for a preferential trade agreement it doesn’t actually qualify for. If a product was assembled from parts sourced across multiple countries, the substantial transformation test generally looks at where the final, meaningful manufacturing step took place, not simply where the last box was taped shut.

Why This Distinction Affects Duty Rates

Many countries apply different duty rates, or none at all, depending on where a product genuinely originated, particularly under free trade agreements between specific countries. A product that qualifies for a reduced tariff under a trade agreement between the destination country and the true country of manufacture loses that benefit if the origin field is filled in incorrectly, and a product that doesn’t qualify can trigger scrutiny if the origin looks like it’s being used to dodge a tariff, such as one applied under Section 301 rules. If you want to claim a preferential rate under a free trade agreement, a separate Certificate of Origin is often required alongside the commercial invoice, and it needs to match the origin stated on the invoice exactly.

When Do Shopify Invoices Actually Need These Fields?

Not every invoice your store generates needs HS codes and country of origin listed. This is specifically a cross-border shipping requirement.

Domestic Orders vs International Shipments

For domestic orders, where the customer and your fulfillment location are in the same country, HS codes and country of origin have no role to play. These fields exist specifically for the commercial invoice that travels with an international shipment and gets used by customs to clear it. A domestic VAT or GST invoice and an international commercial invoice are, in practice, two different documents serving two different purposes, even though a lot of ecommerce platforms try to make one template cover both. Trying to force a single invoice template to serve both use cases usually means either cluttering every domestic invoice with irrelevant customs fields or leaving international shipments without the fields they actually need.

Which Countries Require Full HS Classification

Requirements vary by destination. Some countries only require this level of detail above a certain shipment value, while others require it on every commercial shipment regardless of size. UK imports and exports, for example, require a full ten-digit commodity code on the commercial invoice, matching what’s declared to customs, for essentially every international shipment. Checking the specific destination country’s requirement before assuming a general six-digit code will always suffice is worth the extra few minutes, particularly if you’re shipping regularly into a handful of markets where the rules are worth knowing cold rather than looking up order by order.

Getting HS Codes and Origin Data Onto Your Shopify Invoices

Getting the data right in your product catalog is only the first half of the job. It also needs to render correctly on the document customs actually sees, which is the step where a lot of otherwise well-organized product catalogs fall short.

Storing HS Codes in Your Product Data

Shopify has a dedicated field for the Harmonized System code on each product’s shipping details, which is the correct place to store this information rather than burying it in a product description or a custom metafield nobody remembers to check. Filling this in once per product, rather than re-entering it at the time of every international order, is what makes the rest of this process scale. For a catalog with hundreds of SKUs, this is worth doing as a dedicated cleanup pass, working through product categories systematically, rather than filling codes in reactively each time an international order for a new product comes through.

Rendering These Fields on the Actual Invoice Document

Storing the HS code on the product doesn’t automatically mean it prints on your invoice. Your invoicing setup needs to be configured to pull that field through onto the document template your international customers and their customs brokers actually receive, alongside country of origin per line item. This is a more specific customization than most standard VAT or GST invoice templates are built for by default, so it’s worth confirming directly with whichever invoicing app you use, InvoiceForge included, exactly how HS code and country-of-origin fields can be added to your template before you rely on it for an international order at customs. A template that looks complete for a domestic VAT invoice can still be missing exactly the fields a customs broker needs, and the two gaps don’t announce themselves until a shipment is already held.

Building a Reliable Cross-Border Invoicing Process

Getting HS codes and country of origin right on every international order isn’t about mastering trade law, it’s about making sure the right data lives in the right place before the order ships. Populate the Harmonized System code and true country of manufacture on your product catalog once, confirm your invoicing setup can actually render both fields on the document, and check the destination country’s specific requirement before assuming a generic six-digit code is enough. The merchants who avoid customs delays aren’t the ones with the deepest knowledge of tariff classification; they’re the ones who treated this as a one-time setup task on their product catalog rather than a per-order scramble. For the broader question of getting VAT-compliant invoices right across your international markets in the first place, the VAT invoice guide for UK, EU, and Australia sellers is a useful companion to this one, and if your international volume includes bulk shipments, our guide on exporting invoices in bulk covers how to pull commercial invoice data for a batch of orders at once rather than one at a time.

Share your love