Ставка НДС попадает в чек не из настроек кассы, а из данных, которые передаёт кассовая программа по каждой позиции. Отсюда почти все проблемы: прошивку обновили, драйвер поставили, а в чеке по-прежнему 20 %. Какие версии прошивки и драйвера нужны для ставки 22 %, разобрано в статье про переход на новую ставку.
Разбираем, где ставка задаётся на самом деле, какие значения понимает касса и как проверить, что уходит в фискальный документ.
Три уровня, на которых «живёт» НДС
| Уровень | Что здесь задаётся |
|---|---|
| Товароучётная или кассовая система | Ставка в карточке товара и в налоговых группах |
| Драйвер ДТО | Передаёт ставку позиции при регистрации |
| ККТ и фискальный накопитель | Записывает ставку в фискальный документ по правилам ФФД |
Драйвер не выбирает налоговый режим товара за пользователя. При этом в истории 10.9.0.0 для регистрации позиции предусмотрено значение 6 «без НДС», если налог не передан. Передавайте правильную ставку явно и проверяйте фактические данные позиции.
| Что сравнить | Где |
|---|---|
| Ставка исходного товара | Карточка, налоговая группа и правила выгрузки приложения |
| Переданная ставка позиции | Параметры регистрации позиции в журнале/интеграции |
| Фискальный результат | 1199 у нужной позиции; затем 1200 и итоги соответствующей группы |
| Поле «Налог на чек» на снимках | Отдельная операция; оно не показывает выбор ставки конкретной позиции |
Код значения тега 1199 не следует без проверки подставлять в любой параметр API: используйте именованную константу и контракт установленной версии ДТО. Для полного примера API нужны также тип расчёта, предмет, оплата, состояние документа и обработка ошибок; один вызов регистрации позиции не является готовой продажей.
Ставка задаётся на позицию, а не на чек
Это главное, что нужно понимать. В ФФД ставка НДС — реквизит предмета расчёта, то есть каждой строки чека, а не документа целиком.
Ключевые реквизиты:
- тег 1199 — ставка НДС позиции;
- тег 1200 — сумма НДС по этой позиции;
- тег 1115 — блок «суммы НДС чека» в итоговой части документа.
Поэтому в одном чеке спокойно уживаются товары с разными ставками: касса просуммирует их по группам в итоговой части.
Как это выглядит в фискальных данных
Вот фрагмент реального чека с двумя позициями по ставке 22 %, каким его отдаёт оператор фискальных данных (реквизиты организации убраны):
Тег 1081 — сумма безналичной оплаты, общий итог чека — тег 1020. В полностью безналичном чеке значения совпадают, но при смешанной оплате будут различаться. Ниже показан пояснительный фрагмент документа, а не готовый JSON для отправки.
"1059": { предмет расчёта
"1030": "Нить сан-кая (тангит) Уни-лок 20м",
"1079": 40800, цена, коп.
"1023": 1.0, количество
"1043": 40800, стоимость позиции, коп.
"1199": 11 ставка НДС 22 %
},
"1081": 61600, сумма безналичной оплаты, коп.
"1115": { суммы НДС чека
"1119": { сумма НДС чека
"1199": 11, ставка 22 %
"1120": 11108 сумма налога, коп.
}
}
В схеме показана только одна позиция на 408 рублей; вторая на 208 рублей опущена. Итог двух позиций одной ставки — 616 рублей, налог по этой группе: 616 × 22/122 = 111,08 рубля. Для смешанного чека расчёт ведётся по соответствующим группам, а не одной ставкой от всего итога.
Раньше итоговые суммы налога лежали в отдельных реквизитах под каждую ставку. Такая схема не масштабировалась: с появлением новых ставок под каждую пришлось бы заводить свой реквизит. Поэтому в чеке используется общий блок 1115, внутри которого реквизит 1119 повторяется столько раз, сколько разных ставок встретилось в документе.
Какие значения принимает тег 1199
Ниже показаны новые значения 7–12, а не полный справочник тега 1199. Значения 1–6 относятся к ранее предусмотренным ставкам, включая 10%, 0% и «без НДС»; не перенумеровывайте их при обновлении.
| Значение | Ставка |
|---|---|
| 7 | НДС 5 % |
| 8 | НДС 7 % |
| 9 | расчётная 5/105 |
| 10 | расчётная 7/107 |
| 11 | НДС 22 % |
| 12 | расчётная 22/122 |
Значения 11 и 12 добавлены как раз под новую базовую ставку. Если прошивка ККТ их не знает, касса откажется принять позицию — это и есть причина, по которой одного обновления кассовой программы недостаточно.
Что настраивается в ККТ, а что в программе
В схеме внешнего управления налог конкретной позиции задаёт приложение. В ККТ также есть параметры СНО, печати и таблицы, зависящие от модели; это не повод подменять явно переданный налог товара настройкой всего чека.
В кассовой программе задаются два разных набора значений, и путаница между ними — частая причина ошибок:
- ставка в карточке товара — что именно уйдёт в тег 1199 по этой позиции;
- налоговая группа, если система их использует, — способ назначить одну ставку сразу множеству товаров.
Если приложение использует налоговые группы, проверьте их приоритет и правила выгрузки. Перезапись ставки зависит от конкретной интеграции, а не происходит обязательно в каждой системе.


Как проверить, что уходит в чек
Проверьте уже сформированный чек реального расчёта. Шаги в утилите ниже используйте только для реальной продажи с корректными данными либо на учебном стенде с МГМ.
- Откройте вкладку «Чек».
- Заполните позицию: наименование, количество, цену — и выберите ставку в выпадающем списке справа от суммы.
- Зарегистрируйте позицию, проверьте итог, задайте вид и сумму оплаты и закройте чек. Полный порядок подготовки, регистрации кассира и проверки результата — в инструкции по ручному расчёту.
- Посмотрите печатную форму: ставка должна быть указана явно.
Успешная операция подтверждает работу проверенного сочетания данных и компонентов. При отказе сохраните точный код: причиной может быть не только прошивка, но и параметры запроса, состояние ККТ или несовместимость компонентов.
Окончательную проверку даёт личный кабинет ОФД. Обычно чек там показан в человекочитаемом виде — у позиции будет строка со ставкой, например «НДС 22%». Это и есть подтверждение, что значение дошло до фискальных данных, а не осталось только в печатной форме. Если кабинет умеет показывать реквизиты по тегам, сверьте тег 1199: 11 для ставки 22% и 12 для расчётной 22/122.

Типовые ошибки
В чеке старая ставка. Прошивка и драйвер обновлены, но товароучётная система передаёт прежнее значение. Проверьте карточки товаров и налоговые группы, отдельно — редко продаваемую номенклатуру: массовая замена ставки часто задевает только активные позиции.
Отказ регистрации позиции. Сохраните код и переданное значение ставки. Поддержка 22% и 22/122 отмечена в истории ДТО 10.10.8.0, но прошивку выбирают по конкретной модели. Номер 5.17.0 нельзя применять ко всем линейкам ККТ. Границы совместимости.
Неверный расчёт налога. Обычно причина в том, что программа передаёт сумму НДС отдельно (тег 1200) и она не сходится с расчётом по ставке. Проще передавать ставку и позволить кассе рассчитать сумму самой.
Ставка «поехала» у части товаров. Проверьте позиции с нетипичными значениями — 0 %, «без НДС», расчётные ставки. Массовая замена 20 → 22 нередко задевает и их.
Для проверки используйте существующий чек и его фискальные данные у ОФД. Если нужно воспроизвести операцию в утилите, применяйте стенд с МГМ или оформляйте только реальный расчёт; фиктивный тест на зарегистрированном ФН попадёт в учёт.
Частые вопросы
Можно задать ставку по умолчанию для всего чека? В тесте драйвера есть регистрация налога на чек, но в рабочей схеме ставка передаётся по каждой позиции — так требует ФФД.
Нужно ли перерегистрировать кассу при смене ставки? Нет. Ставка не входит в реквизиты регистрации ККТ.
Как понять, поддерживает ли прошивка новую ставку? Распечатайте «Информацию о ККТ» и сверьте версию ПО с требуемой для вашей модели.
Коротко
Ставку задают по позиции. Значения 11 и 12 относятся к 22% и 22/122; это часть справочника 1199. Ставку передавайте явно, учитывая значение «без НДС» по умолчанию в API. Отказ анализируйте по коду, а результат — по данным позиции и итогам соответствующей группы НДС.
Материал носит информационный характер. Сайт atoldriver.ru не является представительством компании АТОЛ и не оказывает услуг по настройке касс.