Не выводится ИНН покупателя и новые реквизиты в чеках ККТ АТОЛ в 1С:Бухгалтерия 3.0 с 1 июля 2019 года: как решить проблему?

Системный администратор 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Налоговый учет Торговля и дистрибуция
← На главную

С 1 июля 2019 года в соответствии с требованиями Федерального закона № 54-ФЗ при осуществлении расчетов между организациями и (или) индивидуальными предпринимателями с использованием наличных денег или предъявлением электронных средств платежа в кассовом чеке обязательно должны указываться дополнительные реквизиты: наименование покупателя (тег 1227) и ИНН покупателя (тег 1228).

При переходе на эти требования пользователи конфигурации 1С:Бухгалтерия предприятия 3.0, использующие кассовую технику АТОЛ (например, популярную модель АТОЛ 11Ф), массово столкнулись с проблемой: новые реквизиты упорно не выводятся на печать в чеках, либо сама программа выдает критические ошибки при попытке пробить чек. В этой статье мы подробно разберем причины этой проблемы и по шагам пройдем весь путь ее решения.

Выясняем причины проблемы: почему не печатаются новые реквизиты

Для того чтобы новые теги корректно передавались из программы 1С на чековую ленту и далее в ОФД, должна бесперебойно работать вся цепочка интеграции:

  1. Программа 1С:Бухгалтерия 3.0 (начиная с релиза 3.0.71.69) должна сформировать XML-пакет чека, содержащий новые теги. За интеграцию отвечает встроенная Библиотека подключаемого оборудования (БПО).
  2. Интеграционная компонента (внешняя компонента формата DLL) должна правильно расшифровать этот XML-пакет и перевести его на язык драйвера ККТ.
  3. Драйвер торгового оборудования (ДТО) должен передать команды непосредственно на саму кассу.
  4. Прошивка (внутреннее ПО ККТ) должна поддерживать обработку тегов 1227 и 1228 на аппаратном уровне.

Если хотя бы одно звено этой цепи работает некорректно, реквизиты покупателя в чеке не появятся. Как показывает практика реальных внедрений того периода, основными источниками проблем стали сырые версии драйверов АТОЛ ДТО 10 и ошибки в поставляемых интеграционных компонентах 1С.

Анализируем ошибки драйверов АТОЛ 10.5.0.0 и версии компоненты

Рассмотрим ситуацию, с которой сталкивались многие системные администраторы. При попытке настроить связку драйвера версии 10.5.0.0 и интеграционной компоненты 10.4.6 в 1С возникал конфликт версий. При этом попытка установить официальную на тот момент компоненту 10.5.0 приводила к критическому багу.

Суть бага смены: при отправке команды на печать чека компонента возвращала в 1С ложное состояние ККТ — "Смена всегда закрыта" (статус 1), даже если смена на кассе была фактически открыта. 1С блокировала дальнейшую работу, и чек не пробивался.

Для обхода этой проблемы пользователи были вынуждены откатываться на компоненту 10.4.6. Но в версии 10.4.6 механизмы вывода новых тегов (ИНН и наименования покупателя) не были реализованы в полной мере, из-за чего чеки печатались, но без обязательных реквизитов контрагента.

Пошаговая инструкция по решению проблемы

Чтобы полностью исправить ситуацию, восстановить печать всех обязательных реквизитов и избежать ошибок блокировки смены, выполним следующие шаги.

Шаг 1. Подготовка ККТ (прошивка)

Прежде чем настраивать программное обеспечение на компьютере, убедимся, что фискальный регистратор физически готов к работе с новыми тегами. Прошивка ККТ должна поддерживать работу с ФФД 1.05 в части тегов 1227 и 1228:

Если прошивка старая, касса будет просто игнорировать команды записи ИНН покупателя, приходящие от драйвера.

Шаг 2. Правильная последовательность обновления драйвера

Очень важно соблюдать последовательность действий при смене версий драйверов во избежание системных сбоев:

  1. Запустите тест драйвера ККТ текущей рабочей версии (например, 9.х или 10.4.х) и обязательно закройте смену (снимите Z-отчет).
  2. Удалите старую версию ДТО через панель управления Windows.
  3. Установите обновленный драйвер ККТ АТОЛ (рекомендуется использовать стабильные релизы версии 10.5.1.0 или выше, в которых исправлен баг "всегда закрытой смены").

Шаг 3. Обновление интеграционной компоненты в 1С

Если вы вынуждены использовать драйвер версии 10.5.0.0, вам необходимо заменить дефектную компоненту на исправную версию. Для этого:

  1. Скачайте исправленный архив внешней компоненты от разработчиков АТОЛ. В период массовых проблем временная рабочая версия поставлялась в архиве под именем ATOL_KKT_10.zip (содержащем библиотеку fptr10_1c_win32_0_0_0_237.dll или аналогичную стабильную сборку).
  2. В режиме Предприятия в 1С перейдите в раздел Администрирование — Подключаемое оборудование.
  3. Откройте карточку вашего фискального регистратора, перейдите в настройки драйвера и выберите пункт "Функции" -> "Установить драйвер из файла" (или загрузите новую компоненту через справочник Драйверы оборудования).

Рассмотрим пример того, как программно в коде 1С (в БПО) формируется XML-пакет с передачей необходимых реквизитов покупателя. Это позволяет понять, как именно компонента транслирует данные в ККТ:


// Пример формирования структуры чека с тегами покупателя в БПО
ПараметрыЧека = Новый Соответствие;
ПараметрыЧека.Вставить("ДанныеПокупателя", Новый Структура("Наименование, ИНН", "ИП Иванов Иван Иванович", "770102030405"));

// В XML-пакет чека будут добавлены соответствующие атрибуты:
// <Receipt CustomerName="ИП Иванов Иван Иванович" CustomerINN="770102030405">

Шаг 4. Обновление конфигурации 1С:Бухгалтерия 3.0

Для того чтобы исключить необходимость ручной подмены файлов DLL в системных папках (таких как %APPDATA%\1C\1Cv8\ExtCompT\), самым надежным решением является обновление конфигурации. В релизе 3.0.72.66 и выше механизмы БПО были штатно обновлены. Новые версии конфигураций поставляются с уже встроенной сертифицированной и стабильной компонентой интеграции с АТОЛ ДТО 10, которая без ошибок определяет статус смены ККТ и корректно выводит ИНН и наименование покупателя на печать.

← На главную