Knowledge Base

Adding product identifiers for the EU

Written by Admin | Sep 11, 2026, 4:54:30 PM

From November 1st, every item you ship into the EU must carry three additional product identifiers on its customs declaration. You most likely already have two of them. Here is how to add the one you probably don't.

What’s changing?

The European Union is introducing a new customs requirement under Commission Delegated Regulation (EU) 2026/1022. Every item sold into the EU must be declared with three separate product identifiers that enable EU customs authorities to trace an item back to both the seller and the manufacturer.

  • This new requirement applies to all 27 EU countries, and to every shipment regardless of value. There is no low-value exemption.
  • It applies per product, not per order. A five-item order will require five sets of identifiers.
  • You provide the product identifiers in Shopify. FlavorCloud sends them to the carrier and puts them on the customs paperwork.

What we need from you

Your product SKU: Already done

Merchant Product Identifier (M‑PID)

We use the SKU already associated with each variant. No action on your part is needed.

Manufacturer product reference: Needs to be done

Non-Standardised Manufacturer Product Identifier (NS‑PID)

This is a code defined by the product manufacturer, not the merchant. This is the key field that needs new data, and it’s required for every product variant with no exceptions.

Standardised product code: Confirm either way

Standardised Manufacturer Product Identifier (S‑PID)

An EAN, UPC, GTIN or ISBN, where the product has one. If it doesn't have one, choose None as the code type. You cannot leave this field blank.

How to get started

1. Create the fields in your Shopify store

These fields don't exist by default. You create them in Settings › Custom data. Create four metafield definitions, three on Variants and one on Products:

Create it on

Namespace and key

Name it

Type

Variants
and Products

flavorcloud.ns_manufacturer_pid

Manufacturer product reference

Single line text

Variants

flavorcloud.std_manufacturer_pid

Standardised product code

Single line text

Variants

flavorcloud.std_manufacturer_pid_type

Type of standardised code

Single line text, list of choices:
GTIN, EAN13, EAN8, UPC, ISBN, OTHER, NONE

Variants

flavorcloud.merchant_pid

Merchant PID override

Single line text

The namespace and key must match exactly. Shopify generates a key from the name you type, so open Advanced options when you create each definition and set the namespace to flavorcloud and the key to the value in the table. If the entries are not identical, we will not be able to find your data and your products will report as not ready.


Additionally, choose Single line text, never a number type, because a number type will drop leading zeros. Create the manufacturer product reference on both Variants and Products, so you get the bulk-fill shortcut in step 3.


Creating them as definitions rather than ad-hoc metafields will make the fields appear in the variant editor, in Shopify's bulk editor, and in your CSV exports, which is how you will actually fill them.

2. Find your manufacturer references
This value comes from your supplier rather than from your own systems. It is usually on:
  • The purchase order or commercial invoice from your supplier
  • The product spec sheet or tech pack
  • The carton or case label on inbound stock

If you manufacture your own products, your own internal product code will suffice. It's fine for it to be the same as your SKU in that case, as long as you're confirming that deliberately rather than copying it in to fill the box.

3. Add them in bulk, not one at a time

Manufacturer references are usually shared across sizes and colours of the same style. Set the reference on the product and every variant of it inherits the value e.g. 200 styles in 8 sizes means 200 entries, not 1,600. Only set it on an individual variant where the manufacturer explicitly references each size separately.


For large catalogues, use Shopify's bulk editor, or export your products to CSV, fill the column in a spreadsheet, and re-import it.

4. Add standardised codes, or confirm there aren't any

If a product carries an EAN, UPC, GTIN or ISBN, enter it and pick the matching type from the dropdown. Enter the code exactly as printed, including any leading zeros.


If a product has no such code, leave the code field empty and set the type to None. EU rules require the absence of a code to be explicitly declared, so we need you to confirm it rather than infer it from a blank field. Once you have, we’ll make that declaration for you.


Do not invent a code and do not copy in the SKU. A wrong code is a false customs declaration, and a confirmed "no code" is entirely lawful.

What happens if you leave a field blank

If this field is empty

What happens from 1 November

Manufacturer product reference

Your EU shipments for that product will be stopped. There is no exception for this field.

Standardised product code
confirmed as None

Nothing. We declare that the product has no standardised code, which is permitted and normal.

Standardised product code
left blank, not confirmed

Not a valid declaration. We cannot state that a code is absent unless you have told us it is, so the product reports as not ready.

Never type "N/A", "none" or "TBC" into the manufacturer product reference. A placeholder passes our checks and then travels onto a customs declaration as though it were real.

Quick rules

  • One value per field. No lists, no separators, no notes like "see supplier sheet". Each field must contain exactly one identifier.
  • Ensure the Product ID lengths fit within the max character limits in the table below. We’ve shared the character limits by carrier in the table below. Values that exceed these limits can be rejected so ensure none of your IDs exceed them.
  • Type it exactly. Capitals, hyphens and leading zeros all matter. We pass the value through unchanged apart from trimming spaces at the ends. Copy and paste directly wherever possible to avoid typos.
  • Plain characters only. Letters, digits, hyphens, full stops, slashes and underscores. Avoid pasting from formatted documents, which can bring invisible characters with it.

Field reference

For anyone setting these up through the API or a CSV import, here are the exact field names and accepted formats. All keys are from the flavorcloud namespace.

Field

Key

Required?

Max

Allowed

Example

Never enter

Merchant PID override

merchant_pid

Almost never; only if your listing ID differs from the SKU

70

As below

44821567

A copy of the SKU

Manufacturer product reference

ns_manufacturer_pid

Yes, on every EU-bound variant

70

Letters, digits, and - . / _ plus interior spaces

MX-2024-BLK-L

N/A, TBC, a list, prose

Standardised product code
Type of standardised code

std_manufacturer_pid
std_manufacturer_pid_type

Always. Either the code with its type, or type NONE to confirm there is no code

14

Code: 8, 12, 13 or 14 digits, or 10 characters ending X.
Type: GTIN, EAN13, EAN8, UPC, ISBN, OTHER, NONE

EAN13
0012345678905

The SKU; an invented code; a stripped leading zero

Use a text type on every one of these definitions, never a number type since a number type will drop leading zeros, turning a valid code into an invalid one.

Before 15th October

We’re working with every FlavorCloud merchant to prepare them for compliance by the November 1st deadline. Therefore, we’re targeting October 15th to have all of these steps complete:

  • The four fields are created in Shopify, with the exact namespace and keys
  • Every variant you ship to the EU has a SKU
  • Every one of those has a manufacturer product reference
  • Standardised codes added where the product has one, and the type set to None where it doesn't
  • No placeholders like "N/A" anywhere in the manufacturer reference field
  • Readiness report in the FlavorCloud app shows no remaining gaps

Questions about a specific product or a bulk upload? Contact your FlavorCloud account manager.