В системе 1С:Предприятие термин «соглашение» встречается в разных контекстах — от договоров с контрагентами до внутренних правил учета. Однако не все пользователи понимают, чем соглашение отличается от договора, когда его нужно создавать и как правильно настроить. Эта статья поможет разобраться в нюансах: мы объясним, что такое соглашения в 1С, зачем они нужны, какие бывают виды и как избежать типичных ошибок при работе с ними.
Особенно актуальна тема для бухгалтеров, финансовых директоров и администраторов 1С, которые сталкиваются с необходимостью гибко настраивать условия взаимодействия с партнерами. Например, соглашение может определять порядок расчетов, скидки, графики платежей или даже специфические правила учета для определенной группы контрагентов. Без правильной настройки соглашений рискуете получить искаженную отчетность или конфликты с партнерами из-за неверно примененных условий.
В этой статье вы найдете не только теорию, но и практические примеры, а также пошаговые инструкции по настройке соглашений в 1С:Бухгалтерия 8 и 1С:Управление торговлей. А если вы программист 1С, то узнаете, как работать с соглашениями через встроенный язык.
Что такое соглашение в 1С и чем оно отличается от договора
В 1С:Предприятие соглашение — это документ или настройка, которая фиксирует правила взаимодействия с контрагентом, группой контрагентов или даже внутренние правила компании. В отличие от договора, который обычно привязан к конкретному юридическому лицу и имеет номер/дату, соглашение может быть более универсальным.
Например:
- 📄 Договор — это конкретный документ с контрагентом «ООО Ромашка» на поставку товара №123 от 01.01.2026.
- 📋 Соглашение — это набор условий, которые применяются ко всем договорам с розничными покупателями (например, «Скидка 5% при оплате в течение 3 дней»).
Главное отличие:
| Параметр | Договор | Соглашение |
|---|---|---|
| Привязка к контрагенту | Да, конкретный | Может быть общий для группы |
| Юридическая сила | Имеет (подписывается сторонами) | Нет (внутренний регламент) |
| Где используется | В документах (заказы, счета) | В настройках учета, скидках, графиках платежей |
| Изменяемость | Требует согласования с партнером | Можно редактировать самостоятельно |
В некоторых конфигурациях (например, 1С:Управление торговлей 11) соглашения используются для управления ценовыми политиками, условиями оплаты или логистикой. Например, можно создать соглашение «Оптовые покупатели», где прописать специальные цены и график отгрузок, а затем привязать к нему нескольких контрагентов.
Виды соглашений в 1С и где они применяются
В зависимости от конфигурации 1С соглашения могут иметь разное назначение. Рассмотрим основные типы:
1. Соглашения по расчетам с контрагентами
Используются для фиксации условий оплаты: сроки, валюта, порядок погашения задолженности. Часто применяются в 1С:Бухгалтерия 8 и 1С:ERP.
- 💰 График платежей — например, «30% предоплата, 70% после отгрузки».
- 📅 Отсрочка платежа — «Оплата в течение 45 дней с даты отгрузки».
- 💱 Валюта расчетов — соглашение может привязывать контрагента к определенной валюте (доллары, евро).
2. Ценовые соглашения
Актуальны для 1С:Управление торговлей и 1С:Розница. Позволяют назначать специальные цены для групп клиентов:
- 🛒 Оптовые скидки — например, «при заказе от 100 000 руб. скидка 10%».
- 🎁 Акционные предложения — «скидка 15% на товар группы «Электроника» до 31.12.2026».
- 📊 Персональные цены — индивидуальные условия для VIP-клиентов.
3. Логистические соглашения
Регулируют условия доставки и работы с транспортными компаниями. Например:
- 🚛 Минимальная сумма заказа для бесплатной доставки.
- 📦 Правила упаковки (например, «хрупкие товары упаковывать в гофрокороб»).
- ⏳ Сроки отгрузки («отгрузка в течение 3 рабочих дней»).
4. Внутренние соглашения
Используются для регламентации внутрикорпоративных процессов:
- 📝 Правила утверждения документов (например, «заказы свыше 500 000 руб. согласовывает финансовый директор»).
- 🔄 Порядок инвентаризации.
- 💼 Политика работы с дебиторской задолженностью.
В некоторых отраслевых решениях (например, 1С:Управление холдингом) соглашения могут регулировать даже межфирменные взаимодействия внутри группы компаний.
Если в вашей базе много однотипных договоров с похожими условиями (например, с розничными покупателями), замените их одним соглашением. Это сократит время на ввод данных и уменьшит риск ошибок.
Как создать и настроить соглашение в 1С: пошаговая инструкция
Рассмотрим процесс на примере 1С:Управление торговлей 11 (ред. 11.5). В других конфигурациях (1С:Бухгалтерия 8, 1С:ERP) шаги могут незначительно отличаться, но общая логика сохраняется.
Шаг 1. Открыть справочник соглашений
Перейдите в раздел НСИ и администрирование → Справочники → Соглашения с контрагентами (или Ценовые соглашения, если нужно настроить скидки).
Шаг 2. Создать новое соглашение
Нажмите Создать и заполните основные поля:
- 📌 Наименование — например, «Оптовые покупатели (скидка 10%)».
- 📅 Дата начала/окончания — если соглашение временное (например, акция).
- 👥 Контрагенты — выберите конкретных партнеров или группу (например, «Все оптовики»).
Шаг 3. Настроить условия
В зависимости от типа соглашения заполните соответствующие вкладки:
- 💰 Расчеты — укажите график платежей, валюту, порядок погашения задолженности.
- 🛒 Цены и скидки — назначьте специальные цены или правила наценки.
- 🚛 Доставка — пропишите условия логистики.
Шаг 4. Сохранить и привязать к документам
После сохранения соглашение можно привязать к:
- 📄 Договорам — в карточке договора выберите созданное соглашение.
- 🛒 Заказам клиентов — при оформлении заказа укажите соглашение в соответствующем поле.
- 📊 Ценовым группам — если соглашение регулирует цены.
☑️ Проверка перед сохранением соглашения
Если соглашение не применяется автоматически, проверьте:
⚠️ Внимание: В некоторых конфигурациях нужно дополнительно включить флаг «Использовать соглашения» в настройках параметров учета (Администрирование → Настройки программы → Расчеты с контрагентами).
Типичные ошибки при работе с соглашениями и как их избежать
Неправильная настройка соглашений может привести к искажению отчетности, конфликтам с контрагентами или потере прибыли из-за неверно примененных скидок. Рассмотрим самые распространенные ошибки.
1. Несоответствие дат действия соглашения
Если соглашение действовало до 31.12.2023, но его забыли продлить, то с 01.01.2026 условия перестанут применяться автоматически. Это может привести к:
- 💸 Потере скидок для постоянных клиентов.
- 📉 Неправильному расчету цен в заказах.
- ⚖️ Спору с контрагентом из-за измененных условий.
Как избежать: Настройте напоминание в 1С о завершении действия соглашения (Администрирование → Настройки → Напоминания).
2. Неправильная привязка к контрагентам
Частая ошибка — привязать соглашение не к той группе контрагентов. Например, соглашение «Оптовые скидки» по ошибке применяется к розничным покупателям.
Как проверить: Откройте соглашение и на вкладке «Контрагенты» убедитесь, что выбраны правильные партнеры или группы.
3. Конфликт условий между соглашениями
Если у одного контрагента действует несколько соглашений (например, одно дает скидку 10%, а другое — 15%), 1С может применять их некорректно. Приоритет обычно определяется:
- 📅 Датой создания (последнее по времени имеет приоритет).
- 🔢 Приоритетом, заданным вручную в настройках соглашения.
Как исправить: В карточке соглашения установите правильный приоритет или отключите конфликтующие условия.
4. Неучтенные изменения в соглашении
Если вы изменили условия соглашения (например, уменьшили скидку с 15% до 10%), то новые правила применятся только к новым документам. Уже созданные заказы или счета останутся с прежними условиями.
Решение: При изменении соглашения проверьте, нужно ли вручную пересчитать старые документы (например, через обработку «Групповое изменение реквизитов»).
⚠️ Внимание: В конфигурациях с включенным контролем версий (например, 1С:ERP) изменения в соглашениях могут требовать утверждения. Проверьте настройки прав доступа, чтобы избежать блокировки документов.
Как программировать соглашения в 1С: примеры кода
Если стандартных возможностей 1С недостаточно, можно управлять соглашениями через встроенный язык. Рассмотрим несколько практических примеров.
1. Создание соглашения программно
Чтобы создать соглашение с контрагентом через код, используйте следующий шаблон:
НовоеСоглашение = Справочники.СоглашенияСКонтрагентами.СоздатьЭлемент();
НовоеСоглашение.Наименование = "Оптовое соглашение для ООО Вега";
НовоеСоглашение.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("ООО Вега");
НовоеСоглашение.ДатаНачала = ТекущаяДата();
НовоеСоглашение.ДатаОкончания = ТекущаяДата() + 365; // Действует 1 год
НовоеСоглашение.УсловияОплаты = "30% предоплата, 70% после отгрузки";
НовоеСоглашение.Записать();
2. Поиск соглашений по контрагенту
Чтобы найти все действующие соглашения для конкретного контрагента:
Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("ООО Альфа");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| СоглашенияСКонтрагентамиСрезПоследних.Ссылка КАК Соглашение
|ИЗ
| РегистрСведений.СоглашенияСКонтрагентами.СрезПоследних КАК СоглашенияСКонтрагентамиСрезПоследних
|ГДЕ
| СоглашенияСКонтрагентамиСрезПоследних.Контрагент = &Контрагент
| И СоглашенияСКонтрагентамиСрезПоследних.ДатаОкончания >= &ТекущаяДата";
Запрос.УстановитьПараметр("Контрагент", Контрагент);
Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Сообщить("Найдено соглашение: " + Выборка.Соглашение);
КонецЦикла;
3. Применение скидки из соглашения в документе
Чтобы автоматически подставить скидку из соглашения в заказ клиента:
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если НЕ ЗначениеЗаполнено(Объект.Соглашение) Тогда
// Ищем соглашение по контрагенту
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
| СоглашенияСКонтрагентами.Скидка КАК Скидка
|ИЗ
| Справочник.СоглашенияСКонтрагентами КАК СоглашенияСКонтрагентами
|ГДЕ
| СоглашенияСКонтрагентами.Контрагент = &Контрагент
| И СоглашенияСКонтрагентами.ДатаНачала <= &Дата
| И СоглашенияСКонтрагентами.ДатаОкончания >= &Дата";
Запрос.УстановитьПараметр("Контрагент", Объект.Контрагент);
Запрос.УстановитьПараметр("Дата", Объект.Дата);
Результат = Запрос.Выполнить();
Если НЕ Результат.Пустой() Тогда
Выборка = Результат.Выбрать();
Выборка.Следующий();
Объект.Скидка = Выборка.Скидка;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
⚠️ Внимание: При работе с соглашениями через код учитывайте, что в разных конфигурациях 1С могут использоваться разные регистры сведений (например,СоглашенияСКонтрагентамиилиЦеновыеСоглашения). Перед использованием кода проверьте структуру метаданных в вашей базе.
Соглашения в отчетности: как они влияют на бухгалтерию и налоги
Соглашения напрямую влияют на финансовую отчетность, налоговый учет и управленческую аналитику. Рассмотрим ключевые аспекты.
1. Влияние на дебиторскую и кредиторскую задолженность
Если в соглашении прописан график платежей, то 1С будет автоматически распределять оплаты по срокам. Это важно для:
- 📊 Отчета по старению задолженности (показывает, какие платежи просрочены).
- 💼 Резервов по сомнительным долгам (в бухгалтерском и налоговом учете).
Например, если по соглашению оплата должна поступить в течение 60 дней, а фактически просрочена на 90 дней, 1С отразит это в отчете Анализ задолженности по срокам.
2. Учет скидок и их налоговые последствия
Скидки, заданные в соглашениях, влияют на:
- 💰 Выручку (уменьшается на сумму скидки).
- 📋 НДС (налоговая база рассчитывается с учетом скидки).
- 📈 Прибыль (уменьшается на сумму предоставленных скидок).
Важно: В налоговом учете скидки учитываются только при соблюдении условий ст. 40 НК РФ (они должны быть экономически обоснованны).
3. Аналитика по соглашениям
С помощью соглашений можно строить гибкую аналитику:
- 📊 Прибыльность по группам клиентов (например, сравнить маржу по оптовым и розничным соглашениям).
- 🔄 Эффективность акций (проанализировать, как изменились продажи после введения скидки).
- 🚀 Лояльность клиентов (отследить, какие соглашения приводят к повторным заказам).
Для этого используйте отчеты:
Анализ продаж по соглашениям(в 1С:Управление торговлей).Прибыли и убыткис разрезом по соглашениям.Движение денежных средствпо графикам платежей.
Соглашения позволяют не только автоматизировать рутинные операции, но и получить детальную аналитику по работе с клиентами. Без них сложно оценить эффективность скидок, акций или изменений в условиях оплаты.
Интеграция соглашений с другими системами
Если ваша компания использует не только 1С, но и другие системы (например, CRM, WMS, интернет-магазин), важно обеспечить синхронизацию соглашений. Рассмотрим основные сценарии.
1. Синхронизация с CRM (Bitrix24, amoCRM)
Чтобы соглашения из 1С отображались в CRM, настройте обмен данными:
- 🔄 Выгрузка соглашений — передавайте в CRM условия скидок, графики платежей.
- 📊 Обратная связь — если менеджер в CRM изменил условия для клиента, они должны обновиться в 1С.
Для этого можно использовать:
- 🔌 Стандартные обработки обмена (например,
ВыгрузкаВBitrix24.epf). - 🤖 Собственные правила обмена через 1С:Коннектор или 1С:Интеграция.
2. Обмен с интернет-магазином (1С-Битрикс, Shopify)
Если у вас есть онлайн-витрина, соглашения помогут:
- 🛒 Назначить персональные цены для зарегистрированных пользователей.
- 🎁 Применить скидки по промокодам (если промокод привязан к соглашению).
- 🚚 Показать условия доставки (например, «бесплатная доставка при заказе от 5 000 руб.»).
Для синхронизации используйте:
- 🔄 Стандартный обмен через 1С:Управление сайтом.
- 📡 REST API (если нужно кастомное решение).
3. Работа с WMS (складскими системами)
Соглашения могут влиять на логистику:
- 📦 Приоритет отгрузки (например, VIP-клиенты отгружаются в первую очередь).
- 🚛 Правила комплектации (для некоторых соглашений нужна специальная упаковка).
Для интеграции с WMS (например, 1С:WMS Логистика) настройте:
- 📋 Выгрузку соглашений как дополнительных реквизитов заказа.
- 🔄 Обратный статус (например, если WMS не может выполнить условие соглашения, нужно уведомить менеджера).
⚠️ Внимание: При настройке интеграции проверьте, чтобы условия соглашений не конфликтовали с бизнес-логикой внешних систем. Например, если в 1С прописана скидка 15%, а в CRM — 10%, нужно определить приоритет.
FAQ: ответы на частые вопросы о соглашениях в 1С
Можно ли привязать одно соглашение к нескольким контрагентам?
Да, в большинстве конфигураций (1С:Управление торговлей, 1С:ERP) соглашение можно привязать как к конкретному контрагенту, так и к группе (например, «Все оптовики» или «Клиенты из Москвы»). Для этого при создании соглашения на вкладке «Контрагенты» выберите нужную группу из справочника.
Как проверить, какое соглашение применяется к конкретному заказу?
Откройте заказ клиента и посмотрите поле «Соглашение» (обычно находится на вкладке «Дополнительно» или «Условия»). Если поле пустое, значит, применяются стандартные условия без соглашения. Также можно воспользоваться отчетом Анализ применения соглашений (если он есть в вашей конфигурации).
Что делать, если соглашение перестало работать после обновления 1С?
После обновления конфигурации могут измениться:
- 📝 Структура справочников (например, поле «Скидка» переименовали в «ПроцентСкидки»).
- 🔧 Логика применения соглашений (например, теперь нужно явно указывать приоритет).
Решение:
- Проверьте описание изменений в новой версии.
- Сравните настройки соглашения до и после обновления (можно воспользоваться обработкой
СравнениеКонфигураций.epf). - Если соглашение критично, восстановите его из резервной копии или перенастройте вручную.
Как массово изменить условия во всех соглашениях?
Для массового изменения используйте:
- Обработку «Групповое изменение реквизитов» (
Администрирование → Обслуживание → Групповое изменение). - Запрос с последующей записью (для программистов). Пример кода:
Запрос = Новый Запрос;Запрос.Текст = "ВЫБРАТЬ СоглашенияСКонтрагентами.Ссылка КАК Ссылка
|ИЗ Справочник.СоглашенияСКонтрагентами КАК СоглашенияСКонтрагентами";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Соглашение = Выборка.Ссылка.ПолучитьОбъект();
Соглашение.Скидка = 15; // Новое значение скидки
Соглашение.Записать();
КонецЦикла;
⚠️ Перед массовым изменением обязательно сделайте резервную копию базы!
Можно ли в соглашении прописать индивидуальные условия для каждого товара?
Да, в некоторых конфигурациях (например, 1С:Управление торговлей 11) можно создать ценовые соглашения с детализацией по номенклатуре. Для этого:
- Создайте соглашение типа «Ценовое».
- На вкладке «Товары» укажите конкретные позиции и условия (цена, скидка).
- При оформлении заказа система автоматически подтянет условия для указанных товаров.
Если такой функционал не предусмотрен, можно доработать конфигурацию или использовать обработку для массового назначения цен.