При разработке или тестировании кассовых операций в 1С часто возникает необходимость проверить, как система обрабатывает сложные чеки, например, когда в одном чеке товары или услуги относятся к разным системам налогообложения (СНО). Использовать для этого боевую кассу не всегда удобно и возможно. Давайте вместе разберемся, как настроить эмулятор контрольно-кассовой техники (ККТ) для отладки таких сценариев.
Основная сложность заключается в том, что эмулятор должен корректно имитировать поведение реального фискального регистратора, который поддерживает работу с несколькими СНО одновременно. Рассмотрим несколько способов решения этой задачи, от стандартных средств 1С до использования специализированного оборудования.
Фирма "1С" предоставляет собственный эмулятор ККТ в составе "Библиотеки подключаемого оборудования" (БПО). Это основной и самый доступный инструмент для отладки. Проанализируем по шагам, как его настроить.
Установка и подключение. Убедитесь, что у вас установлен компонент эмулятора ККТ. Затем в режиме "1С:Предприятие" подключите новое оборудование типа "ККТ с передачей данных" и выберите драйвер "1С:Эмулятор ККТ с передачей данных".
Ключевой этап — регистрация эмулятора. Самое важное для нашей задачи происходит на этапе настройки параметров регистрации виртуального фискального накопителя (ФН). Именно здесь вы указываете, какие системы налогообложения будет поддерживать ваш эмулятор.
Выбор нескольких СНО. В окне параметров регистрации ККТ найдите раздел, посвященный системам налогообложения. Вам нужно будет отметить галочками все СНО, которые вы планируете использовать в тестах (например, ОСН, УСН Доход, Патент).
Перерегистрация, если эмулятор уже настроен. Если эмулятор у вас уже был настроен, но только на одну СНО, его необходимо "перерегистрировать". Для этого нужно выполнить операцию, аналогичную закрытию архива ФН на реальной кассе, а затем запустить процедуру регистрации заново, уже с новыми параметрами и выбором нескольких СНО.
Важный момент: стандартный эмулятор от 1С часто корректно работает только с 32-разрядным клиентом "1С:Предприятие". Если вы столкнулись с проблемами, в первую очередь проверьте разрядность вашего клиента. Этот эмулятор отлично подходит для отладки логики формирования чека внутри конфигурации, но он не воспроизводит специфику драйверов от конкретных производителей.
Эмуляторы, даже самые лучшие, не всегда могут на 100% воспроизвести поведение реального "железа". У каждого производителя (Атол, Штрих-М и др.) есть свои особенности в драйверах и командах управления. Поэтому для максимально точного тестирования рассмотрим подход с использованием нативных инструментов.
Установка драйвера. Скачайте и установите последнюю версию драйвера для той модели ККТ, работу с которой вы хотите имитировать (например, ДТО 10 от Атол).
Работа через тестовую утилиту. В составе драйвера обычно идет специальная утилита для тестирования. С ее помощью можно подключить реальный аппарат ККТ в нефискальном режиме (без отправки данных в ОФД) или работать с массогабаритным макетом ФН.
Регистрация с нужными параметрами. Так же, как и в случае с эмулятором 1С, через тестовую утилиту производителя вы проводите процедуру регистрации (фискализации) кассы. На этом шаге вы сможете указать все необходимые СНО.
Этот метод позволяет отладить взаимодействие 1С с драйвером конкретного производителя, проверить, как обрабатываются специфические команды и возвращаются ошибки. Это почти полная имитация работы с реальным устройством.
Для серьезной разработки или постоянного тестирования кассового ПО покупка недорогого оборудования может оказаться самым надежным и эффективным решением. Выясним, что для этого может понадобиться.
Покупка б/у ККТ. На площадках вроде "Авито" можно найти бывшие в употреблении, но полностью рабочие фискальные регистраторы. Это позволит вам тестировать все сценарии на реальном железе, не рискуя боевой кассой.
Использование массогабаритного макета ФН (МГМ ФН). Это специальное устройство, которое внешне и по протоколу полностью имитирует фискальный накопитель, но не содержит криптографического чипа и не отправляет данные в ФНС. Главное преимущество МГМ — его можно многократно "фискализировать" с разными реквизитами и комбинациями СНО. Это идеальный инструмент для разработчика и тестировщика.
Этот подход полностью снимает все ограничения эмуляторов и позволяет быть уверенным, что ваш код будет работать на реальном кассовом аппарате клиента.
Иногда задача состоит не в том, чтобы проверить работу "железа", а в том, чтобы отладить саму логику формирования чека в 1С: правильно ли подбирается СНО для товара, корректно ли рассчитываются суммы и налоги. Для таких случаев можно обойтись без эмуляторов.
В конфигурациях, построенных на "Библиотеке стандартных подсистем" (БСП), есть очень полезный инструмент — "Предпросмотр чека". Он позволяет увидеть, какой именно чек будет отправлен на ККТ, со всеми позициями, ценами, ставками НДС и системами налогообложения. Это отличный способ проверить логику работы вашего кода на уровне 1С, не задействуя вообще никакое оборудование.
Таким образом, выбор решения зависит от вашей конкретной задачи. Для быстрой проверки логики в коде достаточно "Предпросмотра чека". Для полноценной отладки взаимодействия с драйвером лучше всего подойдет стандартный эмулятор 1С или утилита от производителя. А для финального, самого надежного тестирования нет ничего лучше реального аппарата с МГМ ФН.