Скидки — неотъемлемая часть торговли, но их оформление в 1С:Предприятие часто вызывает вопросы у пользователей. Ошибки при настройке могут привести к искажению финансовой отчётности, конфликтам с клиентами или даже штрафам при проверках. Эта статья поможет разобраться, как правильно сделать скидку в разных конфигурациях : от ручного ввода в документе до создания сложных правил для автоматического применения.

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

Если вы работаете с 1С:Управление торговлей, 1С:Розница или 1С:Бухгалтерия, здесь найдёте актуальные инструкции с учётом последних обновлений платформы. А для программистов и администраторов приведём примеры кода, которые помогут автоматизировать процесс.

1. Виды скидок в 1С: когда и какие использовать

Прежде чем настраивать скидку, важно определить её тип. В доступно несколько механизмов, каждый из которых подходит для разных бизнес-задач. Ошибка на этом этапе может привести к тому, что скидка либо не применится, либо будет действовать некорректно.

Основные виды скидок в системе:

  • 📌 Ручные скидки — вводятся непосредственно в документе (заказ клиента, реализация). Подходят для разовых акций или индивидуальных предложений.
  • 🔄 Автоматические скидки по правилам — настраиваются заранее и применяются при выполнении условий (например, скидка 10% при покупке от 5 000 ₽).
  • 👥 Персональные скидки для клиентов — привязываются к конкретным контрагентам или группам (например, оптовикам).
  • 📅 Сезонные или временные скидки — действуют в определённый период (распродажи, чёрная пятница).
  • 🛒 Накопительные скидки — зависят от истории покупок клиента (например, скидка 5% после 10 заказов).

В 1С:Управление торговлей 11 и 1С:Розница также доступны динамические скидки, которые рассчитываются по формулам. Например, можно настроить скидку, которая уменьшается по мере роста суммы заказа: чем больше покупатель тратит, тем меньше процент скидки.

А в 1С:Бухгалтерия 8.3 механизм скидок упрощён — здесь они обычно оформляются как корректировка цены в документе или через дополнительные соглашения с клиентами.

⚠️ Внимание: В некоторых конфигурациях (например, 1С:ERP) скидки могут влиять на расчёт себестоимости и маржинальности. Перед массовым применением проверьте настройки учёта в разделе Администрирование → Настройки параметров учёта.

2. Как сделать ручную скидку в документе

Самый простой способ — ввести скидку непосредственно в документ Заказ клиента или Реализация товаров и услуг. Этот метод подходит для разовых акций или когда нужно оперативно предоставить клиенту индивидуальное предложение.

Пошаговая инструкция для 1С:Управление торговлей 11.4:

  1. Откройте документ Заказ клиента (или Реализация товаров и услуг).
  2. В табличной части с товарами найдите колонку Цена или Сумма.
  3. Щёлкните правой кнопкой мыши по ячейке с ценой и выберите Изменить цену и скидку (в некоторых версиях — Редактировать скидку).
  4. В открывшемся окне укажите процент или фиксированную сумму скидки. Например, введите 15% или 300 ₽.
  5. Нажмите ОК — система автоматически пересчитает итоговую сумму документа.

В 1С:Розница 2.3 процесс аналогичен, но вместо Заказа клиента скидка может вводиться прямо в Чеке ККМ на этапе оформления продажи.

Проверить права пользователя на редактирование цен

Убедиться, что документ не проведён (иначе изменения не сохранятся)

Сверить итоговую сумму скидки с условиями акции

Сохранить документ после изменений-->

Если скидка должна применяться ко всему документу, а не к отдельным позициям, используйте кнопку Скидки/Наценки в шапке документа. Здесь можно указать общий процент или сумму, которая будет распределена пропорционально по всем товарам.

⚠️ Внимание: Ручные скидки не фиксируются в истории клиента и не учитываются в отчётах по маркетингу. Если вам важно отслеживать эффективность акций, лучше использовать автоматические правила (см. следующий раздел).

3. Настройка автоматических скидок по правилам

Автоматические скидки экономят время и исключают ошибки при ручном вводе. Они настраиваются один раз и применяются ко всем документам, соответствующим условиям. Например, можно создать правило: "Скидка 10% для оптовиков при покупке от 10 000 ₽".

Рассмотрим настройку на примере 1С:Управление торговлей 11:

  1. Перейдите в раздел Маркетинг → Скидки (наценки).
  2. Нажмите Создать и выберите тип Скидка (наценка).
  3. Заполните основные поля:
    • Наименование — например, "Оптовая скидка 10%".
    • Тип скидки — выберите Процентная или Суммовая.
    • Значение — укажите размер скидки (например, 10%).
  • Перейдите на вкладку Условия и настройте фильтры:
    • 🛍️ Товары — выберите конкретные позиции или группы (например, "Электроника").
    • 👤 Контрагенты — укажите клиентов или сегменты (например, "Оптовики").
    • 💰 Сумма документа — установите порог (например, "от 10 000 ₽").
    • 📅 Период действия — ограничьте даты (например, с 01.11.2026 по 30.11.2026).
    • Сохраните правило и установите флаг Активна.
    • Теперь при оформлении заказа система автоматически применит скидку, если условия выполняются. Например, если оптовик купит товаров на 15 000 ₽, то в документе появится строка скидки на 10%.

      Ручную (ввожу в документе)

      Автоматическую (по правилам)

      Персональную (для постоянных клиентов)

      Сезонную (акции, распродажи)-->

      В 1С:Розница настройка автоматических скидок аналогична, но правила могут дополнительно привязываться к типам цен (например, "Розничная", "Оптовая"). Это полезно, если у вас несколько прайс-листов для разных категорий клиентов.

      4. Персональные скидки для клиентов

      Персональные скидки позволяют гибко работать с постоянными клиентами, предлагая им индивидуальные условия. Например, вы можете предоставить постоянному покупателю скидку 5% на все товары или специальные условия для VIP-клиентов.

      Чтобы настроить персональную скидку в 1С:Управление торговлей:

      1. Откройте карточку клиента: Справочники → Контрагенты.
      2. Перейдите на вкладку Скидки (наценки).
      3. Нажмите Добавить и выберите тип скидки (процентная или суммовая).
      4. Укажите размер скидки и, при необходимости, ограничения:
        • 📦 Товары — для каких категорий действует скидка.
        • 📅 Срок действия — период, в который скидка активна.
        • 💳 Тип оплаты — например, только при безналичном расчёте.
    • Сохраните изменения.
    • Теперь при оформлении заказа для этого клиента система автоматически применит его персональную скидку. Если у клиента несколько скидок (например, оптовая + персональная), они могут суммироваться или применяться по приоритету — это настраивается в параметрах правила.

      В 1С:Розница персональные скидки часто привязываются к дисконтным картам. Для этого:

      1. Создайте новую дисконтную карту: Справочники → Дисконтные карты.
      2. Укажите процент скидки и привяжите карту к клиенту.
      3. При продаже через кассу достаточно просканировать карту — скидка применится автоматически.
      ⚠️ Внимание: Если персональные скидки не применяются, проверьте:
      1. Активна ли скидка в карточке клиента?
      2. Не конфликтует ли она с другими правилами (например, оптовой скидкой)?
      3. Правильно ли указан Тип цен в документе?

      5. Сезонные и временные скидки

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

      Пример настройки скидки на "Чёрную пятницу" в 1С:Управление торговлей:

      1. Создайте новое правило скидки: Маркетинг → Скидки (наценки) → Создать.
      2. Укажите название, например, "Чёрная пятница — 30%".
      3. На вкладке Условия установите:
        • Период действия — с 25.11.2026 по 29.11.2026.
        • Товары — выберите категории, участвующие в акции (например, "Бытовая техника").
        • Максимальная скидка — ограничьте сумму, если нужно (например, не более 5 000 ₽ на один чек).
    • На вкладке Дополнительно можно указать Приоритет (если действуют несколько скидок одновременно).
    • Сохраните и активируйте правило.
    • Для удобства отслеживания таких акций в есть отчёт Монитор скидок (Маркетинг → Отчёты по маркетингу). Здесь можно увидеть, сколько раз применялась скидка, на какую сумму и какой эффект она дала.

      В 1С:Розница сезонные скидки часто настраиваются через ценовые группы. Например, можно создать временную ценовую группу "Акция — Новый год" и привязать её к товарам на определённый период.

      Что делать, если скидка не применяется в нужный период?

      Проверьте настройки времени на сервере 1С — иногда расхождение в датах приводит к сбоям.

      Убедитесь, что в документе указана правильная дата (а не дата создания).

      Если скидка привязана к времени суток (например, "с 10:00 до 12:00"), проверьте системное время на рабочем месте кассира.

      6. Накопительные скидки и бонусные программы

      Накопительные скидки стимулируют клиентов делать повторные покупки. В их можно реализовать через бонусные программы или дисконтные карты с накоплением. Рассмотрим оба варианта.

      Вариант 1: Бонусные программы (доступно в 1С:Управление торговлей 11 и 1С:Розница 2.3):

      1. Перейдите в Маркетинг → Бонусные программы.
      2. Создайте новую программу, например, "Накопительная скидка 5% после 10 покупок".
      3. Настройте условия накопления:
        • 🛒 За что начисляются бонусы — за сумму чека или количество покупок.
        • 💳 Как списываются бонусы — автоматически или по запросу клиента.
        • 📅 Срок действия бонусов — например, 1 год.
    • Укажите правила конвертации бонусов в скидку (например, 1 бонус = 1 ₽).
    • Привяжите программу к клиентам или дисконтным картам.

    Вариант 2: Дисконтные карты с накоплением (подходит для 1С:Розница):

    1. Создайте новый тип дисконтной карты: Справочники → Типы дисконтных карт.
    2. Выберите механизм накопления: процент от суммы покупок или фиксированные баллы.
    3. Настройте пороги для перехода на новый уровень скидки (например, "Серебряный клиент" после 50 000 ₽ покупок).
    4. Выдайте карту клиенту и привяжите её к его профилю.
    5. Для отслеживания эффективности таких программ используйте отчёты:

      • 📊 Анализ бонусных программ — показывает, сколько клиентов участвует и как часто они используют бонусы.
      • 📈 Динамика продаж по дисконтным картам — помогает оценить рост лояльности.
      ⚠️ Внимание: Накопительные скидки могут конфликтовать с другими маркетинговыми акциями. Например, если у клиента действует персональная скидка 10% и он получает ещё 5% по бонусной программе, итоговая скидка может превысить допустимый лимит. Чтобы избежать этого, настройте Максимальную скидку в параметрах правила.

      7. Проверка и исправление ошибок со скидками

      Даже опытные пользователи сталкиваются с проблемами при работе со скидками. Рассмотрим типичные ошибки и способы их устранения.

      Проблема 1: Скидка не применяется

      • 🔍 Проверьте, активна ли скидка в справочнике (Маркетинг → Скидки).
      • 📅 Убедитесь, что текущая дата попадает в период действия.
      • 👥 Сверьте, что клиент или товар соответствуют условиям правила.
      • 💰 Проверьте, не превышен ли лимит скидки (например, максимальная сумма 5 000 ₽).

      Проблема 2: Скидка применяется дважды

      • 🔄 Посмотрите приоритеты скидок в настройках (Маркетинг → Настройки маркетинга).
      • 🚫 Отключите конфликтующие правила или настройте исключения.

    Проблема 3: Неверный расчёт скидки

    • 🧮 Проверьте формулу расчёта в настройках скидки (например, скидка может считаться от базовой цены или от цены с учётом предыдущих скидок).
    • 📝 Убедитесь, что в документе указан правильный Тип цен.
    • Если ошибка повторяется, используйте журнал регистрации (Администрирование → Журнал регистрации) для поиска причин. Отфильтруйте записи по ключевому слову Скидка или Ценообразование.

      Для сложных случаев (например, когда скидки не работают в 1С:ERP) может потребоваться проверка последовательности применения правил. В этом случае обратитесь к администратору или используйте отладчик для анализа кода.

      💡

      Если скидка должна действовать только для определённого склада или магазина, добавьте это условие в настройках правила. Например, в Условиях укажите Склад = "Магазин на Ленина, 10".

      8. Автоматизация скидок через программирование

      Для сложных бизнес-процессов стандартных механизмов может быть недостаточно. В этом случае скидки настраиваются через внешние обработки или программный код. Рассмотрим два примера.

      Пример 1: Скидка в зависимости от времени суток

      Допустим, вы хотите предоставить скидку 15% на кофе с 14:00 до 16:00. Для этого можно создать обработку, которая будет проверять время при проведении документа.

      
      

      Процедура ПриЗаписи(Отказ)

      ТекущееВремя = ТекущаяДата();

      Если ТекущееВремя >= НачалоДня() + 14*3600 И ТекущееВремя <= НачалоДня() + 16*3600 Тогда

      Для Каждого Строка Из Товары Цикл

      Если Строка.Номенклатура.Группа = Справочники.Номенклатура.НайтиПоНаименованию("Кофе") Тогда

      Строка.Цена = Строка.Цена * 0.85; // Скидка 15%

      КонецЕсли;

      КонецЦикла;

      КонецЕсли;

      КонецПроцедуры

      Пример 2: Динамическая скидка по истории покупок

      Если нужно предоставить скидку клиентам, которые купили товар ранее, можно использовать следующий код:

      
      

      Процедура РассчитатьСкидкуПоИстории(Клиент, Товары)

      Запрос = Новый Запрос;

      Запрос.Текст =

      "ВЫБРАТЬ СУММА(Количество) КАК ОбщееКоличество

      ИЗ Документ.РеализацияТоваровУслуг.Товары КАК Товары

      ГДЕ Товары.Клиент = &Клиент

      И Товары.Номенклатура = &Товар";

      Для Каждого Товар Из Товары Цикл

      Запрос.УстановитьПараметр("Клиент", Клиент);

      Запрос.УстановитьПараметр("Товар", Товар.Номенклатура);

      Результат = Запрос.Выполнить();

      Если НЕ Результат.Пустой() Тогда

      КоличествоПокупок = Результат.Получить(0).ОбщееКоличество;

      Если КоличествоПокупок >= 3 Тогда

      Товар.Цена = Товар.Цена * 0.9; // Скидка 10% за 3 покупки

      КонецЕсли;

      КонецЕсли;

      КонецЦикла;

      КонецПроцедуры

      Для интеграции такого кода в систему:

      1. Создайте внешнюю обработку в Конфигураторе.
      2. Подключите её к документу Заказ клиента через событие ПередЗаписью.
      3. Протестируйте на копии базы, чтобы избежать ошибок в рабочей системе.
    ⚠️ Внимание: При программной настройке скидок всегда проверяйте:
    • 🔒 Права доступа пользователей к изменению цен.
    • 📊 Корректность отражения скидок в отчётах (например, в Валовой прибыли).
    • 🔄 Совместимость с другими обработками (например, с модулем Ценообразование).
    💡

    Программные скидки позволяют реализовать уникальную логику, но требуют тестирования. Всегда создавайте резервную копию базы перед внесением изменений в конфигурацию.

    FAQ: Ответы на частые вопросы

    Как сделать скидку на весь заказ в 1С:Розница?

    В документе Чек ККМ нажмите кнопку Скидки/Наценки в шапке. Выберите тип скидки (процент или сумма) и укажите значение. Скидка распределится пропорционально по всем позициям в чеке.

    Если нужно, чтобы скидка применялась только к определённым товарам, отметьте их в табличной части и используйте контекстное меню (Изменить цену и скидку).

    Почему в 1С:УТ не работает автоматическая скидка?

    Причин может быть несколько:

    • 🔕 Скидка не активирована (проверьте флаг Активна в карточке правила).
    • 📅 Истёк период действия (сверьте даты в настройках).
    • 👥 Клиент или товар не подходят под условия (проверьте фильтры в правиле).
    • 🔄 Конфликт с другими скидками (настройте приоритеты в Маркетинг → Настройки маркетинга).
    • Также убедитесь, что в документе указан правильный Тип цен — некоторые скидки действуют только для определённых типов (например, "Розничная").

    Можно ли в 1С сделать скидку по промокоду?

    Да, но стандартных механизмов для промокодов в базовых конфигурациях нет. Варианты решения:

    1. 🔧 Доработка конфигурации: Создайте справочник Промокоды и свяжите его с документами через внешнюю обработку.
    2. 🛠️ Использование расширений: В 1С:УТ или 1С:Розница можно подключить готовые решения (например, "Промокоды для 1С" от партнёров).
    3. 📝 Ручной ввод: Создайте скидку с условием "Комментарий содержит промокод" и требуйте от оператора указывать код в поле Комментарий документа.

    Для 1С:Бухгалтерия 8.3 промокоды обычно реализуются через дополнительные соглашения с клиентами.

    Как отменить скидку в уже проведённом документе?

    Если документ проведён, есть два способа:

    1. 🔄 Сторнирование: Создайте документ Корректировка реализации с отрицательным количеством и укажите правильную цену без скидки.
    2. 📝 Исправительный документ: Оформите новый документ Реализация товаров с правильной ценой и проведите его с датой оригинального документа.

    В 1С:Розница для чеков ККМ отмена скидки возможна только через Возврат товара с последующим оформлением нового чека.

    ⚠️ Внимание: Исправление проведённых документов может повлиять на отчётность. Перед изменениями проконсультируйтесь с бухгалтером.
    Где в 1С посмотреть историю применённых скидок?

    Для анализа используйте отчёты:

    • 📊 Монитор скидок (Маркетинг → Отчёты по маркетингу) — показывает, какие скидки и как часто применялись.
    • 📈 Анализ продаж по скидкам — помогает оценить эффективность акций.
    • 🔍 Журнал регистрации (Администрирование → Журнал регистрации) — фильтруйте записи по ключевому слову Скидка.

    В 1С:Розница также полезен отчёт Продажи по дисконтным картам — он показывает, как клиенты используют персональные скидки.