Meridianmeridian

EAN

identity.commerce.ean

European Article Number (also called Universal Product Code / UPC). Standard versions: EAN-8 (8 digits) and EAN-13 (13 digits). Last digit is check digit.

Domain
identity
Category
commerce
Casts to
VARCHAR
Scope
Universal

Try it

CLI
$ finetype infer -i "5901234123457"
→ identity.commerce.ean

DuckDB

Detect
SELECT finetype('5901234123457');
-- → 'identity.commerce.ean'
Cast expression
CAST({col} AS VARCHAR)
Safe cast pipeline
-- Normalise and cast in one step
SELECT TRY_CAST(finetype_cast(my_column) AS VARCHAR) AS clean_value
FROM my_table
WHERE finetype(my_column) = 'identity.commerce.ean';

Struct Expansion

Expression
ean_version: CASE WHEN LENGTH({col}) = 8 THEN 'EAN-8' WHEN LENGTH({col}) = 13 THEN 'EAN-13' ELSE 'UNKNOWN' END

JSON Schema

finetype schema identity.commerce.ean
{
  "$id": "https://meridian.online/schemas/identity.commerce.ean",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "European Article Number (also called Universal Product Code / UPC). Standard versions: EAN-8 (8 digits) and EAN-13 (13 digits). Last digit is check digit.",
  "examples": [
    "5901234123457",
    "96385074",
    "4006381333931"
  ],
  "pattern": "^[0-9]{8}$|^[0-9]{13}$",
  "title": "EAN",
  "type": "string",
  "x-finetype-broad-type": "VARCHAR",
  "x-finetype-transform": "CAST({col} AS VARCHAR)"
}

Examples

5901234123457963850744006381333931

Aliases

upc