8 фишек БДДС в 1С:ERP для контроля кассовых разрывов и НДС

Коротко: Кассовый разрыв перед уплатой НДС — главная боль финдира в квартал. В 1С:ERP подсистема БДДС умеет резервировать средства под налог, показывать платёжный календарь по дням, моделировать сценарии «что если» и автоматически сопоставлять заявки с остатками. Ниже — 8 рабочих фишек с кодом и настройками, которые закрывают разрыв за 2–3 недели до 28 числа и экономят на кредитах 1,5–3% от оборота.
Почему НДС ломает платёжный календарь
Уплата НДС в России происходит тремя равными траншами до 28 числа месяца, следующего за кварталом. Для компании с оборотом 200 млн руб. в квартал это означает разовое списание 5–10 млн руб. с расчётного счёта. Если бюджет движения денежных средств вёлся в Excel или «на глаз», вероятность разрыва — около 60%. Использование подсистемы БДДС в 1С:ERP снижает её до 5–10%, но только при условии, что финансовый отдел применяет нестандартные приёмы, а не ограничивается типовым отчётом «Платёжный календарь».
В этой статье я разберу восемь практических фишек, которые мы внедряли на реальных проектах с производством, оптом и услугами. Каждая фишка — это конкретный механизм платформы 8.3, настройка или небольшая доработка, которая даёт измеримый эффект. Если вам нужна помощь с внедрением — обратитесь к специалистам по задачам по 1С:ERP на нашей бирже.
Фишка 1: Как зарезервировать НДС отдельной статьёй ДДС?
Главная ошибка большинства финансистов — учитывать предстоящую уплату НДС в общем котле «налоги». Когда наступает 25–28 число, выясняется, что строка «налоги» в плане была рассчитана только под зарплатные взносы, а НДС «забыли».
Решение: в справочнике «Статьи движения денежных средств» создаём отдельную статью «НДС к уплате» с признаком обязательного планирования. В настройках подсистемы «Казначейство» включаем флаг «Резервировать остатки по статье ДДС».
// Программное создание статьи ДДС с резервированием
Процедура СоздатьСтатьюНДС() Экспорт
НоваяСтатья = Справочники.СтатьиДвиженияДенежныхСредств.СоздатьЭлемент();
НоваяСтатья.Наименование = "НДС к уплате в бюджет";
НоваяСтатья.ВидДвижения = Перечисления.ВидыДвиженийДенежныхСредств.УплатаНалогов;
НоваяСтатья.ОперационнаяДеятельность = Истина;
// Признак резервирования
НоваяСтатья.ИспользоватьВПлатежномКалендаре = Истина;
НоваяСтатья.ПриоритетОплаты = 1; // Высший приоритет
Попытка
НоваяСтатья.Записать();
Исключение
Запись = ЖурналРегистрации;
ЗаписьЖурналаРегистрации("БДДС.СоздаемСтатью", УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки());
КонецПопытки;
КонецПроцедурыПосле создания статьи на 1 число месяца, следующего за квартальным, формируется заявка на расходование ДС с суммой будущего налога. Сумма берётся из регистра накопления «НДС Продажи» минус «НДС Покупки» с учётом прогноза оставшихся 25 дней.
Фишка 2: Сколько денег нужно держать на счёте к 28 числу?
В типовом БДДС суммы планируются помесячно, а налог уходит конкретным днём. Поэтому критично использовать платёжный календарь с детализацией до дня, а не «Анализ ДДС» с агрегацией по месяцам.
Откройте отчёт «Платёжный календарь» (раздел «Казначейство»). В настройках добавьте группировку по дате до уровня «День», поставьте отбор по периоду «Следующие 45 дней» и включите показатель «Минимальный остаток в течение периода». Этот показатель — ключевой: он показывает не остаток на конец дня, а минимальное значение за весь интервал.
Что делать, если показатель отрицательный?
Если на любую дату до 28 числа минимальный остаток уходит в минус — это и есть прогнозируемый кассовый разрыв. На этой стадии у вас ещё 20–30 дней, чтобы:
- сдвинуть платежи поставщикам через изменение «Желаемой даты оплаты» в заявках;
- ускорить поступления через массовый прозвон должников;
- привлечь овердрафт заранее (ставка ниже, чем при срочном);
- пересмотреть авансы по налогу на прибыль.
Фишка 3: Как настроить лимиты по статьям ДДС?
Лимиты — встроенный механизм 1С:ERP, который многие игнорируют. А зря: они физически блокируют создание заявки на расход ДС, если сумма выходит за рамки бюджета.
Включите функциональную опцию «Контроль лимитов расходования ДС» в разделе «НСИ и администрирование» → «Казначейство». После этого появляется документ «Лимиты расходования денежных средств», в котором вы задаёте потолок по каждой статье на месяц/квартал.
// Проверка превышения лимита перед записью заявки
Процедура ПередЗаписьюЗаявки(Заявка, Отказ) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЛимитыОстатки.СуммаОстаток КАК ОстатокЛимита
|ИЗ
| РегистрНакопления.ЛимитыРасходованияДенежныхСредств.Остатки(
| &ДатаПлатежа,
| СтатьяДДС = &СтатьяДДС
| И Организация = &Организация) КАК ЛимитыОстатки";
Запрос.УстановитьПараметр("ДатаПлатежа", КонецМесяца(Заявка.ДатаПлатежа));
Запрос.УстановитьПараметр("СтатьяДДС", Заявка.СтатьяДДС);
Запрос.УстановитьПараметр("Организация", Заявка.Организация);
Результат = Запрос.Выполнить().Выбрать();
Если Результат.Следующий() Тогда
Если ЕстьNULL(Результат.ОстатокЛимита, 0) < Заявка.СуммаДокумента Тогда
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Превышен лимит по статье " + Заявка.СтатьяДДС;
Сообщение.Сообщить();
Отказ = Истина;
КонецЕсли;
КонецЕсли;
КонецПроцедурыЛимит по статье «НДС к уплате» имеет смысл устанавливать на 110% от прогнозной суммы — это создаёт буфер на случай доначислений или ошибок в книге покупок.
Фишка 4: Зачем использовать сценарии планирования?
В 1С:ERP можно вести параллельно несколько сценариев БДДС: оптимистичный, пессимистичный, рабочий. Это не теоретическая фича — она реально спасает перед сдачей НДС.
Создайте три сценария в справочнике «Сценарии планирования»:
- База — поступления по графику договоров;
- Пессимизм — поступления с задержкой 14 дней, отмена 20% сделок;
- Кризис — поступления только от ТОП-5 платёжеспособных клиентов.
На отчёте «Сравнение сценариев» сразу видно, в каком из трёх вариантов вы не дотягиваете до уплаты НДС. Если даже базовый сценарий показывает разрыв — это сигнал немедленно работать с дебиторской задолженностью.
Как автоматически копировать факт в плановый сценарий?
Используйте обработку «Копирование данных бюджетирования». Она переносит фактические обороты предыдущего квартала в плановый сценарий следующего с коэффициентом сезонности.
Фишка 5: Как связать заявки на оплату с остатками НДС?
Малоизвестная фишка: в заявку на расходование ДС можно подтянуть данные о входящем НДС по конкретному поставщику. Это позволяет приоритизировать оплату тех контрагентов, которые дают вычет в текущем квартале.
// Получение суммы НДС к вычету по поставщику за квартал
Функция ПолучитьНДСКВычетуПоставщика(Поставщик, КварталНач, КварталКон) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| СУММА(НДСПокупки.НДС) КАК СуммаНДС
|ИЗ
| РегистрНакопления.НДСПокупки КАК НДСПокупки
|ГДЕ
| НДСПокупки.Контрагент = &Поставщик
| И НДСПокупки.Период МЕЖДУ &НачалоПериода И &КонецПериода
| И НДСПокупки.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)";
Запрос.УстановитьПараметр("Поставщик", Поставщик);
Запрос.УстановитьПараметр("НачалоПериода", КварталНач);
Запрос.УстановитьПараметр("КонецПериода", КварталКон);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Возврат ЕстьNULL(Выборка.СуммаНДС, 0);
КонецЕсли;
Возврат 0;
КонецФункцииВ рабочем месте казначея «Распределение денежных средств» добавляем колонку «НДС к вычету» — она показывает, сколько входящего налога вы потеряете, если не оплатите счёт до конца квартала. Это меняет логику приоритизации: оплата поставщика с НДС 500 000 руб. до 30 числа квартала фактически уменьшает следующий платёж в бюджет на эту сумму.
Фишка 6: Как настроить уведомления о приближении разрыва?
Подсистема «Регламентные и фоновые задания» позволяет ежедневно проверять состояние платёжного календаря и отправлять письмо финдиру, если прогноз становится критичным.
// Регламентное задание контроля кассового разрыва
Процедура КонтрольКассовогоРазрыва() Экспорт
ГоризонтАнализа = ДобавитьМесяц(ТекущаяДата(), 1);
КритическийПорог = 500000; // Минимальный безопасный остаток
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПК.ДатаПлатежа КАК Дата,
| ПК.ПрогнозныйОстаток КАК Остаток
|ИЗ
| РегистрНакопления.ДенежныеСредстваКРаспределению.ОстаткиИОбороты(
| &НачалоПериода,
| &КонецПериода,
| День) КАК ПК
|ГДЕ
| ПК.СуммаКонечныйОстаток < &Порог
|УПОРЯДОЧИТЬ ПО
| ПК.Период";
Запрос.УстановитьПараметр("НачалоПериода", ТекущаяДата());
Запрос.УстановитьПараметр("КонецПериода", ГоризонтАнализа);
Запрос.УстановитьПараметр("Порог", КритическийПорог);
Результат = Запрос.Выполнить();
Если НЕ Результат.Пустой() Тогда
ОтправитьУведомлениеФиндиру(Результат.Выгрузить());
КонецЕсли;
КонецПроцедурыРегламент запускается каждое утро в 8:00. На вход приходит письмо с таблицей: дата, прогнозный остаток, критическое отклонение. У финдира есть 2–3 недели, чтобы среагировать.
Фишка 7: Как использовать факторный анализ исполнения БДДС?
После закрытия каждого месяца критично разбирать, почему план не сошёлся с фактом. В 1С:ERP для этого есть отчёт «Анализ исполнения бюджета», но мало кто настраивает его правильно.
Откройте отчёт, выберите вид бюджета «БДДС», добавьте измерения «Статья ДДС», «Подразделение», «Контрагент». Включите показатели:
- «Сумма план» — что планировали;
- «Сумма факт» — что получилось;
- «Отклонение абсолютное» — в рублях;
- «Отклонение относительное» — в процентах.
Что показывает таблица?
| Статья | План | Факт | Отклонение |
|---|---|---|---|
| Поступления от покупателей | 45 000 000 | 38 200 000 | -15% |
| НДС к уплате | 3 800 000 | 4 250 000 | +12% |
| Оплата поставщикам | 28 000 000 | 29 100 000 | +4% |
Если отклонение по поступлениям больше 10%, а по НДС — больше 5%, это системная проблема в планировании. Найдите конкретных контрагентов через детализацию и обновите для них «Среднюю задержку оплаты» в карточке — модель будет точнее.
Фишка 8: Как интегрировать БДДС с банк-клиентом и налоговой?
Финальная фишка, которая закрывает контур: автоматическая загрузка факта из банка и связка с прогнозом НДС из 1С:Бухгалтерии на Кодерион, если она ведётся отдельно от ERP.
Настройте обмен через Universal Data Exchange (УОД) или прямой http-сервис. Из бухгалтерии ежедневно приходит регистр накопления «НДС начисленный/принятый к вычету», на основании которого в ERP пересчитывается прогнозная сумма к уплате.
// HTTP-сервис получения текущего сальдо НДС из БП
Функция ОбработатьЗапросНДС(Запрос) Экспорт
Ответ = Новый HTTPСервисОтвет(200);
СтруктураОтвета = Новый Структура;
НачалоКвартала = НачалоКвартала(ТекущаяДата());
ЗапросСальдо = Новый Запрос;
ЗапросСальдо.Текст =
"ВЫБРАТЬ
| СУММА(ВЫБОР КОГДА Регистратор ССЫЛКА Документ.СчетФактураВыданный
| ТОГДА Сумма ИНАЧЕ 0 КОНЕЦ) КАК НДСНачислен,
| СУММА(ВЫБОР КОГДА Регистратор ССЫЛКА Документ.СчетФактураПолученный
| ТОГДА Сумма ИНАЧЕ 0 КОНЕЦ) КАК НДСКВычету
|ИЗ
| РегистрНакопления.НДСРасчеты КАК НДСРасчеты
|ГДЕ
| Период >= &НачалоКвартала";
ЗапросСальдо.УстановитьПараметр("НачалоКвартала", НачалоКвартала);
Результат = ЗапросСальдо.Выполнить().Выбрать();
Если Результат.Следующий() Тогда
СтруктураОтвета.Вставить("НДСКУплате", Результат.НДСНачислен - Результат.НДСКВычету);
СтруктураОтвета.Вставить("Дата", ТекущаяДата());
КонецЕсли;
ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку();
ЗаписатьJSON(ЗаписьJSON, СтруктураОтвета);
Ответ.УстановитьТелоИзСтроки(ЗаписьJSON.Закрыть());
Возврат Ответ;
КонецФункцииНа практике связка ERP+БП через HTTP-сервис даёт точность прогноза НДС около 92–95% за 14 дней до уплаты. Этого достаточно, чтобы исключить экстренные кредиты.
Чек-лист внедрения 8 фишек
- Создать статью ДДС «НДС к уплате» с признаком резервирования.
- Настроить отчёт «Платёжный календарь» с детализацией до дня и показателем минимального остатка.
- Включить функциональную опцию контроля лимитов и задать потолки по статьям.
- Создать три сценария планирования и регулярно сравнивать.
- Доработать заявки на расход ДС полем «НДС к вычету».
- Настроить регламентное задание ежедневного контроля разрыва.
- Внедрить факторный анализ план/факт с разбором отклонений.
- Связать ERP с бухгалтерией через HTTP-сервис для актуального сальдо НДС.
Полное внедрение всех восьми фишек занимает 3–5 недель силами одного консультанта и одного программиста. ROI наступает уже в первом квартале за счёт снижения процентных платежей по овердрафтам.
Часто задаваемые вопросы
Можно ли внедрить эти фишки без обновления конфигурации?
Да, фишки 1, 2, 3, 4 и 7 — это типовой функционал 1С:ERP версии 2.4 и выше. Фишки 5, 6 и 8 требуют небольших доработок: добавления реквизитов, регламентных заданий и HTTP-сервиса. Объём — около 40–60 часов программиста.
Сколько стоит внедрение БДДС в 1С:ERP?
Базовая настройка под контроль НДС — от 80 000 до 250 000 руб. в зависимости от количества организаций, статей ДДС и интеграций. Найти исполнителя можно через сервис поиск разработчика 1С.
Подходит ли подход для УСН без НДС?
Большинство фишек универсальны (платёжный календарь, лимиты, сценарии). Специфичные для НДС (1, 5, 8) теряют смысл, но их можно адаптировать под УСН-доходы или авансовые платежи по налогу на прибыль.
Как часто пересчитывать прогноз НДС?
Минимум раз в неделю в первом и втором месяце квартала, ежедневно — в последние 14 дней перед сдачей декларации. При автоматизации через HTTP-сервис пересчёт идёт онлайн.
Можно ли использовать БДДС в 1С:ERP для группы компаний?
Да, подсистема поддерживает мультифирменность. Для холдинга важно задать «Внутригрупповые расчёты» как отдельную статью ДДС, иначе платёжный календарь будет искажён внутренними переводами между юрлицами.
Что делать, если разрыв уже произошёл?
Краткосрочно: овердраф
Найдите специалиста для решения этой задачи на koderion.ru