Как правильно оформить чек на возврат, если исходный чек из ПКО в 1С:КА 2 был пробит некорректно?

Программист 1С v8.3 (Управляемые формы) Налоговый учет Торговля и дистрибуция
← На главную

В работе с конфигурацией «1С:Комплексная автоматизация 2» (КА2) специалисты часто сталкиваются с ситуациями, когда фискальный чек, пробитый из документа Приходный кассовый ордер (ПКО), содержит некорректные данные: не те товарные позиции, неверные ставки НДС или суммы. Рассмотрим детально, как выйти из этой ситуации, разберем причины возникновения проблемы и проанализируем различные способы формирования чека на возврат.

Причины некорректного состава чека в 1С:КА 2

Прежде чем мы перейдем к исправлению, давайте выясним причину, по которой 1С формирует «странный» состав чека. В отличие от простых систем, КА2 и ERP используют сложный механизм распределения расчетов. Если в договоре с контрагентом выбран способ ведения взаиморасчетов «По договорам», система применяет принцип ФИФО (First In, First Out).

Проанализируем ситуацию: когда вы пробиваете чек из ПКО, программа обращается к регистру Расчеты с клиентами. Если за клиентом числится старая задолженность по другим отгрузкам, система автоматически «подтягивает» в чек номенклатуру из тех старых реализаций, которые она считает оплаченными этим поступлением денег. В итоге в чеке печатаются позиции, которые фактически не имеют отношения к текущей сделке. Это и создает «веселье», упоминаемое пользователями на форумах.

Способ 1. Создание чека на возврат через РКО (Стандартный механизм)

Самый очевидный путь — это создание документа Расходный кассовый ордер (РКО) на основании исходного ПКО. Рассмотрим этот процесс по шагам:

  1. Найдем в списке документов исходный Приходный кассовый ордер.
  2. На основании ПКО создадим документ Расходный кассовый ордер.
  3. Проверим табличную часть «Расшифровка платежа». Именно на основании этих данных система будет пытаться подобрать номенклатуру для чека.
  4. Попробуем пробить чек.

Однако, как показывает практика, на этом этапе часто возникают сложности: состав чека в РКО может снова не совпасть с тем, что было в ПКО. Это происходит из-за того, что при возврате система опять пытается пересчитать остатки по регистру расчетов. Если типовой механизм выдает ошибку или неверный состав, перейдем к более глубоким методам коррекции.

Способ 2. Использование расширения для корректировки данных чека

Если нам необходимо, чтобы чек на возврат в точности повторял позиции ошибочного приходного чека, мы можем воспользоваться механизмом расширений. Проанализируем, как программно вмешаться в процесс формирования XML-пакета для кассового аппарата.

В 1С подготовка данных для ККТ происходит в общем модуле МенеджерОборудования. Мы можем создать расширение и перехватить процедуру формирования таблицы товаров. Посмотрим на пример логики, которую можно реализовать в расширении:


&После("ПодготовитьДанныеДляПечатиЧека")
Процедура Расш_ПодготовитьДанныеДляПечатиЧека(ПараметрыЧека, ДанныеОбъекта)
    // Проверяем, что это наш документ РКО, созданный для исправления ошибки
    Если ТипЗнч(ДанныеОбъекта.Ссылка) = Тип("ДокументСсылка.РасходныйКассовыйОрдер") Тогда
        // Подменяем таблицу товаров на ту, которая была в исходном ПКО
        // Здесь можно программно заполнить таблицу ПараметрыЧека.ПозицииЧека
    КонецЕсли;
КонецПроцедуры

Этот метод позволяет жестко задать список товаров, ставок НДС и цен, игнорируя автоматические расчеты системы по регистрам. Таким образом, мы получим чек на возврат, который полностью «зеркалит» ошибочный приход.

Способ 3. Использование утилиты «Тест драйвера ККТ» (Крайний случай)

Если база данных сильно доработана или учетные регистры находятся в состоянии «болота», а чек нужно выбить «здесь и сейчас», мы можем воспользоваться утилитой производителя кассового аппарата (например, Тест драйвера АТОЛ). Выясним, как это сделать правильно с точки зрения закона:

  1. Откроем утилиту драйвера и установим связь с кассой.
  2. Перейдем в режим формирования чека и выберем тип документа «Возврат прихода».
  3. Вручную заполним все теги: наименования товаров, суммы, ставки НДС.
  4. Важный момент: в поле «Фискальный признак документа» (ФП/ФПД) следует указать значение из того самого ошибочного чека, который мы возвращаем. Это обеспечит корректную связь документов в ОФД.
  5. Пробьем чек напрямую через драйвер.

После этого в самой 1С операцию возврата денег нужно будет отразить бухгалтерской операцией или документом без пробития чека, чтобы выровнять остатки в учете.

Особенности работы с ФФД 1.2 и чеками коррекции

Разберем важный нюанс: начиная с определенных версий ФФД (особенно 1.2), для исправления ошибок кассира рекомендуется использовать не «Возврат прихода», а «Чек коррекции». Рассмотрим алгоритм исправления:

  1. Формируем Чек коррекции на возврат прихода. Этот документ должен полностью повторять ошибочный чек, включая все неверные данные. Его цель — аннулировать ошибку.
  2. Формируем Чек коррекции на приход. В этом документе мы указываем уже правильные позиции, суммы и ставки НДС.

В современных релизах КА2 документ Чек коррекции позволяет сделать это штатно. Это более правильный путь с точки зрения налоговой отчетности, так как он явно указывает на исправление ошибки, а не на фактический возврат товара покупателем.

Рекомендации по настройке учета для избежания проблем

Чтобы в будущем не сталкиваться с «кривыми» чеками в 1С:КА 2, проанализируем настройки программы. Для оптовой торговли с розничными чеками рекомендуется:

Таким образом, мы выяснили, что проблема «кривого» чека на возврат чаще всего кроется в механизме распределения оплат. Использование РКО — это правильный бухгалтерский путь, но в сложных случаях автоматизации может потребоваться либо корректировка настроек взаиморасчетов, либо программное вмешательство через расширение для точного формирования состава чека.

← На главную