QR-штрихкод на кассовом чеке

30.07.17

Интеграция - ККМ

Простой вопрос - что там должно быть, что туда пихать, и как это проверить?

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
QR-штрихкод на кассовом чеке:
.epf 429,00Kb
25 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Я даже не называл бы это "статьёй" или "публикацией". Это скорее заметка, по итогам потраченного времени.

Дело в том, что мне и коллегам за неделю поисков не удалось найти в сети адекватную и непротиворечивую информацию о том, что же должен включать двумерный штрихкод, размещённый на чеке, чтобы быть адекватно прочитанным с точки зрения ФНС. Мы знаем, что ФНС запустила мобильное приложение под Андроид для чтения и проверки чеков, мы знаем, что делаются порталы и службы от разных ОФД, мы знаем о сторонних утилитах некоторых умельцев. Тут интернет просто пестрит предложениями проверить ваш чек. А вот если задача стоит - эмулировать этот штрихкод, то сведений нету. Зачем? Например, генерировать электронный чек, чтобы потом посылать его клиенту на е-мейл.

Попытка изысканий в типовых конфигурациях кончилась маловразумительно - стало ясно лишь то, что ни пресловутая большая xml-строка, ни параметры команд логическим устройствам ФР/ККТ не содержат собственно названия товаров. Логично: даже у qr-кода ограниченная вместимость, а чек может быть из десятков позиций и их названия могут быть длинными. Вывод: в qr-коде содержится лишь итоговая информация, которая служит для идентификации уже собственно в базе ФНС и уже по ней, по ключевым полям, прочитанным из штрихкода, будут тянуться подробные сведения чека.

Найденная в Рознице 2.0 механика давала невалидную строку. Уж не знаю, когда поменялся стандарт, но весенний релиз не подошёл.

Поэтому сделали просто: отсканировали кучу разных чеков с самых разных мест пробития, и экстраполировали.

Итого, формат получился следующий: 

t=ДатаТВремя&s=СуммаСКопейкамиБезТриад&fn=НомерФискальногоНакопителяККТ&i=НомерФискальногоДокументаЧека&fp=УникальныйыФискальныйПризнакЧека&n=УСН

Или, если в коде,

    ТекстНаQR="t="+Формат(ДатаВремяЧека,"ДФ=ггггММддТЧЧммсс")+
    разд+"s="+Формат(ОбщаяСуммаЧека,"ЧРД=,;ЧЦ=10;ЧДЦ=2;ЧН=0,00;ЧГ=0")+
    разд+"fn="+СокрЛП(НомерФНвашегоККТ)+
    разд+"i="+Формат(ТекущийЧекФД,"ЧГ=0")+
    разд+"fp="+Формат(ТекущийЧекФП,"ЧГ=0")+
    разд+"n="+?(ЭтоУСН,"0","1");


Причём: номер ФН это свойство аппарата, зашитое в нём; можно прочитать с любого чека и единожды зафиксировать; а вот номер ФД и номер ФП - данные, уникально идентифицирующие каждый чек, поэтому они должны читаться программно. Штатный способ для семейства драйверов Штрих-М выглядит примерно следующим образом:

Функция ПолучитьФДиФП(фр)
	фр.Password=30; // административные права
	рез=фр.FNGetStatus();
	Если рез<>0 Тогда
		Возврат Неопределено; // ошибка
	КонецЕсли;
	фд=фр.DocumentNumber;
	рез=фр.FNFindDocument();
	Если рез<>0 Тогда
		Возврат Неопределено; // ошибка
	КонецЕсли;
	фп=фр.FiscalSign;
	Возврат Новый Структура("ФД,ФП",фд,фп);
КонецФункции

Замечу: вроде бы, согласно руководствам, независимо от фр.DocumentType всегда есть правильный FiscalSign, но на практике встретились случаи, когда ФР возвращает верное значение в утилите драйвера, и неверное - в программном обращении из 1С. Если он вернул вам отрицательное значение - значит, неверно. Причину пока понять не удалось, некоторые источники в сети кивают на кривую прошивку. Также замечу: был добавлен метод FNGetFiscalizationResultByNumber, но он есть только в самых свежих прошивках. Про АТОЛ и прочие вики вообще ничего сказать не могу.

Признак УСН - 0 (если ОСН) или 1 (если УСН), другие системы не знаю, как отражаются, не попалось таких чеков. Кто знает - отпишитесь, пожалуйста. Вообще, знающие да скажут больше)

Ну и чтоб не так грустно было, вот простенькая обработочка для генерации QR-кодов, под обычные формы и УФ. Авось кому пригодится.

Вступайте в нашу телеграмм-группу Инфостарт

QR-код двумерный штрихкод штрихкод чек ФР фискальный чек фискальный регистратор кассовый чек штрихкод на чеке генерация QR

См. также

ККМ Кассовые операции Розничная торговля Системный администратор Программист 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия 1.6 1С:Бухгалтерия автономного учреждения Россия Платные (руб)

Универсальная обработка для обслуживания любых фискальных регистраторов (ККТ), в том числе Веб сервер АТОЛ. Работает в соответствии с 54-ФЗ. (ФФД 1.0, ФФД 1.05, ФФД 1.1, ФФД 1.2). Подключайте любую онлайн кассу к практически любой конфигурации на обычных формах. Нет необходимости обновлять 1С. Можно бесплатно скачать и протестировать. Может работать одновременно с несколькими онлайн-кассами, либо одной с разных рабочих мест. (через RDP, TCP\IP или веб-сервер) Позволяет разделить один чек сразу на несколько ККТ или на несколько систем налогообложения. Поддерживает разрешительный режим и маркировку. Поддерживает локальный модуль честного знака для офлайн проверки. Можно настроить собственный шаблонов чека. Можно использовать эквайринг там, где он не поддерживается. Работает на LINUX и Windows

6000 руб.

27.02.2017    857137    5604    9959    

3068

ККМ Кассовые операции Розничная торговля Системный администратор Программист 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия автономного учреждения Россия Платные (руб)

Обработка осуществляет обслуживание ККТ АТОЛ, Штрих, Вики Принт и Меркурий для конфигураций "УТ 10.3", "КА 1.1", "УПП 1.3", "Розница 1.0", "БП 2.0" и других отраслевых решений, построенных на основе указанных выше конфигурациях. Поддерживает возможность параллельно пробития чеков на одной ККМ несколькими пользователями. Поддерживает Веб-сервер Атол. Соответствует требованиям 54-ФЗ. Поддерживает ФФД 1.0, 1.05, 1.1 и 1.2. Разделяет чеки по нескольким СНО. Поддерживает механизмы подключения ККТ по TCP/IP, для работы через RDP или интернет. Поддержка маркировки и разрешительного режима. Поддержка пробития чеков с новыми ставками НДС 5% и НДС 7%.

7900 руб.

25.05.2015    357160    1556    3156    

1129

ККМ Розничная торговля Системный администратор Программист 1С v8.3 Оперативный учет 1С:Розница 2 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Обмен между 1С:Розница и Frontol 6 при торговле от нескольких организаций, а также ряд других полезных функций. Данный модуль синхронизации незаменим для тех, кто ведёт учет по нескольким организациям в 1С:Розница, а на РМК (рабочем месте кассира) установлен Frontol или планируется его установка. Подходит для 1С:Розница 2.3 / 3.0, 1С:УНФ 3.0

7900 руб.

22.03.2019    91913    685    480    

215

Кассовые операции ККМ Пользователь 1С v8.3 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Россия Управленческий учет Платные (руб)

Расширение для 1С:Управление торговлей 11.5, которое позволяет пробивать чеки ККМ и списывать товар с разных складов. Склад списание товара можно указывать в табличной части рабочего места кассира (РМК).

7080 руб.

12.04.2023    12720    80    8    

63

ККМ Кассовые операции Розничная торговля Системный администратор Программист 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Розница 3.0 Россия Платные (руб)

Обработки осуществляют обслуживание фискальных регистраторов, поддерживаемых драйвером "АТОЛ: Драйвер ККМ v.10.10", "ШТРИХ-М: Драйвер ККМ v 5.19", "ВИКИ: Драйвер CSI v 1.6", для конфигураций БП, УТ, КА, УПП, "Розница 3.0", соответствующих требованиям закона ФЗ-54 о применении контрольно-кассовой техники.Поддержка НДС 20%. Поддержка маркировки 488-ФЗ. Марки. Акциз. Честный знак. Разрешительный режим. Локальный модуль Честный Знак. Поддержка УСН НДС 5%, 7%, 20%. Требования к ККТ по приказу Федеральной налоговой службы от 26.03.2025 № ЕД-7-20/23, вступающие в силе с 01.09.25

5040 руб.

02.02.2017    288614    378    2404    

567

Кассовые операции ККМ Пользователь 1С v8.3 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Расширение для 1С:Управление торговлей 11.5 и 11.4, которое позволяет из рабочего места кассира разбивать чек ККМ на несколько чеков и пробивать их на разных кассах подключенных к одному РМК. Можно пробивать разные группы товаров по разным организациям на разных кассовых аппаратах.

7080 руб.

22.08.2022    12947    41    17    

40

Кассовые операции ККМ Системный администратор Программист Бухгалтер 1С v7.7 1С v8.3 1C:Бухгалтерия 1C77 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Программа для управления ККМ Атол и Штрих нового поколения (он-лайн ККТ под 54-ФЗ) с помощью текстового файла (ini файла) с изменениями включена 1 лицензия Для любых программ, которые умеют работать с текстовыми файлами. Внутри комплекта есть готовые к использованию обработки

6000 руб.

31.07.2017    180341    616    609    

216

ККМ Кассовые операции Розничная торговля Ценообразование, анализ цен Системный администратор 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Можно ли в 1С:Розница подключить несколько касс на одно рабочее место? Теперь это возможно! Решение позволяет подключать неограниченное количество касс к одному рабочему месту и выбирать, на какой кассе пробивать чек в зависимости от необходимости. Публикация состоит из двух файлов: одно из них — расширение конфигурации для ПРОФ-версии, второе — внешняя обработка РМК для базовой версии.

4560 руб.

07.08.2018    81350    518    365    

379
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. demon_infernal 41 31.07.17 09:03 Сейчас в теме
0 - ОСН
1 - УСН Доход
2 - УСН Доход - Расход
3 - ЕНВД
4 - ЕСН
5 - Патент
2. Yashazz 4872 31.07.17 12:24 Сейчас в теме
(1) Спасибо! Откуда сведения?
3. demon_infernal 41 31.07.17 15:47 Сейчас в теме
4. Yashazz 4872 31.07.17 18:43 Сейчас в теме
(3) Значит либо у меня релиз был не тот, либо руки кривые, ибо я это там не обрёл. Ещё раз спасибо.
12. VoVo 12.04.22 12:09 Сейчас в теме
(1)Так все таки система налогообложения или вид дока
5. artemibe 02.02.18 10:41 Сейчас в теме
Параметр "n" отражает не вид системы налогообложения, а вид документа:
1 - Приход
2 - Возврат прихода
4 - Расход
5 - Возврат расхода
7 - Коррекция прихода
9 - Коррекция расхода
trio-tlt; +1 Ответить
6. user1139325 26.01.19 21:37 Сейчас в теме
Времени суток сограждане !
Прочитав Всё вышеперечисленное решил предложить вам познакомиться с ГОСТ 56042 действующийс 2014 года.
Этот документ чётко регламентирует , что именно кодируются в платеже при помощи QR кода . А именно, Прошу обратить внимание на то в чём исчисляется платёж. подчеркиваю еще раз это государственный стандарт имеющий обязательную силу к исполнению для всех платежных систем на территории Российской Федерации !!!То есть абсолютно всех!!!
8. пользователь 23.09.20 09:22
Сообщение было скрыто модератором.
...
11. sivin-alexey 513 17.12.20 05:51 Сейчас в теме
(6) QR-код в чеке ничего общего с этим ГОСТом не имеет
13. VoVo 13.04.22 14:58 Сейчас в теме
(6)
ГОСТ 56042

(6)Про букву n и что она значит нет ни шута от слова вообще
7. пользователь 30.04.19 09:05
Сообщение было скрыто модератором.
...
9. Qio 23.09.20 09:24 Сейчас в теме
Купил в магазине, сыр масло сливочное хлеб ну и майка от магазина что бы все это унести, в низу чека QR Код, я отсканировал камерой у меня айфон, мне выскочил код ссылкой на товар)), товар MD-xx44.ZD3 однофазное компактное твердотельное реле для коммутации слаботочной нагрузки! мне интересно почему в чеке реле?. магазин полностью продуктовый!))
10. Qio 23.09.20 09:33 Сейчас в теме
14. coolmarat 10.08.22 20:56 Сейчас в теме
Как быть с датой в чеке? А точнее со временем. Учитывается ли часовой пояс? То есть я вот Владивостоке покупаю что-то. Потом лечу в Москву и хочу проверить этот чек. Как его сформировать, чтобы везде он читался правильно?
Для отправки сообщения требуется регистрация/авторизация