Setup

Shopify Markets and the customs data it expects

Enabling Shopify Markets and duty collection is mostly a settings exercise. What surprises people is that it quietly raises the bar on your product data — fields that were optional become the difference between an accurate quote and a customer receiving a surprise bill.

Where does your catalog stand? Origova scans every variant for missing or malformed HS codes, country of origin and weight — free, at any catalog size. Run the free scan

What Shopify actually requires

Shopify's help documentation is direct about this: to accurately calculate duties, your products must have HS codes and a country or region of origin assigned.

For collecting duties and import taxes at checkout, its requirements page lists three conditions:

What happens when data is missing

Shopify's documented fallback behaviour
What is missingWhat Shopify doesPractical result
HS codeFalls back to the product's description and categoryDescribed by Shopify as less accurate
HS code, description and categoryStill calculatesShopify says likely to be inaccurate
Country of originCalculates without itShopify warns of additional duties on delivery
Nothing missingUses your dataBest available estimate — still an estimate
Nothing errors, which is the problem None of the rows above produces an error message. The store keeps selling, the checkout keeps quoting, and the failure shows up weeks later as a customer complaint about a courier invoice. This is why enabling Markets is a good moment to audit the catalogue rather than a moment to assume it is fine.

Estimates are estimates

Worth being clear with your own customer-service expectations: Shopify describes duty calculations as estimates, notes that the amount charged by customs authorities may differ, and notes that some countries apply de minimis thresholds below which no duties apply. A DDP checkout reduces surprise, it does not eliminate variance. For the wider picture see landed cost for Shopify sellers.

A pre-launch checklist

Before you turn duty collection on
CheckHowWhy
Every shipping variant has an HS codeInventory CSV export, filter HS Code blanksIt is a stated requirement
Every shipping variant has an originSame file, filter COO blanksRequired for accurate calculation
Origin values are ISO codesRead the distinct values in COOChina and UK fail; CN and GB pass
Codes are six digits or more, even lengthFilter by lengthShort or odd codes trigger the invalid-code error
Weights are setCheck for zero weightsCarrier labels and duty-by-weight lanes need them
Carrier supports DDP labelsCheck with the carrierShopify lists it as a condition

That is six checks, and the first five are answerable from one inventory CSV export. If the catalogue is large, a free Origova scan reports all of them per variant in one pass and lets you fix by group with an undo.

Why this shows up out of nowhere

A lot of merchants meet these fields for the first time right after enabling international markets, because that is when Shopify starts asking. If Shopify has started demanding customs data on orders you consider domestic, that has its own explanation.

The short version

Markets and duty collection do not create new customs obligations — they surface the ones your catalogue already had. HS code and origin on every variant that ships, ISO codes for origin, six-digit-plus codes, and a carrier that supports DDP. Audit first, enable second.

Not customs advice Origova scans and bulk-fixes the customs data in your Shopify catalog. It does not replace a licensed customs broker and it does not make the final classification decision for you. Classification depends on the product's material, use, composition and origin. Verify classifications with the HTS, CBP rulings, or a licensed customs broker.

Frequently asked questions

What customs information does Shopify Markets need?

For duty calculation Shopify states that products must have HS codes and a country or region of origin assigned. Without an HS code it falls back to the product's description and category, which it describes as less accurate.

What are Shopify's requirements for charging duties at checkout?

Its help page lists three conditions: if you use Shopify shipping labels the carrier must support DDP labels, you cannot be using Shopify Fulfillment Network, and you must have Harmonized System (HS) codes applied to products.

Can I collect duties without HS codes on every product?

Duties are still calculated, but Shopify warns they are likely to be inaccurate when HS code, description and category are all absent, and that inaccurate information may lead to additional duties charged to the customer on delivery.

Does enabling Markets explain why Shopify suddenly wants HS codes?

Often yes. Merchants who never saw customs prompts before frequently start seeing them after enabling international markets or a carrier service that requires customs data.

Is a Shopify duty quote the final amount?

No. Shopify describes duty calculations as estimates and notes that amounts charged by customs authorities may differ, and that some countries apply de minimis thresholds below which no duties apply.

Sources for this page: Shopify: Duties and taxes for markets · Shopify: Charging duties at checkout · Shopify: Adding HS codes to your products · Shopify: Inventory CSV

Related: Shopify customs information explained · Landed cost explained · Preparing for US customs rules · All customs errors, indexed