Печатайте этикетки EAN-13 и Code128 для поставок
Генерация информационных этикеток со штрихкодами (EAN-13, Code128) для маркетплейсов. PDF для A4 и термопринтеров (58x40, 58x30).
Как агент работает
У этикетки обязательны только два параметра — название товара и значение штрихкода; формат по умолчанию ean13, доступны также code128 и ean8. Остальное необязательно и печатается, если передано: бренд, артикул, состав, страна производства, размер, цвет, знаки соответствия вроде EAC и РСТ и произвольные дополнительные поля, например телефон.
Размер выбирается под печать. Термоэтикетки: 58x40 мм как стандарт, 58x30 мм как компактный вариант, 40x30 мм как малый и 43x25 мм для ювелирных изделий, а при необходимости задаётся произвольный размер парой значений в миллиметрах. Для листовой печати есть пресеты A4: 70x37 мм сеткой 3x8 и 24 этикетками на лист, 52.5x29.7 мм сеткой 4x10 и 40 штуками, 70x42.3 мм — 21 штука, 105x48 мм — 12 штук.
Товары можно не вбивать руками, а импортировать из маркетплейса. Для Wildberries маппинг идёт с title в название, vendorCode в артикул и баркодом из sizes[].skus[]. Для Ozon в запросе обязателен filter — минимум visibility ALL, иначе ответ 400, — а страницы перебираются по last_id; затем батч-инфо принимает до тысячи идентификаторов за раз массивами product_id, offer_id или sku, откуда берутся name, offer_id и первый баркод.
Для поставок FBO генерируются информационные этикетки с SKU-баркодами самого маркетплейса — у Wildberries это barcode из карточки товара, у Ozon баркод из карточки, — и пакетная генерация делает их разом. Стикеры заказов FBS не рисуются, а забираются готовыми файлами через API маркетплейса и при необходимости объединяются в один PDF.
Есть жёсткие запреты на стороне генерации: невалидный EAN-13 не выпускается, контрольная цифра никогда не хардкодится — передаются двенадцать цифр, тринадцатую считает библиотека python-barcode. Для Code128 допустимы буквы и символы, а не только цифры. Временные файлы живут в /tmp, готовый результат складывается в выходной каталог и отдаётся пользователю только после проверки, что файл сгенерирован без ошибок.
Примеры задач
Этикетки для поставки на Wildberries или Ozon
Агент сгенерирует информационные этикетки со штрихкодом, брендом, артикулом, составом и знаками соответствия — готовый PDF под требования маркетплейса.
Пакетная генерация из Excel
Список товаров в xlsx/csv превращается в PDF с нужным тиражом каждой этикетки — раскладка на А4 или лента для термопринтера.
Этикетки под термопринтер
Форматы 58×40, 58×30 и 40×30 мм печатаются один-в-один без масштабирования — файл сразу отправляется на термопринтер.
Вопросы и ответы
Какие типы штрихкодов поддерживаются?
EAN-13, EAN-8 и Code128 — стандартные для российских маркетплейсов. Код генерируется из вашего значения баркода, контрольная цифра проверяется.
Что нужно подготовить для пакетной генерации?
Таблицу товаров со значениями штрихкодов и полями этикетки: название, бренд, артикул, состав, страна, размер. Колонки могут называться как угодно — агент сопоставит их сам.
В каком виде я получу результат?
PDF-файл: сетка на листе А4 (например, раскладка 70×37) или постраничные термоэтикетки выбранного размера. Отдельный штрихкод можно получить и как PNG.
Генератор этикеток и штрихкодов (v1.0)
Параметры этикетки
| Параметр | Описание | Обязательный |
|---|---|---|
| name | Название товара | Да |
| barcode_value | Значение штрихкода | Да |
| barcode_format | ean13 / code128 / ean8 | Нет (ean13) |
| brand | Бренд | Нет |
| article | Артикул | Нет |
| composition | Состав | Нет |
| country | Страна производства | Нет |
| size | Размер | Нет |
| color | Цвет | Нет |
| marks | ["EAC", "РСТ"] | Нет |
| custom_fields | {"Телефон": "+7..."} | Нет |
Размеры этикеток
| Код | Размер | Применение |
|---|---|---|
| 58x40 | 58x40 мм | Стандартная термоэтикетка |
| 58x30 | 58x30 мм | Компактная термоэтикетка |
| 40x30 | 40x30 мм | Малая термоэтикетка |
| 43x25 | 43x25 мм | Ювелирная этикетка |
| (W, H) | Произвольный | tuple в мм |
A4 раскладки (preset)
| Пресет | Ячейка | Сетка | На листе |
|---|---|---|---|
| 70x37 | 70x37 мм | 3x8 | 24 |
| 52.5x29.7 | 52.5x29.7 мм | 4x10 | 40 |
| 70x42.3 | 70x42.3 мм | 3x7 | 21 |
| 105x48 | 105x48 мм | 2x6 | 12 |
Интеграция с маркетплейсами
Импорт товаров из WB
Маппинг: title → name, vendorCode → article, sizes[].skus[] → barcode.
Импорт товаров из Ozon
filter обязателен (минимум {"visibility": "ALL"}) — иначе 400. Пагинация по last_id.
Затем батч-инфо (до 1000 id за раз):
Принимает любой из массивов: product_id[] | offer_id[] | sku[].
Маппинг: items[].name → name, items[].offer_id → article, items[].barcodes[0] → barcode_value.
FBO этикетки
Для FBO поставок используй SKU-баркоды маркетплейса:
- WB:
barcodeиз карточки товара (полеsizes[].skus[]) - Ozon:
barcodeиз карточки товара (см. секцию «Импорт товаров из Ozon» выше)
Генерируй информационные этикетки с этими баркодами через batch_generate().
FBS стикеры
Стикеры заказов получаются через API маркетплейса (готовые файлы):
- WB:
connector(service="wildberries", action="POST /api/v3/orders/stickers", params={"orders": [id1, id2]}) - Ozon:
connector(service="ozon", action="POST /v2/posting/fbs/package-label", params={"posting_number": ["..."]})
Скачай стикеры через коннектор. При необходимости объедини несколько PDF через pdf_builder.
Запреты
- Не генерируй невалидные EAN-13 (должно быть 12 цифр + контрольная, библиотека считает сама).
- Не хардкодь контрольную цифру EAN-13 — передавай 12 цифр,
python-barcodeдобавит 13-ю. - Для Code128 допустимы буквы и символы.
Пути
| Что | Путь |
|---|---|
| Временные файлы | /tmp/ |
| Результат | $OUTPUT_ROOT/ |
Перед отдачей
- Убедись что файл сгенерирован без ошибок
present_filesдля отдачи результата пользователю
Похожие навыки
Попробуйте этот навык
Зарегистрируйтесь и используйте навык «Генератор этикеток и штрихкодов» бесплатно.