QR-код (Quick Response — «быстрый отклик») появился в 1994 году в японской компании Denso Wave для учёта автомобильных деталей. Сегодня с его помощью оплачивают покупки через СБП, открывают меню в кафе, проверяют кассовые чеки, подключаются к Wi-Fi и переходят на сайты с упаковки товаров. Разберёмся, как он устроен и как сделать код, который точно отсканируется.
Как устроен QR-код
QR-код — это квадратная матрица из чёрных и белых модулей (точек). В ней есть служебные элементы:
- три больших квадрата в углах — метки поиска, по которым камера определяет положение и наклон кода;
- метки выравнивания — маленькие квадраты, помогающие читать код под углом (в больших версиях их несколько);
- полосы синхронизации — чередующиеся модули между угловыми квадратами;
- служебная информация о формате и уровне коррекции;
- данные и коды коррекции ошибок.
Вокруг кода обязательно нужна «тихая зона» — свободное поле шириной минимум 4 модуля. Без неё камера может не распознать границы.
Размер матрицы определяется версией: от версии 1 (21×21 модуль) до версии 40 (177×177 модулей). Чем больше данных, тем выше версия и тем мельче модули при том же физическом размере.
Что можно закодировать
| Тип | Пример содержимого | Что делает телефон |
|---|---|---|
| Ссылка | https://example.ru/menu |
Открывает сайт |
| Текст | Любой текст | Показывает текст |
| Wi-Fi | WIFI:T:WPA;S:Cafe;P:пароль;; |
Предлагает подключиться |
| Контакт (vCard) | Имя, телефон, email | Сохраняет контакт |
| Телефон, SMS, email | tel:+74950000000 |
Звонок, сообщение, письмо |
| Геопозиция | geo:55.7558,37.6173 |
Открывает карту |
Платёжные QR-коды СБП формирует банк или платёжный сервис продавца — их не нужно создавать в обычном генераторе.
Создать код любого из распространённых типов можно в генераторе QR-кода.
Статический и динамический QR-код
Статический хранит данные прямо в узоре. Плюсы: бесплатно, навсегда, не зависит от внешних сервисов. Минус: содержимое нельзя изменить после печати.
Динамический содержит короткую ссылку на сервис, который перенаправляет на нужный адрес. Плюсы: адрес можно менять, есть статистика сканирований. Минусы: обычно платная подписка, зависимость от сервиса, лишний переход.
Совет: если ссылка ведёт на ваш собственный сайт, можно получить преимущества динамического кода бесплатно — закодируйте адрес вида example.ru/qr/menu и настройте на сайте редирект на нужную страницу. Тогда при смене меню достаточно поменять редирект.
Уровни коррекции ошибок
QR-код использует коды Рида — Соломона и может восстановить данные, даже если часть узора повреждена или закрыта.
| Уровень | Восстанавливает до | Когда использовать |
|---|---|---|
| L | ~7 % | Чистые условия, экран, много данных |
| M | ~15 % | Стандартный выбор для печати |
| Q | ~25 % | Упаковка, улица, возможные загрязнения |
| H | ~30 % | Логотип в центре кода, тяжёлые условия |
Чем выше уровень, тем больше модулей и тем «плотнее» код. Если вы ставите логотип в центр, выбирайте уровень H и следите, чтобы логотип не закрывал больше 15–20 % площади и не задевал угловые квадраты.
Размер для печати
Главное правило: сторона кода ≈ расстояние сканирования ÷ 10.
| Где | Расстояние | Минимальная сторона |
|---|---|---|
| Визитка, ценник | 20–25 см | 2–2,5 см |
| Меню на столе, листовка | 30–40 см | 3–4 см |
| Витрина, стенд | 1–1,5 м | 10–15 см |
| Плакат, баннер | 3 м | 30 см |
Чем длиннее ссылка, тем больше модулей и тем крупнее должен быть код. Короткий адрес (example.ru/m) даёт более простой узор, который легче сканируется с маленького размера.
Технические советы:
- Сохраняйте в векторном формате (SVG, PDF) для типографии; PNG — минимум 300 dpi в итоговом размере.
- Контраст: тёмный код на светлом фоне. Инверсия (светлый на тёмном) читается не всеми приложениями.
- Не растягивайте код непропорционально.
- Проверьте на нескольких телефонах до отправки тиража в печать.
Безопасность: QR-фишинг (квишинг)
Мошенники используют QR-коды, потому что человек не видит адрес до сканирования.
Типичные схемы:
- наклейка с поддельным кодом поверх настоящего — на парковочном автомате, самокате, в меню;
- письмо «от банка» или «от налоговой» с QR-кодом для «подтверждения данных»;
- объявления с кодом «для оплаты» на поддельную страницу.
Как защититься:
- Смотрите на адрес, который камера показывает перед открытием, — совпадает ли домен с ожидаемым.
- Проверяйте, не наклеен ли код поверх другого.
- Не вводите пароли, коды из SMS и данные карты на сайтах, открытых по коду из письма или с улицы.
- Платите через официальное приложение банка, а не по ссылке со случайного кода.
Для бизнеса: размещайте коды так, чтобы их было сложно подменить, и регулярно проверяйте, куда они ведут.
Как отслеживать эффективность
Чтобы понять, сколько людей пришло по QR-коду, добавьте в ссылку UTM-метки:
https://example.ru/menu?utm_source=qr&utm_medium=offline&utm_campaign=stol
В Яндекс Метрике и Google Analytics такие визиты будут видны отдельно. Для разных точек (столики, витрина, листовки) используйте разные значения utm_campaign — так вы сравните их эффективность. Ссылка с метками длиннее, поэтому код станет плотнее: проверьте сканирование на нужном размере или используйте короткий адрес с редиректом на своём сайте.
QR-код или штрихкод
Для учёта товаров на складе и кассе по-прежнему широко используются линейные штрихкоды: EAN-13 на упаковке, Code 128 для логистики. Они хранят только номер, но быстро читаются любыми сканерами. Создать их можно в генераторе штрихкодов. Обязательная маркировка товаров в России («Честный ЗНАК») использует отдельный формат — DataMatrix с криптографической защитой, который выдаёт система маркировки.
Чек-лист
- Выбран тип кода: статический или динамический.
- Ссылка максимально короткая.
- Уровень коррекции M или выше (H — с логотипом).
- Размер соответствует расстоянию сканирования.
- Есть «тихая зона» в 4 модуля.
- Файл в векторе или 300 dpi.
- Код проверен на нескольких смартфонах перед печатью.