Future-Proofing Your Shopify Store: Navigating EU Customs' New Product ID Rules for 2026

Alright, folks, let's talk about something that might seem a little far off, but trust me, you'll want to get ahead of this: the new EU customs requirements for product identifiers coming into full effect on November 1, 2026. If you ship physical goods from outside the EU to consumers within it, this is for you. The good news? Our Shopify community has been digging into it, and we've got some solid insights to share.

I recently followed a really insightful discussion started by @Jamelight in the Shopify forums, where they broke down what's needed and what Shopify's current export capabilities offer. It’s a vital topic because getting this wrong could mean delays or issues at the border.

The "Big Three" Product Identifiers You'll Need

From November 2026 (though voluntary compliance started July 2023, with no penalties during the voluntary period), EU customs declarations will require three specific product identifiers for each item. Jamelight laid these out clearly, using the names from the Commission's customs guidance:

  • M-PID (Merchant Product Identifier): This is your own internal product code. For most Shopify stores, your SKU (Stock Keeping Unit) will serve this purpose.
  • NS-PID (Manufacturer/Supplier Product Identifier): This is the manufacturer's or supplier's own model or part number for the item. This is where things get a bit tricky with Shopify's default setup.
  • S-PID (Standardized Identifier): This refers to a globally recognized identifier like a GTIN, EAN, UPC, or ISBN. If an item truly has no such identifier, an exception code (Y081) is used.

Shopify's CSV Export: What It Has and What It Doesn't

When Jamelight dove into Shopify's product CSV export, they highlighted a few key points:

  1. M-PID (SKU): Your SKU works great as an M-PID, but only if every single variant has its own unique SKU. If you have repeated or blank SKUs, that's your first cleanup task.
  2. S-PID (Barcodes): Shopify's "Barcodes" column is designed for this. It can actually hold up to 20 typed values per variant (e.g., gtin:00012345678905; upc:012345678905). Remember, customs will take one standardized value, so make sure it's valid. Internal or ASIN codes don't count here. Also, avoid placeholder values like "N/A," "0," or a repeated SKU; these can cause issues down the line.
  3. NS-PID (Manufacturer Code): This is the big one. Shopify's standard product CSV export simply doesn't have a dedicated column for the manufacturer's or supplier's code. This means you'll need to collect this data from your suppliers and integrate it into your Shopify store.

Tackling the NS-PID Challenge: Metafields to the Rescue (Mostly!)

The lack of a native manufacturer code column is the main hurdle, but the community discussion offered a clever workaround. @One-Sun1995 pointed out a great solution for product-level manufacturer codes:

Step-by-Step: Adding a Product-Level NS-PID with Metafields

If your manufacturer code is consistent across all variants of a single product (e.g., a specific model number that doesn't change for different sizes or colors), you can use a product metafield:

  1. Define a Product Metafield: Go to your Shopify admin, navigate to Settings > Custom data > Products. Here, you can define a new product metafield. Give it a clear name like "Manufacturer code" and a namespace key (e.g., custom.mfr_code).
  2. Export Your Products: Once defined, perform a standard product CSV export from your Shopify admin. You'll magically find a new header in your CSV like "Manufacturer code (product.metafields.custom.mfr_code)".
  3. Fill in the Data: You can now fill in the manufacturer codes for your products directly in this new column in your CSV.
  4. Import Back: After populating the data, you can import the CSV back into Shopify. This will update your product metafields in bulk.

The Variant Metafield Caveat: A Crucial Distinction

Now, here's where Jamelight added a critical clarification that saves a lot of headaches later: the EU Commission guidance says each PID should identify exactly one product variant. If your manufacturer's code actually changes for different sizes, colors, or other variants of the same product, a product-level metafield won't cut it. That's because a product metafield applies to the entire product, not individual variants.

As Jamelight noted, Shopify's CSV import/export currently excludes variant metafields entirely. So, if your NS-PIDs differ per variant, you're looking at a more manual process:

  • Use the Variant Bulk Editor: You'll have to go into the product editor in your Shopify admin and use the variant bulk editor to update each variant's specific manufacturer code. This isn't ideal for large catalogs but is the built-in option.
  • API or Apps: For larger stores with variant-specific NS-PIDs, you might need to explore using Shopify's API or third-party apps that can manage and import variant metafields in bulk.

Your Action Plan: Get Ahead of the Deadline!

Don't wait until 2026 to sort this out. Here's a practical checklist based on the community's insights:

  1. Audit Your Current Data: Export your products to a CSV. Go row by row and check:
    • Is the "SKU" present and unique for every variant (M-PID)? Fix any blanks or duplicates.
    • Is the "Barcodes" field present and valid (S-PID)? Ensure it's a true GTIN/EAN/UPC, not a placeholder.
    • Are you missing manufacturer codes (NS-PID)? This is your biggest gap to fill.
  2. Collect NS-PIDs from Suppliers: This is likely the most time-consuming step. Prepare a list of items where the maker's code is missing and send it to your suppliers. The earlier, the better!
  3. Implement NS-PIDs in Shopify:
    • If NS-PIDs are product-level: Create a product metafield as described above, export, fill, and re-import.
    • If NS-PIDs are variant-level: Prepare for manual entry via the variant bulk editor or explore API/app solutions for bulk updates.
  4. Consider Third-Party Providers: Services like Managed Markets/Global-e, Zonos, Passport, FlavorCloud, or Shipmate can handle the customs declarations for you. However, as Jamelight pointed out, their own documentation stresses that you, the merchant, are responsible for finding and fixing the gaps in your product catalog first. They can't declare what they don't know!
  5. Utilize Tools: Jamelight also mentioned their own tool, TITANTH Catalog Check, which is a small browser-based checker for Shopify CSVs to identify these gaps. The free version checks 25 rows, and their site offers free guides and supplier request templates.

This isn't just about compliance; it's about ensuring smooth international shipping for your customers and avoiding unnecessary headaches. By understanding these requirements and leveraging Shopify's capabilities (even with the metafield nuances), you can future-proof your store. A proactive approach now will save you a lot of scrambling closer to the deadline. It's a testament to the flexibility of platforms like Shopify that we have these tools to adapt to evolving regulations, even if it takes a little creative problem-solving from our end!

Share:

Use cases

Explore use cases

Agencies, store owners, enterprise — find the migration path that fits.

Explore use cases