International Shipping and Customs Duties: What Shopify Merchants Need to Know

Niko MoustoukasUpdated

Quick summary

UK Shopify merchants selling internationally should configure Shopify Markets to collect duties and import taxes at checkout (Delivered Duty Paid), add HS codes to all products for accurate duty calculation, and set de minimis thresholds per market. Using DDP rather than DDU eliminates surprise import charges and significantly reduces parcel refusal rates on international orders.

A customer in Germany finds your product, adds it to their basket, pays £95, and two weeks later opens a note from DHL asking for €18.50 in import VAT before they can receive the parcel.

They are furious. They request a refund. They leave a negative review. They never buy from you again.

This is DDU (Delivered Duties Unpaid) in practice, and it is the most common reason UK merchants with international traffic fail to build international revenue. The fix is DDP (Delivered Duty Paid): collect duties and taxes at checkout so the customer pays once, the parcel arrives, and the experience is seamless.

Here is how to set it up correctly.


DDP vs DDU: What Is the Difference and Why Does It Matter?

DDU (Delivered Duties Unpaid): the merchant ships the order and the customer is responsible for paying any import duties and taxes charged by their country's customs authority on delivery. The customer does not know the amount at checkout. They find out when the courier sends a duty request, sometimes weeks after the order was placed.

DDP (Delivered Duty Paid): the merchant calculates the applicable duties and taxes at checkout, collects them from the customer as part of the order total, and remits them to the relevant customs authority (directly or via a carrier/duty service). The parcel clears customs with all taxes pre-paid.

The case for DDP is straightforward. The data is unambiguous: 67% of consumers who receive an unexpected customs charge say they will not purchase from that merchant again (Royal Mail International Insights, 2023). DDU trades a better margin on the individual order for a permanently worse international customer experience.

DDP is almost always the right choice for international selling if you want to build repeat international revenue. The exceptions are niche B2B selling where buyers are sophisticated importers, or markets where the de minimis threshold means most orders will be duty-free.


What Are the De Minimis Thresholds by Country?

De minimis thresholds are the value below which imports are exempt from customs duties (and sometimes import VAT). Understanding these thresholds tells you which international markets need full DDP setup and which can be handled more simply.

Country/Region Duty De Minimis VAT/GST De Minimis
European Union €150 (duties); €0 (VAT applies to all B2C imports via OSS) No threshold: VAT applies from £1
United States $800 USD No federal sales tax de minimis; state rules vary
Australia AUD $1,000 (duties); AUD $0 for GST (applies from $1) GST applies on all imports via low-value tax
Canada CAD $20 (duties exempt above this); CAD $40 (taxes) Provincial rules vary
United Arab Emirates AED 1,000 5% VAT applies
Japan JPY 10,000 Consumption tax applies on imports

Key implication for EU selling: the EU removed its VAT de minimis for B2C imports in July 2021. Every shipment to an EU consumer, regardless of value, is now subject to the destination country's VAT rate. If you are not registered for EU VAT or Non-Union OSS, you are either underpaying tax or passing the tax liability to your customers at delivery. Neither is acceptable for a professional ecommerce operation.

Key implication for US selling: the US $800 de minimis is the highest in the world. The majority of UK ecommerce parcels sent to the US will fall below this threshold, meaning no federal customs duty applies. However, the US has signalled intent to review this threshold, and state-level sales tax obligations apply to US sales above certain turnover thresholds, independent of the de minimis on duties.


What Are HS Codes and Why Do They Matter?

HS (Harmonised System) codes are internationally standardised product classification codes used by customs authorities worldwide to determine the applicable tariff rate for any imported goods.

Every product you ship internationally should have an HS code assigned. The code determines:

  • The customs duty rate in the destination country
  • Whether any import restrictions or licences apply
  • The VAT/GST rate applicable in some jurisdictions

Where to add HS codes in Shopify: go to Products, select the product, scroll to Shipping, and enter the HS code in the "Customs information" section. Shopify passes this code to your shipping carrier, who includes it on customs declarations.

For UK merchants, the HMRC Trade Tariff tool (available at gov.uk/trade-tariff) is the authoritative source for finding the correct HS code for your products. For a broad product catalogue, this is time-consuming but necessary. Incorrect HS codes can result in shipments being held at customs, reclassified at a higher duty rate, or returned.

Duty calculation services like Zonos (covered below) can assist with HS code classification at scale.


How Do You Configure Shopify for DDP (Landed Cost)?

Landed cost is the term for the total cost of delivering a product to the customer including all duties, taxes, and shipping charges. Collecting landed cost at checkout is what makes DDP work.

Shopify's standard tax settings handle UK VAT and basic EU VAT through Shopify Markets, but they do not natively calculate customs duties for all international markets. For full DDP across the US, Australia, Canada, and other markets, you need a duty calculation app.

Zonos Duty and Tax (from $99/month + transaction fees)

Zonos is the market leader for international duty and tax calculation on Shopify. It integrates directly with Shopify Checkout and provides:

  • Real-time duty and tax calculation at checkout for 200+ countries
  • HS code classification assistance
  • Automated remittance to customs authorities in supported markets (including EU VAT via their OSS programme)
  • DDP indicator on shipping labels and customs declarations
  • IOSS (Import One Stop Shop) number provision for EU parcels under €150

Zonos charges a transaction fee on top of the monthly subscription. The fee structure varies by plan. For merchants with significant international volume, request a custom quote.

Avalara AvaTax (pricing varies by transaction volume)

Avalara is a broader tax compliance platform that handles sales tax (US), VAT (EU, UK), and customs duties. The Shopify integration is strong, and Avalara is well-suited to merchants with complex tax obligations across multiple jurisdictions. The setup is more involved than Zonos, and Avalara is typically the right choice for merchants with £2M+ in international revenue who need a comprehensive compliance solution rather than a focused duty calculation tool.

Shopify Markets Pro (pricing: 0.85% of international order value)

Shopify Markets Pro (available on Shopify Advanced and Plus plans) includes managed duty and tax calculation, IOSS registration, and DDP fulfilment for EU markets. It is the most integrated solution for merchants on higher-tier Shopify plans. Shopify handles compliance, remittance, and carrier DDP instructions natively. The 0.85% fee on international orders is higher than the per-transaction fee on Zonos or Avalara for many merchants, but the operational simplicity may justify the cost.


How Do You Use Shopify Markets for International Pricing?

Shopify Markets allows you to set separate prices for each market, independent of currency conversion. This is important for international selling because exchange rates fluctuate and because landed cost varies by market.

For DDP selling, a common approach is to:

  1. Set base prices in GBP for your UK market
  2. Enable automatic currency conversion for each international market
  3. Add a buffer (typically 2-5%) on top of the converted price to account for exchange rate fluctuation
  4. Use Shopify Markets' market-specific price overrides to set exact prices for key markets where conversion alone does not produce clean price points

For markets where DDP adds significant duty cost (e.g., Brazil, which has very high import duties), you can either set a higher price to include the duty, set the market to DDU with a clear warning to customers, or disable that market entirely until you have a more complete fulfilment solution.


Carrier Considerations for International Delivery

DDP requires your carrier to declare DDP status on the customs documentation. Not all carriers handle this equally.

Carrier DDP Capability Notes
DHL Express Excellent Full DDP support, IOSS capability for EU, strong tracking
FedEx International Priority Excellent Full DDP, good customs brokerage integration
UPS Worldwide Very Good Full DDP, strong US coverage
Royal Mail International Limited DDU standard; DDP available on some premium services
Evri International Limited DDU standard; not recommended for DDP markets

For international selling at volume, DHL Express or FedEx are the recommended carriers for DDP delivery. Their customs brokerage networks ensure parcels are cleared efficiently in the destination country, and their tracking is sufficient to support any customer disputes.

Royal Mail and Evri are adequate for low-value international shipments in markets with high de minimis thresholds (US) but should not be relied upon for EU DDP without specific DDP service agreements.


Key Actions to Take Now

  1. Audit your current international shipping configuration. Check whether you are shipping DDU or DDP to each of your major international markets. If DDU, calculate the volume of customer complaints, returns, and negative reviews attributable to surprise customs charges.
  2. Add HS codes to all products in your Shopify catalogue before installing any duty calculation app. The app cannot calculate correctly without them.
  3. Install Zonos Duty and Tax if you are on Shopify Basic or Advanced. If you are on Shopify Plus, evaluate Shopify Markets Pro against Zonos on a per-transaction cost basis.
  4. Configure Shopify Markets for your top three international markets. Set specific prices or price buffers to account for duty costs in each market.
  5. Switch your primary international carrier to DHL Express or FedEx for any market where DDP is required. Negotiate account rates directly with the carrier if your volume exceeds 50 international parcels per month.
  6. Register for EU Non-Union OSS if your EU B2C sales exceed €10,000 annually. This is separate from DDP configuration but is required for EU VAT compliance.

Frequently Asked Questions

Can I keep selling DDU to save on setup complexity?

You can, but the commercial case for doing so is weak. DDU generates a worse customer experience, higher return rates from duty-surprised customers, and reputational damage from negative reviews. The setup cost for DDP via Zonos is recoverable within a few months through improved international conversion and retention.

What is IOSS and do I need it?

IOSS (Import One Stop Shop) is an EU scheme that allows merchants to collect and remit VAT on B2C imports into the EU for orders under €150. If you use Zonos or Shopify Markets Pro, IOSS handling is included. If you are shipping EU orders without IOSS registration and without charging VAT at checkout, you are either creating a customs liability for your customers or a tax liability for yourself.

Do I need separate HS codes for the UK and EU?

The EU uses the EU Combined Nomenclature (CN) codes, which are an extension of the international HS system. UK tariff codes (available via HMRC) align closely but are not identical for some product categories. If you are selling into both markets at volume, ensure your codes are verified against both tariff schedules.

What happens if my HS code is wrong?

An incorrect HS code can result in the shipment being reclassified by customs at the destination, which may trigger a higher duty rate than you collected from the customer. Carriers may charge reclassification fees. In some markets, deliberate misdeclaration is a customs offence. Always use the HMRC Trade Tariff tool or a duty calculation service's classification tool to verify codes.