EU product identifiers from November 1: does it apply to your Shopify store?
From November 1, 2026, EU customs requires three product identifiers for every item in a parcel worth up to EUR 150 that enters the EU from a non-EU country. The rule is now in force, and Shopify has implemented it on its side: if an item has no standardized barcode and no declaration in its place, the shipping label simply cannot be purchased.
The part most English-language coverage leaves out: for a large share of EU-based stores this requirement does not apply at all. The first step is not fixing barcodes - it is deciding whether you are in the group that needs them. If you are, and you have not fixed them, it already shows in practice: labels fail to buy, or parcels stall at customs.
What are EU product identifiers?
EU product identifiers are a customs requirement that took effect on November 1, 2026, under which every item in a parcel must carry three identifiers. The requirement applies to parcels worth up to EUR 150 sent to EU customers from a non-EU country.
The Shopify changelog states it in one line:
"From Nov 1, the EU requires three product identifiers per item." - Shopify changelog, 2026-10-24
The requirement applies to every item in a parcel, not to the parcel. One item without an identifier is enough to stop the whole shipment.
Does the requirement apply to an EU-based store?
The EU product identifier requirement applies only if a parcel enters the EU from a non-EU country. A store that packs and ships from a warehouse inside the EU to customers in the EU has nothing to change on November 1, 2026.
In practice the requirement affects these cases:
- Dropshipping from China - the supplier ships directly to the customer and the parcel crosses EU customs
- Fulfilment from the UK - after Brexit, the United Kingdom is a third country for customs purposes
- A 3PL or warehouse in Turkey, Switzerland, Serbia, the US or China
- Print-on-demand partners producing and shipping from outside the EU
- Items you order from a non-EU supplier only after the customer orders, when they travel to the customer without being repacked inside the EU
If your model is mixed - some items from your own warehouse, some from a supplier in China - the requirement applies only to the second part. But because identifiers live at product level rather than order level, you still need to fix exactly those products that might ship from outside the EU.
A separate note for anyone expanding: if you are planning a warehouse or fulfilment partner outside the EU, this requirement is now part of the cost of that decision.
Which three identifiers are required?
The three identifiers are M-PID, S-PID and NS-PID, and only one of them requires work from you. Shopify fills the first automatically, the third has fallbacks, and the second is the one that can block a label.
- M-PID (merchant product identifier) - your own identifier for the item. Shopify uses the product variant ID, so there is nothing to enter.
- S-PID (standardized product identifier) - a standardized barcode: GTIN, EAN, UPC or ISBN, entered with the matching type. This is the only field that genuinely needs attention.
- NS-PID (non-standardized manufacturer product identifier) - the manufacturer's model, part or style code. If it is missing, customs uses other data in this order: standardized barcode, other barcode, SKU, variant ID.
If you already use several barcodes on one variant, the structure will be familiar - we covered it when Shopify allowed up to 20 barcodes per variant. That is exactly what is used here: the GTIN and the NS-PID live on the same variant under different types.
How do you enter the identifiers in Shopify?
Identifiers are entered in the variant's Barcodes section, and in bulk through the bulk editor or a CSV import. One product takes about a minute; a full catalog takes one evening.
- Open Products and select the product or variant.
- In the Barcodes section, enter the GTIN, EAN, UPC or ISBN and select the matching barcode type. The type matters: a code without a type tells customs nothing.
- If you know the manufacturer's model or part number, add it as a second barcode with the NS-PID type.
- Save.
For a large catalog, a CSV import or the bulk editor makes more sense. Since October 29, 2026 this has become easier: Shopify checks your barcodes against the GS1 registry and suggests which one is a GTIN - in one click, both on the product page and in the bulk editor.
What if a product has no barcode?
In that case you turn on a separate declaration, which customs calls Y081. In Shopify it lives in the product's Shipping section: More details > EU customs declaration > Has no standardized identifier.
Shopify documentation warns that the declaration should be used only when the product truly has no GTIN, EAN, UPC or ISBN. For handmade goods that is normal; for a product whose barcode nobody felt like looking up, it is not.
What happens if the identifiers are missing?
Without identifiers a parcel can be stopped or sent back. The Shopify Help Center is specific: a parcel "can be held or rejected at customs, and you might be charged return-to-origin fees" - meaning you pay for the return.
Inside Shopify the guardrail is stricter and, honestly, more useful: if an item has no S-PID and no declaration, you cannot buy the label until the product is updated. Missing data can also be entered on the label page through Edit customs declaration, but nobody wants to do that per order during peak season.
If a label is already failing to buy, the fastest route is this: fix that one product's barcode so the order ships today, and only then sit down with the whole catalog in the bulk editor. The reverse order costs you orders during peak season.
Some goods are exempt: unprocessed agricultural and perishable products (HS chapters 01-15), certain handmade and artisanal goods, antiques, collectibles, works of art, stamps and coins. Exemption is determined by the variant's HS code, and a merchant cannot mark a product as exempt themselves.
Barcodes were long a low-priority field in Shopify - something you filled in if you had time. From November 1 they are the first field that can stop a shipment.
Frequently asked questions
Does the requirement apply to parcels worth more than EUR 150?
The requirement as described by Shopify applies to parcels up to EUR 150. Higher-value parcels go through full customs declaration, which demands this data anyway - so barcodes are worth having either way.
Are HS codes required, or are barcodes enough?
HS codes are a separate requirement and do not depend on barcodes. They also determine whether a product is exempt, which makes HS codes the logical second step after identifiers.
Is this related to the EU de minimis changes?
They share a context but not a mechanism. The identifier requirement is about data in the customs declaration and took effect on November 1, 2026, regardless of how duties on low-value parcels change.
Is there anything to do if I only ship domestically?
Not for this requirement. But GTIN data is used elsewhere - Shopify Catalog, Google Shopping, Shop Promise and POS scanning - so an empty barcode field costs you visibility in other places.
If you are not sure which of your products might ship from outside the EU, or how many of them have no barcode, get in touch and we will review the catalog together. BBOLD contacts.