При совмещении нескольких систем налогообложения (например, УСН Доход и ЕНВД/Патент) пользователи 1С могут столкнуться с ситуацией, когда при пробитии кассового чека касса выбирает не ту СНО. В пакете XML, отправляемом на ККТ, явно указано значение TaxVariant="1", соответствующее системе «УСН Доход», однако на печатной форме чека и в фискальном документе отображается «ЕНВД».
Рассмотрим, почему возникает эта ошибка при работе с фискальными регистраторами АТОЛ и конфигурациями 1С (в частности, «Управление торговлей 10.3»), а также разберем проверенные способы её решения.
Проанализируем структуру передаваемого в ККТ пакета данных XML:
<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
<Parameters PaymentType="1" TaxVariant="1" CashierName="" CustomerEmail="" CustomerPhone=""/>
<Positions>
<FiscalString Name="Товар" Quantity="1" PriceWithDiscount="1" SumWithDiscount="1" DiscountSum="" Department="2" Tax="none" SignMethodCalculation="4" SignCalculationObject="1"/>
</Positions>
<Payments Cash="1" ElectronicPayment="0"/>
</CheckPackage>
По спецификации стандарта БПО (Библиотека подключаемого оборудования) 1С значение атрибута TaxVariant кодируется следующим образом:
Однако на уровне прошивки фискального накопителя и драйверов ККТ системы налогообложения кодируются **битовой маской** (1 — ОСН, 2 — УСН Доход, 4 — УСН Доход-расход, 8 — ЕНВД и т.д.). Если компонента драйвера работает некорректно, передаваемое значение TaxVariant либо игнорируется, либо некорректно транслируется в битовую маску, из-за чего касса применяет СНО по умолчанию.
Выясним главную причину возникновения сбоя. При обновлении конфигураций (например, УТ 10.3.43.2) в состав обработки торгового оборудования подставляется новая компонента внешнего драйвера, такая как fptrwin32_fz54_9_11_0_5549.dll (драйвер АТОЛ v.9 для ФФД 1.05).
В этой версии библиотеки присутствует баг взаимодействия с 1С: компонента игнорирует параметр TaxVariant из входящего XML-пакета и подставляет первую попавшуюся или установленную по умолчанию в ККТ систему налогообложения (в данном случае — ЕНВД).
Если проблема проявилась после обновления конфигурации или обработки торгового оборудования, выполним откат внешней компоненты драйвера на заведомо рабочую версию:
FprnM1C82_54FZ.dll (драйвер версии 8.12.1.0).После замены библиотеки драйвер начинает корректно сопоставлять TaxVariant="1" с режимом «УСН Доход».
Наиболее кардинальным и правильным решением является отказ от устаревших драйверов 8.х и 9.х в пользу **АТОЛ ДТО 10.х**:
Разберем ситуацию, когда ККТ залочена на одну СНО по дефолту на уровне самой кассы:
В некоторых прошивках ККТ система налогообложения может жестко привязываться к номеру отдела (параметр Department в XML):
Department="2"), не задана принудительная привязка к налогу или конкретной СНО, противоречащей входящему XML.