Как настроить, сгенерировать и напечатать QR-код в 1С:Предприятии 8.3
Содержание
Чтобы печатать QR-код в 1С, отдельного плагина ставить не нужно: механизм печати штрихкодов встроен в платформу 8.3. Нужно выбрать тип штрихкода QR в карточке номенклатуры или в шаблоне этикетки, а для оплаты по QR — включить его в настройках печати счёта. Для чтения кода на складе понадобится 2D-сканер (имиджер): обычный лазерный одномерный сканер двумерные коды не распознаёт.
Сразу разведём два похожих, но разных кода. QR — это код для ссылок, реквизитов и платежей. Маркировка «Честного ЗНАКа» печатается кодом DataMatrix, а не QR, хотя визуально они схожи. Ниже — настройка оборудования, типы кодирования в номенклатуре, печать этикеток, платёжный QR по ГОСТ, связка с маркировкой и разбор того, почему код не считывается.
Что потребуется: принтер, сканер и компонента печати
Печать двумерного кода опирается на встроенную внешнюю компоненту платформы — она формирует картинку штрихкода прямо при выводе печатной формы. В типовых конфигурациях (Бухгалтерия, Управление торговлей, Розница, УНФ, ERP) компонента уже подключена, отдельно её скачивать не нужно. Если при первой печати 1С предложит установить внешнюю компоненту
печати штрихкодов — согласитесь, установка идёт с сервера 1С.
Оборудование делится на две задачи:
- 🖨️ Печать. QR на документе (счёт, акт) выводит обычный лазерный или струйный принтер. Для этикеток на товар берут термопринтер или термотрансферный принтер этикеток (например, линейки АТОЛ, Zebra, Godex).
- 📷 Сканирование. Чтобы считать QR или DataMatrix, нужен двумерный сканер-имиджер. Одномерный (лазерный) сканер двумерные коды не читает физически — это самая частая причина «код не сканируется».
Для склада и кассы удобнее беспроводной или встроенный в ТСД имиджер. Если планируете работать с маркировкой, 2D-сканер обязателен — DataMatrix без него не завести.
Принтер этикеток подключают как обычное торговое оборудование: Администрирование → Подключаемое оборудование, добавить устройство с типом «Принтер этикеток», указать драйвер и порт. Сканер штрихкода добавляется там же с типом «Сканер штрихкода» и, как правило, работает «в разрыв клавиатуры» без драйвера: он просто «набирает» считанный код в активное поле ввода.
Как заранее проверить, что сканер двумерный, не вскрывая документацию: откройте «Блокнот», поднесите сканер к любому QR-коду (например, с упаковки товара или с чека). Если в блокноте появились символы — сканер читает QR. Если луч пробегает, но ничего не вводится, перед вами одномерная модель, и для QR-задач она не подойдёт. Тот же тест работает и для DataMatrix.
Тип штрихкода QR в карточке номенклатуры
Чтобы 1С понимала, что именно кодировать, тип кода задают либо глобально в настройках, либо для конкретной позиции.
В торговых конфигурациях штрихкоды хранятся в отдельном справочнике, подчинённом номенклатуре. Открыть карточку товара можно так: НСИ (или Склад) → Номенклатура, выбрать позицию, перейти на вкладку или по ссылке Штрихкоды. При создании нового штрихкода в поле Тип кода выбирают значение QR.
Возможные типы кодирования, которые поддерживает платформа:
| Тип кода | Для чего применяют |
|---|---|
EAN-13, EAN-8 | Розничные товарные штрихкоды (линейные) |
Code 128 | Внутренние коды, логистика, составные данные |
QR | Ссылки, текст, реквизиты, платёжные данные |
DataMatrix | Маркировка «Честный ЗНАК» (не QR!) |
Если товар продаётся в рознице по обычному линейному коду, QR для него заводить не нужно — QR берут под конкретную задачу: платёж, ссылка на карточку, служебная метка. Значение, которое зашьётся в код, — это содержимое поля штрихкода (строка символов): для ссылки туда кладут URL, для произвольной метки — текст.
Длина строки в QR ограничена, и чем больше символов, тем «плотнее» и мельче модули кода. Если печатаете на этикетку 30×20 мм, не зашивайте в QR длинный URL — код станет нечитаемым при печати.
Печать этикеток и ценников с QR-кодом
Внешний вид этикетки в 1С задаёт механизм Шаблоны этикеток и ценников. Путь обычно такой: НСИ (или Администрирование) → Печать этикеток и ценников → Шаблоны этикеток и ценников. Там создают или редактируют шаблон в визуальном редакторе.
Порядок настройки шаблона:
- Создайте новый шаблон этикетки и задайте размеры под вашу ленту (ширина × высота в мм).
- Добавьте в макет поле типа Штрихкод (в редакторе — элемент с изображением кода).
- В свойствах поля укажите тип
QRи привяжите его к реквизиту, откуда брать данные (штрихкод номенклатуры, артикул, произвольная строка). - Расположите рядом текстовые поля — наименование, цену, артикул.
- Сохраните шаблон и назначьте его для печати нужных товаров.
Печать запускают из документа или списка: выделяют товары и выбирают команду Печать этикеток (или Печать ценников
). В открывшейся форме выбирают шаблон с QR, количество экземпляров и принтер, затем — Печать.
Перед массовой печатью всегда делайте пробную этикетку и считывайте её сканером. Партию в несколько сотен штук с нечитаемым кодом придётся перепечатывать целиком.
Печатать этикетки с QR можно не только из справочника номенклатуры, но и прямо из документов движения товара — поступления, оприходования, переоценки. В этих документах обычно есть команда печати этикеток и ценников по строкам табличной части: удобно, когда коды нужно нанести сразу на принятую партию. Количество этикеток при этом подставляется по количеству товара в документе, но его можно скорректировать вручную в форме печати.
QR-код для оплаты счёта и ссылок
Самое частое применение QR в бухгалтерии — платёжный код на счёте покупателю. Клиент наводит камеру банковского приложения, реквизиты подставляются автоматически, ошибиться в номере счёта или сумме невозможно. Формат такого кода задаёт ГОСТ Р 56042-2014 — именно его понимают банковские приложения.
В 1С:Бухгалтерии платёжный QR включается в настройках печатной формы счёта. Откройте печать документа Счёт покупателю и в настройках формы включите вывод QR-кода (флажок с названием вроде «Печатать QR-код для оплаты»). После этого в печатной форме появится код с зашитыми реквизитами организации, суммой и назначением платежа.
Что попадает в платёжный QR по ГОСТ:
- 🏦 реквизиты получателя: наименование, ИНН, расчётный счёт, банк и БИК;
- 💳 сумма платежа и назначение;
- 📄 номер и дата счёта.
Проверьте, что в карточке организации заполнены все банковские реквизиты. Если расчётный счёт или БИК пустые, код либо не сформируется, либо банковское приложение откажется его распознавать.
Отдельная история — QR со ссылкой. Если нужно вывести на документе или этикетке ссылку на карточку товара, инструкцию или сайт, в содержимое кода кладут URL. Банковское приложение такой код проигнорирует, зато камера телефона откроет ссылку в браузере. Для этого подойдёт поле штрихкода с типом QR и строкой-ссылкой либо произвольный макет с полем штрихкода в отчёте.
Ещё один QR, который формируется сам, — код на кассовом чеке. По требованиям 54-ФЗ онлайн-касса печатает на чеке QR для проверки в приложении «Проверка чека». Его генерирует фискальный накопитель и драйвер ККТ, а не конфигурация 1С напрямую, поэтому настраивать его в шаблоне этикетки не нужно — достаточно корректно подключённой фискальной кассы. Путать его с товарным или платёжным QR не стоит: назначение у него только одно — дать покупателю проверить чек в системе ФНС.
Маркировка «Честный ЗНАК»: это DataMatrix, а не QR
Здесь чаще всего путаница. Коды маркировки для обуви, одежды, табака, молочной продукции, воды и прочих товаров «Честного ЗНАКа» печатаются кодом DataMatrix, а не QR. Внешне DataMatrix квадратный и похож на QR, но структура другая, и банковские сканеры с товарными кодами не взаимозаменяемы.
Работа с маркировкой в 1С строится не через ручную генерацию кода, а через обмен с системой ГИС МТ (Честный ЗНАК):
- Подключите обмен с «Честным ЗНАКом»:
НСИ и администрирование → Обмен с ГИС МТ(илиМаркировка → Настройки), укажите данные подключения и электронную подпись. - Коды маркировки поступают в 1С при приёмке по электронному УПД от поставщика либо заказываются в СУЗ при собственном производстве/импорте.
- При печати этикетки для маркированного товара в шаблоне используют тип
DataMatrix, а данные берут из кода маркировки, сохранённого в документе. - Выбытие кода из оборота оформляется при продаже через кассу или документом вывода из оборота.
Важно: саму строку кода маркировки нельзя придумать или сгенерировать вручную — это юридически значимый код из ГИС МТ. 1С лишь печатает уже полученный код в формате DataMatrix. Поэтому «сгенерировать QR для Честного ЗНАКа» в прямом смысле нельзя: нужен легальный DataMatrix из системы.
Код печатается, но не сканируется: разбор причин
Если QR или DataMatrix в принципе не считывается, идите по причинам от простой к сложной.
- 🔍 Сканер одномерный. Лазерный сканер читает только полосатые линейные коды. Двумерные (QR, DataMatrix) нужен имиджер. Проверьте модель по паспорту — это причина №1.
- 🖨️ Плотность печати. На термопринтере при низкой температуре модули кода бледные, при слишком высокой — «плывут» и слипаются. Отрегулируйте плотность/температуру и скорость печати.
- 📐 Слишком мелкий код. В QR зашито много данных, а поле на этикетке маленькое — модули меньше разрешающей способности принтера. Увеличьте размер поля или сократите содержимое кода.
- 🧩 Размытие и масштаб. Код растянут непропорционально в шаблоне. Штрихкод нельзя тянуть по одной оси — только пропорционально.
- ⚙️ Не подключена компонента печати. Если вместо кода выводится крестик или пустое место, при запуске печати 1С не смогла инициализировать внешнюю компоненту. Переустановите её по подсказке программы.
- 🔢 Неверный тип кода. В поле выбран
QR, а данные — код маркировки (его формат DataMatrix), или наоборот. Тип кода и содержимое должны соответствовать задаче.
Быстрый тест: напечатайте один код крупно (50×50 мм) на обычном листе и поднесите камеру телефона. Если крупный код читается, а мелкий нет — проблема в размере и плотности печати, а не в данных.
Отдельно про платёжный QR: если банковское приложение «видит» код, но пишет, что платёж невозможен, дело в реквизитах. Пустой расчётный счёт, неверный БИК или отсутствие суммы делают код формально валидным, но бесполезным для банка.
И про сканирование на складе через терминал сбора данных (ТСД). Если ТСД не считывает коды, которые нормально читает ручной сканер, проверьте профиль сканирования в самом терминале: в некоторых моделях распознавание двумерных символик (QR, DataMatrix) по умолчанию выключено ради скорости, и его включают в настройках сканирующего модуля устройства. Это уже вопрос прошивки ТСД, а не 1С.
Частые вопросы
Нужно ли покупать отдельный модуль, чтобы печатать QR в 1С?
Чем QR отличается от кода маркировки Честного ЗНАКа?
Почему обычный сканер на кассе не читает QR?
Можно ли зашить в QR ссылку на сайт или карточку товара?
Код печатается бледным и плохо сканируется — что делать?
Источники
- ГОСТ Р 56042-2014 «Стандарты финансовых операций. Двумерные символы штрихкода для осуществления платежей физических лиц»
- Постановление Правительства РФ от 31.12.2019 № 1955 (об обязательной маркировке отдельных товаров)