К статье
Практический материал

Учет и Финансы · 12 мин

Как сделать проценты в 1С: практическое руководство

Как начислить и рассчитать проценты в 1С: скидки и наценки в процентах, НДС, проценты по кредитам, формулы в запросах и отчётах. Пошаговые инструкции для 1С:Предприятие 8.3.

Под «процентами в 1С» пользователи обычно понимают несколько разных задач: установить скидку или наценку в процентах в документе продажи, рассчитать НДС по ставке, начислить проценты по кредиту или займу, а также вычислить процентное соотношение показателей в отчёте или в коде на встроенном языке. Каждая из этих задач решается своим инструментом, и универсальной кнопки «посчитать процент» в программе нет.

В типовых конфигурациях (1С:Бухгалтерия, Управление торговлей, Комплексная автоматизация, ERP) процентные расчёты уже встроены в документы и обработки. Пользователю остаётся правильно указать ставку или размер скидки, а программа сама пересчитает суммы. Если же требуется нестандартный расчёт — например, сложная система бонусов или процент в произвольном отчёте, — потребуется настройка через механизм скидок, формулы показателей или доработка конфигурации.

Ниже разобраны основные сценарии работы с процентами: от простой скидки в чеке до формул в запросах. Инструкции ориентированы на платформу 1С:Предприятие 8.3 и типовые конфигурации; в отраслевых решениях названия команд могут отличаться, но логика сохраняется.

Скидки и наценки в процентах в документах продажи

Самая частая задача — назначить процентную скидку в документе «Реализация товаров и услуг» или «Заказ клиента». В конфигурациях с торговым функционалом (УТ 11, КА 2, ERP) сначала проверьте, что механизм скидок включён: раздел «НСИ и администрирование» → «CRM и маркетинг» (или «Продажи») → установите флаг «Скидки (наценки)». Без этого флага соответствующие команды в документах будут скрыты.

Для разовой ручной скидки откройте документ, выделите строки товаров и в меню табличной части выберите команду «Скидки (наценки)» → «Назначить ручную скидку» (в некоторых конфигурациях — кнопка «Изменить» или «Цены и скидки»). Укажите процент, например 10, и программа пересчитает суммы по выделенным строкам. Если выделить всю табличную часть, скидка применится ко всему документу.

Наценка работает аналогично, но со знаком минус: в поле процента скидки укажите отрицательное значение (например, -5), и сумма строки увеличится на 5%. Учтите, что в ряде конфигураций ручная наценка через этот механизм может быть заблокирована настройками — тогда изменение цены делается прямой правкой колонки «Цена» в строке.

Как назначить процентную скидку в документе
  1. 1
    Включите механизм скидок в настройках раздела продаж, если он ещё не активен
  2. 2
    Откройте документ и выделите нужные строки товаров
  3. 3
    В меню табличной части выберите «Назначить ручную скидку» и укажите процент
  4. 4
    Проверьте, что колонки «Сумма» и «Всего» пересчитались корректно
  5. 5
    Проведите документ и сверьте итог с ожидаемым значением

Автоматические скидки по условиям

Если скидка должна применяться автоматически — например, 5% постоянным клиентам или 10% при покупке от определённой суммы, — настройте её в справочнике «Скидки (наценки)» в разделе «CRM и маркетинг». Создайте новый элемент, укажите способ предоставления «Процент», введите размер и задайте условия: по сегменту клиентов, по количеству или сумме в строке, по дням недели или по карте лояльности.

Важный параметр — область действия: скидка может применяться к строке, к документу целиком или выдаваться в виде подарка. Также определите порядок совместного применения, если скидок несколько: сложение (проценты суммируются), последовательное применение (каждая следующая считается от суммы после предыдущей) или выбор максимальной. Ошибка в этой настройке — частая причина неверных итогов в чеках.

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

НДС: как 1С считает налог по ставке

НДС — тоже процентный расчёт, но он полностью автоматизирован. В документе достаточно выбрать ставку в колонке «% НДС» (20%, 10%, 0% или «Без НДС»), и программа рассчитает сумму налога. По умолчанию в 1С цены в документах включают НДС, то есть налог выделяется из суммы по формуле: Сумма × Ставка / (100 + Ставка). Например, при ставке 20% из суммы 1200 рублей НДС составит 200 рублей.

Если нужно, чтобы налог начислялся сверху (цена без НДС плюс налог), измените вариант расчёта: в документе откройте «Цены и валюта» (или «Ещё» → «Цены и скидки») и снимите флаг «Сумма включает НДС» / установите «НДС сверху». Тогда при той же базе 1000 рублей НДС составит 200 рублей, а итог — 1200. Смешивать оба режима в одном документе нельзя.

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

Типичные ошибки с НДС и скидками
01
Скидка применена к строкам, но не пересчитан НДС — в типовых конфигурациях налог пересчитается сам, а в доработанных может остаться старым: всегда сверяйте колонку «НДС» после изменения сумм
02
Путаница «НДС в том числе» и «НДС сверху» — из-за этого итог документа расходится с договором на сумму налога
03
Несколько автоматических скидок с режимом «сложение» дают суммарный процент выше ожидаемого — проверьте настройки совместного применения
04
Ручная правка цены после автоматической скидки отменяет скидку, и клиенту выставляется полная сумма

Проценты по кредитам, займам и задолженности

Начисление процентов по полученным кредитам в 1С:Бухгалтерии обычно оформляется вручную. Создайте «Операцию, введённую вручную» (раздел «Операции») и сделайте проводку: Дт 91.02 «Прочие расходы» — Кт 66 или 67 (субсчёт «Проценты») на сумму начисленных процентов за месяц. Сумму рассчитайте по формуле банка: Остаток долга × Годовая ставка / 365 (или 366) × Количество дней в периоде.

Уплата процентов отражается документом «Списание с расчётного счёта» с видом операции «Возврат кредита или займа» / «Уплата процентов» — в зависимости от версии конфигурации. Если проценты капитализируются (прибавляются к долгу), проводка идёт не через расчётный счёт, а через увеличение задолженности по кредиту.

Для выданных займов схема зеркальная: начисленные проценты — это доход (Дт 76 или 73 — Кт 91.01). Если займов много и расчёт нужен регулярно, имеет смысл завести внешнюю обработку или регламентное задание, которое считает проценты по графику, — в типовой бухгалтерии автоматического ежемесячного начисления процентов по произвольному графику нет.

Проценты в отчётах и СКД

Когда требуется показать долю в процентах — например, долю каждого товара в общей выручке, — используйте систему компоновки данных (СКД). В настройках отчёта или в схеме компоновки добавьте вычисляемое поле с выражением вида: Продажи.СуммаОборот / ВычислитьВыражение("Сумма(СуммаОборот)", "ОбщийИтог") * 100. Функция «ВычислитьВыражение» с общим итогом позволяет получить итог по всему отчёту внутри строки.

Для красивого отображения задайте формат поля: в закладке «Наборы данных» или в пользовательских настройках укажите формат с двумя знаками после запятой и символом «%». Альтернатива без формул — встроенные ресурсы с расчётом процента от группировки: в настройках варианта отчёта для поля можно выбрать представление «Процент в группе» или «Процент в общем итоге», если конфигурация поддерживает такие агрегаты.

В управляемых формах и динамических списках процент считается аналогично — через вычисляемую колонку. Помните о делении на ноль: если итог по группе может быть нулевым, оберните выражение в конструкцию выбора (ВЫБОР КОГДА Итог = 0 ТОГДА 0 ИНАЧЕ ...), иначе получите ошибку при формировании отчёта.

Проценты в коде на встроенном языке

В программном коде 1С нет специального оператора процента — используется обычная арифметика. Процент от числа: Результат = Сумма Ставка / 100. Прибавить процент: Результат = Сумма (1 + Ставка / 100) или Сумма 1.2 для 20%. Выделить процент из суммы, где он уже сидит (как НДС): Результат = Сумма Ставка / (100 + Ставка).

Для денежных расчётов обязательно округляйте результат функцией Окр() до двух знаков, иначе копеечные расхождения накапливаются и документы перестанут сходиться с печатными формами. Тип реквизитов для сумм — Число с точностью 2, для ставок — обычно Число с точностью 2–4.

bsl
// Процент от суммы
Скидка = Окр(СуммаДокумента <em> ПроцентСкидки / 100, 2);

// НДС из суммы (ставка 20%)
СуммаНДС = Окр(СуммаДокумента </em> 20 / 120, 2);

// Доля в процентах с защитой от деления на ноль
Если Итог <> 0 Тогда
    Доля = Окр(Часть / Итог * 100, 2);
Иначе
    Доля = 0;
КонецЕсли;

При доработке конфигурации не изменяйте типовые модули расчёта скидок и НДС напрямую — это затруднит обновления. Используйте расширения конфигурации или подписки на события (например, «ПриЗаписи» документа), чтобы добавить свою логику поверх типовой.

Проверка результата и безопасная работа

После любого процентного расчёта сверяйте результат с независимым вычислением: посчитайте на калькуляторе или в таблице хотя бы одну строку документа. Для скидок удобный контроль — колонка «Сумма скидки» в табличной части и итог по ней; для НДС — отчёт «Анализ НДС» или книга продаж; для кредитных процентов — сверка с банковской выпиской и графиком платежей.

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

Контрольные точки

Как проверить результат

Скидка в документе
Норма

Колонка «Сумма скидки» равна проценту от цены, итог пересчитан

Тревожный признак

Скидка стоит, но итог не изменился — проверьте, применена ли она к строкам

НДС в документе
Норма

Сумма НДС соответствует ставке и режиму «в том числе» или «сверху»

Тревожный признак

НДС не сходится даже при ручном пересчёте — проверьте флаг включения НДС в цену

Процент в отчёте
Норма

Сумма процентов по строкам группировки даёт 100%

Тревожный признак

Сумма долей сильно отличается от 100% — ошибка в формуле или в области итога

Итог

Что важно запомнить

В 1С нет единой кнопки «процент»: скидки настраиваются механизмом «Скидки (наценки)», НДС считается по ставке в документе с учётом режима «в том числе / сверху», проценты по кредитам начисляются ручными операциями по формуле банка, а в отчётах и коде процент — это арифметика с обязательным округлением и защитой от деления на ноль.

Частые вопросы

Как сделать скидку в процентах на весь документ сразу?

В документе выделите все строки табличной части (Ctrl+A в таблице) и выберите команду «Назначить ручную скидку» в меню табличной части. В конфигурациях УТ 11 и КА 2 также доступна кнопка «Цены и скидки» → «Назначить ручную скидку (наценку) для документа», которая применяет процент ко всем позициям без выделения строк.

Почему автоматическая скидка не срабатывает в чеке?

Чаще всего не выполнено условие предоставления: не та дата или день недели, клиент не входит в сегмент, сумма строки ниже порога. Также проверьте, что скидка действует в нужном магазине (склад), не истёк срок действия и что в настройках рабочего места кассира разрешён расчёт автоматических скидок.

Как посчитать сумму без НДС, если известна сумма с НДС?

Разделите сумму на 1 плюс ставка: при ставке 20% — Сумма / 1.2, при ставке 10% — Сумма / 1.1. Сам налог — разница между исходной суммой и полученной базой. В документах 1С это делает программа автоматически при режиме «Сумма включает НДС».

Можно ли в 1С:Бухгалтерии автоматически начислять проценты по кредиту каждый месяц?

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

Как вывести процент выполнения плана в отчёте?

Добавьте в СКД вычисляемое поле с выражением Факт / План * 100 и защитой от деления на ноль (проверка План = 0). Для наглядности задайте формат поля с символом «%» и при необходимости условное оформление: например, красный цвет при значении ниже целевого порога.

Почему сумма скидки в копейках не сходится с расчётом вручную?

1С округляет скидку по каждой строке документа отдельно до копеек, а не по итогу целиком. Из-за этого сумма округлений по строкам может на копейку-две отличаться от процента от общего итога. Это нормальное поведение: для кассовых документов корректен именно построчный расчёт.