The short version
Goods in distance-sale parcels up to €150 that you ship into the EU from outside it now carry a €3 customs duty per tariff line, from 1 July 2026 until 1 July 2028, on top of VAT — except goods benefiting from preferential trade agreements or Customs Union measures that meet the Commission's conditions — and a separate €2 handling fee owed by the importer or declarant follows once its delegated act is in force, which the Council and Commission put by 1 November 2026.
Both count distinct tariff lines, not units: five identical T-shirts are one €3 line, while a parcel of apparel, cosmetics, shoes and jewelry is four lines, or €12.
Managed Markets and Shopify's built-in import tax and duty calculation already support the flat €3 per tariff line, with no settings changes required once duties at checkout are on.
Default to DDP, which collects the €3 and VAT at checkout for one guaranteed total, unless your EU volume is genuinely tiny.
What's New Since Publication: Updated since publication · 5 changes
- Shopify's Help Center no longer shows two answers for a product with no HS codeThis article used to note that two Shopify Help Center pages disagreed on what happens when a product has no HS code, description or category. The duties-and-import-taxes overview page has since been rewritten and no longer says duties aren't calculated. The charging-duties page says duties and import taxes are still calculated but are likely to be inaccurate, so the advice is unchanged: give the product a code.
- The Commission's guidance now says PIDs apply to consignments up to €150The European Commission's customs guidance, in its version of 5 October 2026, says the standardized product identifier (PID) requirement applies to goods sold in distance sales of imported goods with an intrinsic value not exceeding €150 as from 1 November 2026, and that the Commission is amending Annex B to clarify the €150 limit. The previous version of the guidance applied it to all goods sold in distance sales. The guidance is not a legally binding act.
- The customs reform is law, and the handling fee is set at €2 per itemThe reform became law as Regulation (EU) 2026/2108, signed on 16 September 2026 and published in the Official Journal on 19 September 2026. It charges the handling fee per item on goods sold in distance sales, with no €150 cap. On 21 September 2026 the Commission adopted a delegated regulation setting the fee at €2 per item; it enters into force only if neither the Parliament nor the Council objects within 30 days, and the fee applies from the tenth day after its publication in the Official Journal.
- The EU handling fee is agreed, and due by 1 November 2026The separate handling fee on small parcels is no longer under negotiation. The Council gave the customs reform its own final approval on 3 September 2026, leaving the European Parliament's vote as the last step, and an EU-wide handling fee on small parcels will be introduced by 1 November 2026, with the Commission setting the level of the fee before member states start applying it. The amount is still unset, and this fee is separate from the €3 customs duty.
- Managed Markets stops supporting DDU on 24 August 2026Shopify ended DDU support in Managed Markets in every country and region where Managed Markets supports DDP. Markets that used or inherited DDU moved to DDP automatically, so those buyers pay duties and taxes at checkout instead of to the carrier on delivery. This does not touch standard Markets, where DDU stays a normal choice, and inside Managed Markets DDU remains available in countries and regions where DDP isn't supported. To keep buyers in a DDP-supported market paying at the door, Shopify documents one route: deactivate Managed Markets for that market — which also removes Global-e as merchant of record there and stops Managed Markets calculating duties.
For years, a parcel worth under €150 could enter the EU duty-free. As of 1 July 2026, that is over. A new, temporary €3 customs duty now applies to low-value parcels shipped into the EU from outside it — and if you sell into Europe from the US, the UK, or Asia, it lands directly on your landed cost. This guide is the practical version: what changed, whether it touches your store, exactly what it costs your margin (on a small two-line parcel it can run about 12% of the order), and how to set Shopify up so the €3 doesn't quietly eat your profit.
What Changed on July 1, 2026
Key takeaway
The core change is simple to state. Under Council Regulation (EU) 2026/382, the EU eliminated the €150 customs-duty relief that let low-value imports enter duty-free, and replaced it with a flat €3 customs duty per item in consignments whose value does not exceed €150. The stated reason is fairness: the exemption was seen as tilting the field toward direct low-value imports over traditional retail, which pays duty on bulk shipments.
With e-commerce expanding rapidly, the world is changing fast – and we need the right tools to keep pace. That is why the decision on customs duties for small parcels coming into the EU is so important to ensuring fair competition at our borders in today's e-commerce era.
The €150 exemption is gone
Key takeaway
The €3 is a fixed amount, not a percentage of value — so there is no ad valorem calculation to run on each line, and no need to establish a customs value to work out the duty itself. The parcel's intrinsic value still matters, though: it is what decides whether a consignment falls under the €150 ceiling where the flat duty applies at all.
It runs as a temporary measure from 1 July 2026 until 1 July 2028. After that, the special €150 regime disappears entirely and normal ad valorem HS duty rates apply to distance-sale goods regardless of their value. Here is the full timeline, so you can see what has already landed and what is still ahead.
What did not change: VAT and the €150 value threshold
Two things are easy to confuse here. First, VAT has not changed: import VAT was already collected on parcels up to €150, and it still is — the €3 is charged in addition to VAT and any national handling fees. Second, the €150 figure itself still matters, but now as the ceiling for the €3 regime, not a duty-free line. The existing VAT schemes — the Import One-Stop Shop (IOSS), Special Arrangements, and the standard procedure — are not changed by the €3 duty, so how you already declare and collect VAT stays the same.
What's still ahead: the handling fee and PIDs
Key takeaway
Two related measures are on the horizon, and one of them firmed up in September. The separate handling fee is now law: the reform became Regulation (EU) 2026/2108, signed on 16 September 2026 and published in the Official Journal on 19 September 2026. The regulation charges it per item — goods sharing the same tariff classification and description (and origin, where declared), the same unit the €3 duty counts — on goods sold in distance sales, and unlike the €3 duty it does not limit the fee to consignments up to €150.
On 21 September 2026 the Commission adopted a delegated regulation setting the fee at €2 per item; it can enter into force only if neither the Parliament nor the Council objects within 30 days, and it applies from the tenth day after its publication in the Official Journal. The Commission says the EU will apply the €2 fee from 1 November 2026, though the regulation itself ties the start to that delegated act rather than to a fixed date. It is owed by whoever owes the customs debt — the importer or declarant — not by your customer.
A second review sits closer than the 2028 end date. From 1 October 2026 and every month after, the Commission must assess whether trade flows are being diverted and, where appropriate, propose extending the €3 duty to cover all goods in a consignment up to €150 — not only those sold at a distance. That is an obligation to assess, producing at most a proposal, so it is a watch item rather than something to plan around.
More concrete are Product Identifiers (PIDs), which become mandatory on 1 November 2026 (voluntary until then, with no penalty). They require standardized identifiers — a merchant identifier and manufacturer identifiers, plus an exception code where none exists — so product data flows accurately from seller to customs declarant. The practical effect: a generic product description will no longer be enough.
Does This Affect Your Store?
Key takeaway
Before the math, settle the simplest question: does this even touch you? The duty targets distance sales into the EU — goods dispatched by or on behalf of a seller from a third country to a consumer in an EU member state. Find your row below.
Who the €3 Duty Applies To
| You ship… | To… | Affected by the €3 duty? |
|---|---|---|
| From the US or Asia | An EU consumer, parcel ≤ €150 | Yes — €3 per tariff line |
| From the UK | An EU consumer | Yes — the UK sits outside the EU customs union |
| From EU stock or an EU warehouse | An EU customer | No — intra-EU shipments are exempt |
| From outside the EU | A non-EU country | No — that destination's own rules apply |
Applies to consignments up to €150 in intrinsic value shipped into the EU from outside it. Intra-EU orders are out of scope. Verified against Shopify and European Commission sources, July 2026; re-verified September 2026.
One narrow exception sits inside that scope, and it is the one worth checking if you ship from the UK. The Commission excludes goods benefiting from preferential trade agreements or Customs Union measures — as long as the VAT has not been collected using IOSS and they are declared in H1. All three conditions have to hold together, the test is on the goods rather than on the seller, and if you do use IOSS the €3 applies regardless. Whether a given product qualifies for preferential origin is a question for your customs agent, not a setting in Shopify.
A regime worth separating from this one while you are here: packaging EPR. Every EU country runs its own extended-producer-responsibility scheme for the box and filler you ship in, and the duty to register with it is older than this customs reform, unrelated to the €150 ceiling and triggered in Germany by the very first parcel. Nothing about the €3 duty changes it, and the EU's packaging regulation (PPWR) added a design layer on 12 August 2026 — the whole picture is in our EU packaging EPR and PPWR guide.
Product safety is a third separate track: GPSR has applied since December 2024, and our GPSR guide for non-EU sellers covers the EU responsible person it asks for.
Where IOSS fits in
Key takeaway
The Import One-Stop Shop (IOSS) is a VAT scheme, and whether you need a number of your own is a decision with its own routes and its own price — we work it through in our guide to whether your store needs an IOSS number. Whether the import scheme or the Union OSS is the one you need turns on where the stock sits — IOSS vs OSS for a Shopify store settles that.
What belongs here is the boundary: the €3 duty does not change how IOSS works — the VAT schemes are untouched — but it does sit alongside it: the IOSS holder is first in the chain of parties that can declare the goods. In short, whichever VAT route you use, the €3 duty applies the same way; it is a duty question, not a VAT one.
The €3-Per-Tariff-Line Math
Key takeaway
This is the part most guides get wrong, so it is worth being precise. The regulation charges €3 per “item,” but “item” is a legal term, not a physical one.
Why an “item” means a tariff line, not a unit
In EU customs law, an item is one or more goods sharing the same tariff classification, description, and origin. Because of the way the IT systems work, the €3 applies per declaration line, irrespective of the quantity in that line.
So five identical T-shirts under one HS code are a single €3 line — the quantity is free. But a T-shirt and a watch are two different classifications, so they are two lines, or €6. The lever that moves your cost is the number of distinct categories, not the number of units.
Worked examples: €3, €6, €12
Key takeaway
The official worked examples make the rule concrete. Here is how the same €3 stacks up across typical parcels, including Shopify's own illustration of a mixed cart.
How Many €3 Charges a Parcel Attracts
| A parcel containing… | Tariff lines | €3 duty |
|---|---|---|
| 5 identical T-shirts (one HS code, one origin) | 1 | €3 |
| A T-shirt and a watch (two HS codes) | 2 | €6 |
| Apparel, cosmetics, shoes, and jewelry | 4 | €12 |
| 8 bike parts: two HS codes, one split by origin | 3 | €9 |
Based on European Commission worked examples and Shopify's own changelog illustration. Each unique tariff classification is one charge; quantity within a line does not add to it. Verified July 2026; re-verified September 2026.
The canonical case to carry through the rest of this guide is the middle one: a €50 order with two tariff lines attracts €6 in new duty — 12% of the order's value. Hold onto that number; the calculator opens on it, and the chart puts it in context.
Your €3 Duty Margin Impact
Key takeaway
Numbers on a page are someone else's store. Use the calculator below to price your order value, your typical number of tariff lines, your current margin, and the share of your orders that ship into the EU. It shows the duty per order, what it does to margin if you absorb it, and what a full pass-through would add to your checkout price. It prices the €3 duty alone: the separate €2 handling fee, once in force, comes on top — see what's still ahead.
2 tariff lines × €3 = €6.00 — that is 12.0% of a €50.00 order.
Blended figure weights the hit by your EU order share, so a store that ships a little into the EU barely feels it.
Your euro profit is unchanged, but the buyer pays 12.0% more — heavier on small, multi-category parcels.
Duty is €3 per tariff line under Regulation (EU) 2026/382, charged per declaration line irrespective of the quantity in it, on consignments up to €150 shipped into the EU from outside the EU (in force 1 July 2026 – 1 July 2028).
Figures exclude VAT, national handling fees, and any carrier brokerage charges, which are separate.
Absorb It or Pass It On?
Key takeaway
Once you know the number, the decision is whether it comes out of your margin or your customer's wallet. The key insight is that a flat fee is regressive: €3 is a painful slice of a €20 order but a rounding error on a €150 one. The chart below shows how the burden falls as order value rises — and how a multi-category parcel, with more tariff lines, multiplies it.
That shape points to a clear strategy. On higher-value orders, absorbing the €3 barely moves your margin — the calculator will show a fraction of a point. On small or multi-category parcels, it is worth passing through or nudging your average order value up (free shipping thresholds, bundles) so the flat fee is a smaller share. What you cannot do is engineer the fee away, and it is honest to say so.
There will definitely be an impact. The real question is how large that impact will be.
The anti-grouping trap
Key takeaway
Combining goods that belong to different tariff lines into a single line to reduce €3 charges is not allowed under the amended customs rules. You can only reduce lines legitimately — a parcel of genuinely identical goods is one line — never by mislabeling distinct products under one code. Accurate classification is the lever; misclassification is a compliance risk, not a saving.
DDP or DDU: Who Gets the Customs Surprise
Key takeaway
The €3 has to be paid by someone, somewhere — and the incoterm you choose decides where the customer meets it. There are two routes: Delivered Duty Paid (DDP), where you collect duties and taxes at checkout, and Delivered Duty Unpaid (DDU), which Shopify also labels DAP (Delivered at Place), where the customer settles them with the carrier on delivery. Note that you can offer only one incoterm per country — not both.
One scope note before you choose. If your store runs Managed Markets, DDU support there ended on 24 August 2026 in every country and region where Managed Markets supports DDP, and remains available only where DDP isn't supported — markets that used or inherited DDU moved to DDP automatically, so those buyers now pay at checkout instead of at the door.
The changelog's exit before that date was to turn Managed Markets off before 24 August 2026, and after it Shopify still documents one route: to keep buyers in a DDP-supported market paying duties on delivery, deactivate Managed Markets for that market. On standard Markets nothing changes: you stay the merchant of record, and shipping DDU remains a normal option.
Keep this separate from the absorb-versus-pass-through choice above. DDP versus DDU decides where the buyer meets the charges at all; absorb versus pass-through is a display choice inside DDP — showing duties as a line item passes the €3 to the buyer at checkout, while including duties in your price absorbs it (that is step 5 of the setup checklist later on).
DDP vs DDU at a glance
Key takeaway
DDP vs DDU Under the €3 Duty
| DDP (Delivered Duty Paid) | DDU / DAP (Delivered at Place) | |
|---|---|---|
| Who pays the €3 + VAT | You collect it at checkout | The customer pays the carrier on delivery |
| When they pay | Upfront, at purchase | On delivery — often as a surprise |
| Buyer experience | One guaranteed total, no surprises | Possible surprise fees and delivery delays |
| Setup effort | DDP carrier + HS codes + duties turned on | Minimal — you just ship |
| Best for | Higher EU volume, brand-led stores | Very low EU volume or market testing |
The hidden cost of DDU: refused parcels
Key takeaway
DDU looks cheaper because it costs you nothing upfront — but the new duty sharpens its hidden risk. When a DDU parcel reaches the border, the carrier asks your customer to pay the €3, any VAT not prepaid, and often a brokerage or disbursement fee before release. Shopify's own tariff guidance warns that this route “could lead to surprise fees for customers and potential delivery delays.”
The real sting is a refused parcel. If the buyer declines the surprise charge at the door — a very real risk when they never agreed to it — the shipment is returned or abandoned. You then typically absorb the return leg plus any duty the carrier already advanced, on top of losing the sale. That is why DDP, which shows the total at checkout, often works out cheaper than the “free” DDU route looks.
So which fits your store? The routes are genuinely different, not right and wrong — a tiny test-the-waters seller can reasonably ship DDU, while a brand shipping serious EU volume should almost certainly collect at checkout. Answer five quick questions and the quiz below routes you to yours.
DDP or DDU for your store?5 questions → the route that fits your EU shipping
HS Codes: Your €3-Per-Line Lever
Key takeaway
Because the fee is counted per tariff line, your Harmonized System (HS) codes are not a compliance afterthought — they decide how many €3 charges each parcel attracts. Sloppy or missing classifications can inflate your line count or misjudge duties entirely, and accurate ones keep the count honest and low.
How Shopify assigns HS codes
Key takeaway
In Shopify, you add an HS code on the product page, or type a description of the product to search for the right one. If a product has no code, Shopify falls back to its description and category to estimate duties — less precise, and more likely to misjudge your line count.
If a product has no code, description or category, Shopify's charging-duties page says duties are still calculated but are likely to be inaccurate — so give the product a code.
Custom items are a separate case. A hand-typed line isn't part of your product catalog, and Shopify documents duties on custom items in one narrow place — worth reading before you put one on an EU order.
If you use Managed Markets, HS codes are automatically assigned to your products. Any codes you entered are taken into account, but Shopify notes it isn't guaranteed that the exact code you set is the one Managed Markets ultimately uses. Review the assignments for your highest-volume products so the line count — and the duty — matches what you expect.
Setting It Up in Shopify
Key takeaway
The good news: Shopify has already done the heavy lifting. Its changelog confirms that both Managed Markets and the built-in import tax and duty calculation now support the flat €3 per tariff line on qualifying EU orders — the fee is calculated, displayed, and collected at checkout, with no settings changes required. That holds once duties at checkout are on. On standard Markets, if they aren't, your EU buyers still meet the €3 as an import charge on delivery — the checklist below is how you move it to checkout.
What Shopify handles automatically
There is one important eligibility split here. Managed Markets — where Global-e becomes the merchant of record and remits the duty for you — is available to merchants based in the continental United States, plus certain stores in Canada and the United Kingdom. (It is the tool formerly called Markets Pro.) If your store doesn't qualify for Managed Markets, you use Shopify's self-serve duty calculation instead, which also includes the €3 in the duty shown at checkout.
Setting up the wider Shopify Markets foundation — currencies, domains, translations — is a separate job covered in our Shopify Markets guide; here we focus only on the duties piece.
The duties-at-checkout setup
Key takeaway
To collect duties in your checkout, you need a DDP-capable carrier, a store not using Shopify Fulfillment Network, and HS codes on your products. From there it lives under Settings > Taxes and duties. Work through the checklist below — your progress saves on this device. Steps 1–5 set up DDP collection; if the quiz above pointed you to DDU, you can skip the carrier and checkout-duty steps, but step 6 matters even more for you — your buyers meet the fee at the door, so tell them.
One cost to price in before you flip the switch. Collecting duties at checkout carries a transaction fee on every order that has duties calculated — even when the calculated amount is zero. Shopify temporarily lowered that fee to 0.5% on 2 February 2025; otherwise it is 0.85% for stores using Shopify Payments as their gateway and 1.5% for stores on other payment providers. It belongs to the self-serve duties-at-checkout route and is a separate cost from the €3 duty itself — worth putting into the margin math above before you decide to absorb rather than pass on.
EU Duties-at-Checkout SetupTurn on and configure duties at checkout for the €3 EU duty. Tick each step as you complete it.
EU Duties-at-Checkout Setup
Turn on and configure duties at checkout for the €3 EU duty. Tick each step as you complete it.
To collect duties at checkout, your shipping labels must run through a carrier that supports delivered-duty-paid (DDP). If you buy labels through Shopify's carrier accounts, Shopify lists DHL Express, DHL Express Canada and DHL eCommerce as the DDP-label carriers for these destinations — though the carrier table on the same page marks DHL eCommerce as DAP-only, so confirm DDP with DHL eCommerce first — and with any other carrier you can't buy a label for an order where duties were collected, and you must buy it externally or refund the order.
Before you tick this off
- Checked that your carrier or third-party integration supports DDP labels
- Confirmed the destination EU countries are covered
- Noted which incoterm each market will use
Duties at checkout require a store that does not use Shopify Fulfillment Network.
Before you tick this off
- Confirmed your fulfillment setup is compatible
- Identified any products fulfilled a different way
Each product needs a Harmonized System code so duties calculate correctly; without one, Shopify falls back to description and category.
Before you tick this off
- Entered an HS code, or typed a product description to find one
- Reviewed products missing a code or category
- Noted that Managed Markets may auto-assign or override your codes
In Shopify admin, go to Settings > Taxes and duties, and under Duties and import taxes, click Set up.
Before you tick this off
- Confirmed carriers and integrations support DDP
- Selected the EU countries where you'll collect duties
Decide whether duties show as a line item the customer pays, or are included in your price so you absorb them.
Before you tick this off
- Picked 'Show as line item' to pass the €3 through, or 'Duties included in price' to absorb it
- Matched the choice to your calculator decision above
Tell buyers what to expect — duties shown at checkout for DDP, or import charges on delivery for DDU.
Before you tick this off
- Added a short note to your shipping policy about EU import charges
- Made sure the checkout and policy language match your incoterm
- Settings
- Taxes and duties
- Duties and import taxes
Also selling to the US?
The same duties panel in your Shopify admin carries US-specific controls too — postal duty rates and a Section 232 steel-and-aluminum setting — because the United States runs its own, entirely separate tariff regime. If your store also imports or sells into the US, that side has its own moving parts; our guide to sourcing and the US tariff picture covers the inbound cost math and the de minimis changes there, which are a different story from this EU rule.
DIY or Bring in a Developer
Key takeaway
For a small catalog on Managed Markets or the built-in calculator, this is genuinely a do-it-yourself job — an afternoon in the admin. The moment it stops being simple is when scale or custom logic enters: hundreds of SKUs that each need an accurate HS code, a bespoke duties display, or several markets running different incoterms and edge cases. Find your side of the line.
When to DIY and When to Get Help
| Do it yourself if… | Bring in a developer if… |
|---|---|
| You sell a small catalog with a few product categories | You have hundreds of SKUs needing accurate HS classification at scale |
| You use Managed Markets or the built-in duty calculator | You need custom checkout logic or a bespoke duties display |
| You ship into just a few EU countries | You run several markets with different incoterms and edge cases |
| You're comfortable in Settings > Taxes and duties | Your fulfillment or carrier setup fights the DDP requirements |
If you land on the right-hand column, the work is real but bounded — the kind of scoped project where hiring a Shopify developer pays for itself by getting HS codes, carriers, and checkout logic right the first time, instead of leaking €3s (or refused parcels) for months.
The Bottom Line
Key takeaway
Strip away the headlines and this is a small, predictable cost you can plan around. The stores that handle it well do three unglamorous things: they price the €3 into their EU pricing, they keep their HS codes accurate so the line count stays honest, and they collect duties at checkout so a buyer never faces a doorstep surprise that turns into a refused parcel.
Frequently Asked Questions
Front-end developer specializing in Shopify since 2017. Experienced in building custom Liquid themes, optimizing storefront performance, and integrating third-party apps. Directs the editorial process behind Ecom Store Pro: sets its topics and the rules every AI-written page must pass before publication.
This page was written by AI. Separate AI agents that did not write it check its figures and claims against official sources and test its links and interactive tools. A human editor sets the site's editorial direction, topics and rules and checks that pages are complete and display correctly, but does not check their facts or edit their text. Details may change — always confirm critical data at shopify.com.
Editorial PolicySome links in this article are affiliate links. If you sign up for a Shopify store through these links, we may earn a commission at no extra cost to you. Read our full advertising policy.
