PrestaShop Documentation, PrestaShop Tutorials

PrestaShop How to add SKU MPN GTIN Products information

Got it 👍 This is a very common (and important) requirement for PrestaShop—especially for Google Merchant / SEO / structured data.

I’ll break it down cleanly 👇


1️⃣ What are SKU, MPN, GTIN in PrestaShop?

FieldMeaningUsed for
SKUStock Keeping UnitInternal product tracking
MPNManufacturer Part NumberGoogle Shopping, Schema
GTINGlobal Trade Item Number (EAN / UPC / ISBN)Google, Rich snippets

👉 In PrestaShop:

  • SKU = Reference
  • GTIN = EAN-13 / UPC / ISBN
  • MPN = NOT available by default (needs customization)

2️⃣ How to Add SKU (Reference)

Admin path:

Back Office → Catalog → Products → Edit product

➡️ Go to Options / Stock / Details tab (varies by version)

  • Reference → This is your SKU
  • Can be set per combination also

✅ Already built-in – no extra module needed.


3️⃣ How to Add GTIN (EAN / UPC / ISBN)

PrestaShop already supports GTIN fields 👇

Admin path:

Catalog → Products → Edit → Options

Available fields:

  • EAN-13 → GTIN-13
  • UPC → GTIN-12
  • ISBN → Books only

💡 Google accepts any ONE GTIN.


4️⃣ How to Add MPN (Manufacturer Part Number)

❌ PrestaShop does NOT have MPN by default
✅ You must add it manually (3 ways)


🔹 Option A: Use a Module (Easiest)

Search in Addons marketplace:

  • MPN Product Field
  • Extra Product Fields
  • Google Merchant Center modules”

These modules:

  • Add MPN field in product page
  • Support combinations
  • Automatically inject into schema

✔ Best if you don’t want coding


🔹 Option B: Add MPN as a Product Feature (No Code)

Back Office → Catalog → Attributes & Features → Features

  1. Add new feature:
    • Name: MPN
  2. Assign value per product

❗ Downside:

  • Not ideal for Google schema unless you customize theme
  • Treated as descriptive data, not technical

🔹 Option C: Add Custom Database Field (Best / Advanced)

Add MPN as a real product field.

1️⃣ Database

ALTER TABLE ps_product ADD mpn VARCHAR(64);

2️⃣ Override Product class

/override/classes/Product.php

public $mpn;

public static $definition = array(
    'table' => 'product',
    'primary' => 'id_product',
    'fields' => array(
        'mpn' => array('type' => self::TYPE_STRING, 'size' => 64),
    ),
);

3️⃣ Add input field in admin product form

(override AdminProductsController)

⚠️ Needs override index rebuild:

Advanced Parameters → Performance → Clear cache

✔ Best for:

  • Google Merchant
  • JSON-LD schema
  • Multi-language not required

5️⃣ Showing SKU / MPN / GTIN on Product Page

Edit your theme file:

📄 themes/your-theme/templates/catalog/product.tpl

Example:

{if $product.reference}
<p><strong>SKU:</strong> {$product.reference}</p>
{/if}

{if $product.ean13}
<p><strong>GTIN:</strong> {$product.ean13}</p>
{/if}

{if $product.mpn}
<p><strong>MPN:</strong> {$product.mpn}</p>
{/if}

6️⃣ Adding SKU, MPN, GTIN in JSON-LD (Very Important)

Since you care about schemas (I remember 😉), this is crucial.

Example Product Schema:

"sku": "SKU123",
"mpn": "MPN-456",
"gtin13": "8901234567890"

In PrestaShop theme:
📄 templates/_partials/microdata-jsonld.tpl

Make sure:

  • sku → reference
  • mpn → custom field
  • gtin13 / gtin12 → ean13 / upc

7️⃣ Google Merchant Rules (Important)

ConditionWhat to send
GTIN existsSend gtin only
No GTINSend mpn + brand
Custom productUse identifier_exists = no

8️⃣ Best Practice (Recommended Setup)

SKU → Reference
GTIN → EAN-13 / UPC
MPN → Custom field (Option C)
Brand → Manufacturer
Schema JSON-LD → Enabled


 

About zohaibk

We develop useful addons for #E-Commerce and #CRM software to provide extra features.#PrestaShop,#Magento,#SugarCRM,#Vtiger & #Android #apps
View all posts by zohaibk →