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