2
Стать партнером
2
{{ formatMonthYear(startMonth) }}
{{ d }}
{{ day.day }}
{{ formatMonthYear(endMonth) }}
{{ d }}
{{ day.day }}
Новость на модерации
Обновлено
18.12.2025
Содержание статьи

DataMatrix (DM) — обязательный код маркировки для товаров, подлежащих прослеживаемости в системе "Честный знак". В API Lamoda используется для FBO-поставок и отслеживания товаров.

Что такое DataMatrix и UIT

Термин Описание Длина
DataMatrix Полный код маркировки с криптохвостом ~150 символов
UIT Уникальный идентификатор товара (без криптохвоста) 31 или 38 символов
Lamoda хранит только UIT

Полный DataMatrix-код не хранится в системах Lamoda. При передаче он автоматически нормализуется до UIT.

Формат DataMatrix

Полный DataMatrix (с ТН ВЭД)

010467003301005321gJk6o54AQBJfX\u001d2406401\u001d91ffd0\u001d92LGYcm3FRQrRdNOO+8t0pz78QTyxxBmYKhLXaAS03jKV7oy+DWGy1SeU+BZ8o7B8+hs9LvPdNA7B6NPGjrCm34A==

UIT (с ТН ВЭД) — 38 символов

010467003301005321gJk6o54AQBJfX2406401

Полный DataMatrix (без ТН ВЭД)

010467003301005321gJk6o54AQBJfX\u001d91ffd0\u001d92LGYcm3FRQrRdNOO+8t0pz78QTyxxBmYKhLXaAS03jKV7oy+DWGy1SeU+BZ8o7B8+hs9LvPdNA7B6NPGjrCm34A==

UIT (без ТН ВЭД) — 31 символ

010467003301005321gJk6o54AQBJfX Скрытые символы

В DataMatrix присутствуют управляющие символы \u001d (GS — Group Separator). При передаче через API они должны быть экранированы.

Когда передавать DataMatrix

FBO: Создание поставки

DataMatrix обязателен для маркируемых товаров при создании поставки:

POST /api/v1/shipments/fulfilment

{
  "id": "SUPPLY-2025-12-001",
  "date": "2025-12-05",
  "warehouse_code": "bykovo",
  "items": [
    {
      "sku": "SELLER-SKU-001",
      "ean": "4607123456789",
      "quantity": 2,
      "datamatrixes": [
        "010467003301005321gJk6o54AQBJfX2406401",
        "010467003301005321aBcD123XYZqwe2406401"
      ]
    }
  ]
}

FBS: Создание отгрузки

DataMatrix передаётся на уровне товара (опционально):

POST /api/v1/shipments/out

{
  "id": "SHIP-001",
  "containers": [
    {
      "barcode": "PAL001",
      "type": "pallet",
      "containers": [
        {
          "barcode": "PACK001",
          "type": "pack",
          "items": [
            {
              "orderNr": "RU251202-123456",
              "sku": "XD001XM0ABCD",
              "unitload": "RU251202-123456-001",
              "datamatrix": "010467003301005321gJk6o54AQBJfX"
            }
          ]
        }
      ]
    }
  ]
}

DataMatrix в нотификациях

UIT возвращается в нотификациях на уровне товара:

{
  "type": "statusChanged",
  "data": {
    "items": [
      {
        "id": 12345,
        "sku": "SELLER-SKU-001",
        "status": "Delivered",
        "datamatrix": "010467003301005321gJk6o54AQBJfX2406401"
      }
    ]
  }
}

Массив UIT также возвращается в нотификациях о поставках (fulfilmentShipmentStatusChanged).

Статусы маркировки

Если товар заблокирован из-за проблем с маркировкой:

Статус В интерфейсе Описание
Need DM Требуется код маркировки Товар заблокирован, ожидает перемаркировки
Waiting DM Ожидает код маркировки Партнёру отправлена нотификация, нужен ответ
Received DM Получен новый код Партнёр предоставил новый код, идёт перемаркировка
Waiting for assignation Ожидает наклейки Выполняется перемаркировка на складе
Lost DM Потерян код Партнёр не может создать новый код
Email-нотификации о блокировке

Lamoda отправляет email-уведомления о товарах без кода маркировки. В письме — ссылка на раздел "Датаматрикс" в ЛК для загрузки отчёта.

Категории с обязательной маркировкой

Маркировка обязательна для следующих категорий:

  • Одежда (верхняя одежда, блузки, пальто, куртки и т.д.)
  • Обувь
  • Товары лёгкой промышленности
  • Парфюмерия
  • Фототехника

Полный перечень — в системе "Честный знак".

Валидация DataMatrix

Проверка Требование
Длина UIT 31 символ (без ТН ВЭД) или 38 символов (с ТН ВЭД)
Уникальность Каждый DataMatrix уникален для единицы товара
Количество Количество DataMatrix = quantity в поставке
Формат Начинается с 01 (идентификатор приложения GTIN)

Частые ошибки

Ошибка Причина Решение
Поставка не подтверждена Отсутствуют DM для маркируемых товаров Добавьте datamatrixes в запрос
Неверная длина UIT Передан полный DM вместо UIT Нормализуйте до 31 или 38 символов
Дубликат DataMatrix Код уже использован Каждый код уникален
Несовпадение количества quantity ≠ length(datamatrixes) Количество кодов = количество товаров

Пример обработки DataMatrix

import re

def normalize_datamatrix(dm: str) -> str:
    """Извлечь UIT из полного DataMatrix."""
    # Убрать управляющие символы
    dm = dm.replace('\x1d', '')
    
    # UIT = первые 31 или 38 символов (до криптохвоста)
    # Формат: 01 + GTIN(14) + 21 + Serial(13 или 20)
    match = re.match(r'^(01\d{14}21.{13,20})(24\d{6})?', dm)
    if match:
        uit = match.group(1)
        tn_ved = match.group(2) or ''
        return uit + tn_ved
    
    return dm[:38] if len(dm) > 38 else dm

# Пример
full_dm = "010467003301005321gJk6o54AQBJfX\x1d2406401\x1d91ffd0\x1d92..."
uit = normalize_datamatrix(full_dm)
print(uit)  # 010467003301005321gJk6o54AQBJfX2406401

См. также

Помогла эта информация?

Да Нет

Спасибо за отзыв

Отправить
Распространенные проблемы с API
Обзор маркировки в API
Спросить у Lamoda Seller Assistant в Telegram