Как оформить возврат поставщику в 1С:Розница 3.0, если товар вернул покупатель в тот же день?

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

В процессе работы в 1С:Розница 3.0 (или 1С:УНФ) многие пользователи сталкиваются с классической методологической проблемой. Ситуация выглядит так: утром покупатель возвращает товар, оформляется Чек ККМ на возврат, а днем или вечером этот же товар необходимо отправить обратно поставщику. Однако при закрытии смены система аннулирует движения отдельных чеков и формирует сводный документ Отчет о розничных продажах (ОРП), который записывается концом дня. В итоге получается, что расход (возврат поставщику) произошел раньше, чем приход (возврат от покупателя в ОРП), что ломает партионный учет и вызывает ошибки остатков.

В этой статье мы подробно разберем, почему так происходит, и рассмотрим несколько способов решения этой задачи — от организационных изменений до технических «хитростей».

Почему возникает конфликт документов в Рознице 3.0?

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

  1. 09:00 — Оформлен Чек на возврат. В этот момент товар фактически и документально (временно) зачисляется на склад.
  2. 17:00 — Оформляется документ Возврат поставщику. Программа видит остаток, созданный чеком, и позволяет провести документ.
  3. 21:00 — Закрытие кассовой смены. В этот момент программа удаляет все движения по Чекам ККМ и создает один общий Отчет о розничных продажах.

Проблема в том, что Отчет о розничных продажах по умолчанию создается со временем 23:59:59. После перепроведения документов система видит, что в 17:00 вы пытались вернуть товар, который поступил на склад только в 23:59. Происходит «перехлест» времени, возникает отрицательный остаток по партии, и себестоимость списывается некорректно.

Решение 1: Изменение организационного регламента

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

Рекомендуемый порядок действий:

  1. Оформите Чек на возврат от покупателя в обычном режиме.
  2. Дождитесь окончания рабочей смены и выполните операцию Закрытие смены.
  3. Только после формирования документа Отчет о розничных продажах (когда товар официально закрепился на остатках за текущий день) оформляйте Возврат поставщику.

Если возврат поставщику критично сделать именно сегодня, установите в документе Возврат поставщику время вручную — например, 23:59:59. В этом случае в рамках одной секунды программа сначала обработает приходные операции ОРП, а затем расходную операцию возврата.

Решение 2: Использование альтернативного документа возврата

Выясним причину, по которой Чеки ККМ ведут себя так нестабильно. Чеки — это оперативные документы фронт-офиса. Если вам нужно, чтобы возврат от покупателя «застолбил» за собой время и не исчезал при закрытии смены, рассмотрите использование другого типа документа.

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

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

Решение 3: Программная корректировка времени ОРП

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

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

Пример логики, которую можно реализовать в коде (схематично):


Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    Если ЭтоНовый() И ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийОРП.Продажи") Тогда
        // Устанавливаем время на начало дня или время первого чека, 
        // чтобы возвраты поставщику днем прошли успешно
        ЭтотОбъект.Дата = НачалоДня(ЭтотОбъект.Дата) + 1; // Условно 00:00:01
    КонецЕсли;
КонецПроцедуры

Проблема маркировки и системы «Честный ЗНАК»

Рассмотрим еще один критически важный аспект. Если вы торгуете маркированным товаром (обувь, одежда, молочная продукция), то последовательность документов важна не только для бухгалтерии 1С, но и для государственных систем.

Если вы оформите Возврат поставщику (через ЭДО) до того, как код маркировки вернулся в оборот через Чек на возврат, возникнет ошибка в ГИС МТ. Система посчитает, что вы пытаетесь вернуть товар, который все еще числится «выведенным из оборота» (проданным конечному потребителю). Поэтому строгая последовательность «Возврат от клиента -> Отражение в базе -> Возврат поставщику» — это единственный безопасный путь для работы с маркировкой.

Выводы и рекомендации

Проанализировав ситуацию, мы можем выделить три основных правила для работы в Рознице 3.0:

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

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

← На главную