Această documentație descrie procesul de validare a codurilor de bare (EAN/GTIN) utilizate în marketplace.
Obiectivul este ca fiecare produs listat să aibă un identificator global unic și valid, conform standardelor GS1.

Tipuri acceptate

  • GTIN-8 (EAN-8) – 8 cifre. Pentru produse foarte mici.

  • GTIN-12 (UPC-A) – 12 cifre. Standard SUA/Canada; compatibil cu EAN-13 prin prefix 0.

  • GTIN-13 (EAN-13) – 13 cifre. Standardul predominant în retail.

  • GTIN-14 – 14 cifre. Pentru multipack/ambalaje logistice (ITF-14).

  • ISBN – EAN-13 dedicat cărților (prefix 978/979).

Reguli de validare

  • Lungimea trebuie să fie 8 / 12 / 13 / 14 conform tipului.

  • Toate caracterele trebuie să fie numerice.

  • Ultima cifră trebuie să fie validă conform algoritmului Modulo 10 (Luhn).

  • Nu se acceptă produse diferite cu același GTIN!

    • Variațiile (mărime, culoare etc.) trebuie să aibă GTIN-uri distincte.

  • Nu se acceptă coduri generice (ex.: 0000000000000, 1234567890123).

  • Dacă lipsește un cod valid, produsul este respins (cu excepția produselor din categoria Autentic).

Exemple rapide

Valide:

  • 4006381333931 (EAN-13)

  • 036000291452 (UPC-A)

  • 96385074 (EAN-8)

  • 14006381333931 (GTIN-14)

Invalide:

  • 594123456789 (12 cifre, incomplet pentru EAN-13)

  • 594123456789X (caracter ne-numeric)

  • 0000000000000 (cod generic)

Conversii între tipuri de coduri

  • UPC-A (12 cifre) → EAN-13: se adaugă un 0 la început.

    • Ex.: 036000291452 → 0036000291452

  • EAN-13 → UPC-A: posibil doar dacă începe cu 0; se elimină 0-ul.

    • Ex.: 0036000291452 → 036000291452

  • EAN-13 → GTIN-14: se adaugă un indicator (1–8) în față și se recalculează cifra de control.

    • Ex.: 4006381333931 → 14006381333931

  • UPC-A → GTIN-14: se convertește mai întâi la EAN-13 (prefix 0), apoi se adaugă indicatorul.

  • GTIN-14 → bază: eliminarea indicatorului și recalcularea cifrei de control pot oferi un GTIN-13 echivalent.

  • EAN-8 ↔ alte tipuri: nu există conversie directă; este necesar un GTIN nou.