При работе с торговыми решениями на базе 1С, такими как Управление торговлей (УТ) 11, часто возникает необходимость совмещения нескольких систем налогообложения (СНО) на одном кассовом аппарате. Типичный сценарий — розничные продажи на патенте (ПСН) и оптовые продажи от того же юридического лица на общей системе (ОСН). Однако при попытке пробить чек из документов оптовой торговли (Реализация товаров и услуг или Приходный кассовый ордер) пользователи часто сталкиваются с критической ошибкой: «33h, Ошибка отправки тега 1256: Некорректные параметры в команде». Проанализируем причины этой проблемы и разберем пошаговое решение.
Для начала разберемся, что именно представляет собой тег 1256. Согласно форматам фискальных данных (ФФД), этот тег отвечает за «Наименование покупателя». Он стал обязательным для передачи в фискальных документах при расчетах между организациями и индивидуальными предпринимателями. Ошибка 33h в протоколе ККТ «Штрих-М» сигнализирует о том, что драйвер передает данные в формате, который кассовый аппарат не может обработать.
Рассмотрим ситуацию подробнее. Часто проблема кроется в несоответствии версии ФФД (например, касса работает на 1.05), версии прошивки ККТ и версии используемого драйвера в 1С. Если 1С пытается передать сведения о покупателе (ИНН и наименование) в составе фискального пакета, а драйвер или прошивка кассы не поддерживают корректную упаковку этих тегов для текущей версии ФФД, касса возвращает ошибку параметров.
Посмотрим на пример XML-пакета, который формирует 1С перед отправкой на драйвер ККТ:
<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
<Parameters CashierName="Администратор" OperationType="1"
TaxationSystem="5" SaleAddress="Адрес магазина"
SaleLocation="Магазин" CustomerEmail=""
CustomerPhone="">
<AgentData/>
<VendorData/>
<CustomerDetail Info="ООО 'НОВУР'" INN="5506170790"/>
<OperationalAttribute/>
<IndustryAttribute/>
</Parameters>
<Positions>
<FiscalString Name="Оплата от: ООО 'НОВУР'" Quantity="1"
PriceWithDiscount="4928" AmountWithDiscount="4928" DiscountAmount="0"
Department="2" VATRate="20/120" VATAmount="821.33" PaymentMethod="3"
CalculationSubject="10" MeasureOfQuantity="255">
<AgentData/>
<VendorData/>
<IndustryAttribute/>
</FiscalString>
</Positions>
<Payments Cash="4928" ElectronicPayment="0" PrePayment="0"
PostPayment="0" Barter="0"/>
</CheckPackage>
В данном пакете мы видим узел CustomerDetail, содержащий атрибуты Info (это и есть тег 1256) и INN (тег 1227). Именно некорректная обработка этого узла драйвером «Штрих-М» при ФФД 1.05 чаще всего вызывает ошибку 33h.
Как показывает практика, стандартные драйверы старых версий (например, 1.2 или ранние версии 4.15) некорректно транслируют XML-пакеты 1С в команды протокола Штрих-М для работы с B2B-реквизитами. Выясним, как правильно обновить компоненту:
Проанализируем критически важный момент: при использовании двух СНО в настройках драйвера в самой 1С необходимо явно указать допустимые системы. Рассмотрим, как это сделать:
В окне настройки подключаемого оборудования найдите таблицу соответствия налогов или систем налогообложения. Убедитесь, что установлены флажки напротив тех систем, которые зарегистрированы в фискальном накопителе (например, Общая и Патент).
Важный нюанс: В ККТ Штрих-М системы налогообложения имеют числовые коды (например, ОСН — 1, ПСН — 32). Если 1С передает TaxationSystem="5" (как в примере выше), это соответствует значению «Патент» во внутреннем представлении некоторых версий драйверов. Если же вы пробиваете чек из РТУ (оптовая продажа), программа должна передавать код ОСН (обычно 0 или 1). Проверьте настройки склада и учетной политики организации, чтобы программа верно подставляла код СНО в XML-пакет.
Если обновление драйвера не помогло мгновенно, проанализируем данные покупателя. Ошибка 33h может быть вызвана специфическими символами в наименовании организации. Выполним следующие действия:
1256 ограничен 256 символами, но некоторые старые прошивки касс «капризничают» уже при 64 или 128 символах.ИНН (тег 1227) заполнен корректно и состоит из 10 или 12 цифр без пробелов.Чтобы 1С:УТ автоматически понимала, какую СНО использовать для чека, мы рекомендуем использовать механизм привязки к складам. Разберем этот алгоритм:
Склады два разных склада: «Магазин (Патент)» и «Оптовый склад (ОСН)».Такой подход минимизирует вероятность того, что в драйвер уйдет некорректный параметр TaxationSystem, конфликтующий с данными в CustomerDetail.
Основной способ решения проблемы с ошибкой 33h при передаче тега 1256 — это переход на современную версию драйвера ККТ и пересоздание настройки оборудования в 1С. Это позволяет корректно транслировать реквизиты покупателя в фискальный документ согласно требованиям ФФД 1.05/1.1. Если вы используете старую версию 1С:УТ 11.4, убедитесь, что в базу загружена актуальная внешняя компонента драйвера, поддерживающая последние изменения законодательства в части маркировки и B2B-расчетов.