В практике торговых операций часто встречается схема, при которой товар физически отгружается со склада сегодня, но юридическое право собственности переходит к покупателю лишь спустя некоторое время (например, при пересечении границы или доставке на склад клиента). В 1С:ERP и 1С:Комплексная автоматизация для этого используется функционал отложенного перехода права собственности (счет 45). Однако пользователи часто сталкиваются с проблемой: система рассчитывает дату платежа по графику, исходя из даты фактической отгрузки, а не из даты перехода права собственности. Рассмотрим детально, как устроена эта логика и как можно добиться желаемого результата.
Для начала разберем, как система определяет сроки оплаты в обычных условиях. Основным инструментом управления задолженностью являются Правила оплаты, которые настраиваются в Соглашениях с клиентами или непосредственно в документах Заказ клиента и Реализация товаров и услуг.
Чтобы найти нужные настройки, перейдем по пути: НСИ и администрирование — Настройка НСИ и разделов — Продажи — Условия и порядок оплаты. Здесь важно убедиться, что включена опция Шаблоны графиков оплаты. Именно шаблоны позволяют задать алгоритм «Смещение», который определяет количество дней отсрочки.
Рассмотрим стандартный порядок настройки этапа оплаты:
Кредит (после отгрузки).Проанализируем ситуацию с отложенным переходом права собственности. Когда мы проводим документ Реализация товаров и услуг в статусе В пути (или с операцией «Реализация (товары в пути)»), система фиксирует отгрузку, но не признает выручку. График оплаты в этот момент уже сформирован. Когда же оформляется документ Переход права собственности, система делает проводки по признанию выручки (Дт 62 — Кт 90), но автоматического пересчета дат в исходной реализации не происходит.
Выясним причину такого поведения системы. В архитектуре 1С:ERP документ Переход права собственности является подчиненным по отношению к Реализации товаров и услуг. График платежей жестко привязан к табличной части документа реализации. Система «считает», что обязательства сторон зафиксированы в момент начала сделки. Для программы «отгрузка» — это событие, инициированное первичным складским документом. Поскольку дата фактического перехода права собственности заранее неизвестна (она может зависеть от перевозчика или условий приемки), 1С не может автоматически спрогнозировать ее при создании реализации.
Если мы хотим остаться в рамках типового функционала, рассмотрим следующие шаги:
1. Ручное изменение статуса и перезаполнение графика
При использовании статусов документов реализации (В пути -> Реализовано), в момент смены статуса на финальный (когда дата перехода права уже известна), менеджер может зайти на вкладку Основное, нажать гиперссылку Правила оплаты и воспользоваться кнопкой Заполнить по графику. Если в графике стоит Кредит (после отгрузки), система подтянет текущую дату документа в качестве базы для расчета.
2. Использование произвольного количества этапов
В соглашении или заказе можно выбрать вариант оплаты Произвольное количество этапов. В этом случае в табличной части оплаты в Реализации товаров и услуг поле Дата платежа становится доступным для ручного редактирования. Ответственный сотрудник может скорректировать дату вручную, исходя из фактического момента перехода права собственности, подтвержденного документально.
Если объем отгрузок велик, ручной ввод становится неэффективным. Проанализируем, как можно автоматизировать процесс с помощью программного вмешательства. Логика доработки должна заключаться в актуализации графика платежей документа-основания при проведении документа перехода права.
Рассмотрим пример алгоритма, который можно реализовать в расширении:
// Фрагмент логики для подписки на событие ОбработкаПроведения
// документа ПереходПраваСобственности
Процедура АктуализироватьГрафикОплаты(ДокументПерехода)
РеализацияСсылка = ДокументПерехода.ДокументОснование;
Если ТипЗнч(РеализацияСсылка) <> Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда
Возврат;
КонецЕсли;
ОбъектРеализации = РеализацияСсылка.ПолучитьОбъект();
ДатаПерехода = ДокументПерехода.Дата; // Это и есть наша новая база для отсчета
Для Каждого СтрокаОплаты Из ОбъектРеализации.ЭтапыОплаты Цикл
// Проверяем, что этап является кредитным
Если СтрокаОплаты.ВариантОплаты = Перечисления.ВариантыОплатыКлиентом.КредитПослеОтгрузки Тогда
// Прибавляем количество дней отсрочки к дате перехода права
СтрокаОплаты.ДатаПлатежа = НачалоДня(ДатаПерехода) + (СтрокаОплаты.Сдвиг * 86400);
КонецЕсли;
КонецЦикла;
ОбъектРеализации.Записать(РежимЗаписиДокумента.Проведение);
КонецПроцедуры
При такой реализации бухгалтеру достаточно провести документ Переход права собственности, и система сама «передвинет» сроки оплаты в связанной реализации, что обеспечит корректное отображение в отчетах по дебиторской задолженности и в календаре платежей.
Стоит помнить, что изменение дат платежа влияет на:
Таким образом, мы выяснили, что для решения задачи «отсрочка от даты перехода права» в 1С:ERP/КА требуется либо административный регламент по ручному обновлению правил оплаты в реализации, либо небольшая доработка, связывающая дату документа перехода права со сроками платежа в исходной накладной.