При работе с кассовой техникой АТОЛ в программах 1С пользователи иногда сталкиваются с критической ошибкой: Некорректное значение поля "items[0].tax.type". Чаще всего эта проблема возникает после обновления конфигурации 1С или драйвера оборудования. Давайте вместе разберем, почему возникает этот сбой и как его устранить по шагам.
Эта ошибка означает, что 1С передает в драйвер ККТ данные о налогах, которые не соответствуют формату фискальных документов (ФФД). Касса получает пакет данных, в котором VATRate (ставка НДС) или VATAmount (сумма НДС) содержат недопустимые значения. Например, вместо ожидаемого кода для режима «Без НДС» передается некое числовое значение, которое касса не может интерпретировать.
Первое, что мы сделаем — это проанализируем файл лога драйвера ККТ. Именно там скрывается корень проблемы. Откройте последний лог и обратите внимание на структуру пакета перед строкой ошибки:
[1C] ОписаниеОшибки - [Некорректное значение поля "items[0].tax.type" ]
...
VATRate="1" VATAmount="13" AmountWithDiscount="26"
В данном примере мы видим, что VATRate равно «1», а сумма НДС составляет 13 рублей при общей сумме 26 рублей. Это технически неверно: система пытается передать расчетную ставку налога там, где она не должна присутствовать, или передает некорректный идентификатор ставки.
Рассмотрим, как 1С формирует ставку НДС. В конфигурации 1С:Розница (и других типовых решениях) ставка налога привязывается к карточке номенклатуры или к настройкам учетной политики. Если при обновлении сбились сопоставления, касса начинает получать «мусорные» данные.
Department (отдел). Если вы используете отделы в кассе, убедитесь, что в настройках драйвера АТОЛ для данного отдела верно задана налоговая ставка.Если вы работаете с ФФД 1.2, требования к реквизитам чека становятся жестче. Каждое поле, включая MeasurementUnit (единицу измерения), должно быть заполнено корректно. Если поле MeasurementUnit пустое, это может косвенно влиять на формирование всего пакета данных, приводя к ошибке валидации структуры JSON, которую отправляет 1С.
Посмотрим, как должны выглядеть корректные данные в логе (для режима «Без НДС»):
VATRate="none"
VATAmount="0"
Если вы видите иные значения (как в примере выше, где передавалось «1»), значит, 1С при формировании чека подставляет ошибочный идентификатор ставки.
Если настройки номенклатуры верны, а проблема сохраняется, возможно, произошел сбой в работе внешней компоненты 1С. Выполним следующие действия:
10.x.x.x.Итак, чтобы успешно решить задачу:
VATRate сразу укажет на виновника.Следуя этим шагам, вы сможете локализовать причину сбоя и привести данные, отправляемые в кассу, в полное соответствие с требованиями ФФД.