> ## Documentation Index
> Fetch the complete documentation index at: https://docs-nce.global-e.com/llms.txt
> Use this file to discover all available pages before exploring further.

# EU Product Identifiers

Part of the [EU Customs Reform - Product Identifiers (PID)](/eu-product-identifiers-pid).

On Shopware, the two identifiers are read from your catalog at checkout and sent to Global-e by the Global-e plugin. This is a configuration task, not a code change: you store the values in your catalog, then point the plugin at the fields that hold them. Your SKU is already sent separately, so there is no new SKU field to add.

For what each identifier is, see [The three identifiers](/eu-product-identifiers-pid#the-three-identifiers) on the overview page.

## Prerequisites

| Requirement | Value |
| - | - |
| Minimum plugin version | Global-e Shopware 6 plugin 1.6.7 |

You can check your plugin version by going to **Extensions** → **My** **Extensions**

<Frame>
  <img src="https://mintcdn.com/globale-nce/g1ILx5tM6kS4SEBU/images/eu-product-identifiers/shopware-plugin-version.png?fit=max&auto=format&n=g1ILx5tM6kS4SEBU&q=85&s=25b87af466e9100545122a9ae5abcc2f" width="2498" height="304" data-path="images/eu-product-identifiers/shopware-plugin-version.png" />
</Frame>

## What you need to do

1. **Store the values on your products.** Make sure each variant that can appear in the cart holds the values you want to send: the barcode (GTIN, EAN or UPC) and the manufacturer code. Use whichever catalog fields you already keep them in.

2. **Point the plugin at those fields.** Go to **Extensions**, then **My Extensions** and click on **Configure** next to the **Global-e Cross-Border extension**

   <Frame>
     <img src="https://mintcdn.com/globale-nce/g1ILx5tM6kS4SEBU/images/eu-product-identifiers/shopware-configure-extension.png?fit=max&auto=format&n=g1ILx5tM6kS4SEBU&q=85&s=2abecdd1aff355d7421e779d81963ea8" width="2470" height="292" data-path="images/eu-product-identifiers/shopware-configure-extension.png" />
   </Frame>

   Under **Products**, in **Product Extra Attributes**, list the technical field names that hold your barcode and your manufacturer code. The plugin sends them to Global-e as `standardcode` and `mididentifier`.

   <Frame>
     <img src="https://mintcdn.com/globale-nce/g1ILx5tM6kS4SEBU/images/eu-product-identifiers/shopware-product-extra-attributes.png?fit=max&auto=format&n=g1ILx5tM6kS4SEBU&q=85&s=af28d8d55248f486302ee45f1e547510" width="2178" height="1298" data-path="images/eu-product-identifiers/shopware-product-extra-attributes.png" />
   </Frame>

3. **Save**, and clear the Shopware cache if your deployment requires it.

| Sent as | What it holds | When to leave it out |
| - | - | - |
| `standardcode` | The barcode for that variant (GTIN, EAN or UPC) | When the item has no barcode. Global-e declares the “no barcode” code automatically. |
| `mididentifier` | The manufacturer’s product code for that variant | Never. This is required on every line. |

## Key points

**One pair of values per variant.** Populate each variant that can appear in the cart. A value on the parent product alone is not enough when the variant has no value of its own.**Your Shopware field names are your choice.** The plugin maps them to the exact keys `standardcode` and `mididentifier` (lowercase), so your own field names do not need to match.**Omit, don’t fake.** When a variant has no value, leave the key out. Never send an empty string, NA, 0 or -.

**Keep separate from US MID.** Do not use the US MID fields for EU PID.

**When values are read:** at checkout, when the customer proceeds to Global-e. Updated catalog values apply on that variant’s next checkout.

## Quick check before go-live

| Check | Done |
| - | - |
| Each variant that needs identifiers has its values in the catalog | ☐ |
| The plugin’s **Product Extra Attributes** lists those catalog fields | ☐ |
| `standardcode` and `mididentifier` appear when the variant has values | ☐ |
| Keys are omitted (not empty) when a variant has no value | ☐ |
| Each variant in the cart sends its own pair | ☐ |
| Cache cleared after the configuration change | ☐ |
