Найти в Дзене

Бухгалтерский и налоговый учёт в 1С для программиста

1С БУ и НУ Пятница, 17:45. Главный бухгалтер смотрит на экран и не понимает, почему прибыль по бухгалтерскому учёту — 4,2 млн рублей, а по налоговому — 1,8 млн. Разница в 2,4 миллиона. Аудиторы приедут в понедельник. Знакомо? Расхождение между БУ и НУ в 1С — одна из самых частых причин авралов в бухгалтерии. И одна из самых частых причин, по которым программисты 1С получают звонки в выходные. В этой статье разберём: почему вообще возникают разницы, как 1С хранит данные по двум видам учёта, какие типовые ошибки ломают баланс — и как это чинить кодом, а не ручными корректировками. В 1С:Бухгалтерии ПРОФ (от 16 200₽) бухгалтерский и налоговый учёт ведутся в одном регистре бухгалтерии, но с разными признаками. Это принципиально важно понимать, прежде чем лезть в отладку. Регистр бухгалтерии «Журнал проводок» содержит движения сразу по нескольким планам счетов. Каждая проводка имеет признак: БУ, НУ, ВР (временные разницы) или ПР (постоянные разницы). Ключевое правило, которое нарушают в 80%
Оглавление

1С БУ и НУ

Бухгалтерский и налоговый учёт в 1С: почему данные расходятся и как это исправить раз и навсегда

Пятница, 17:45. Главный бухгалтер смотрит на экран и не понимает, почему прибыль по бухгалтерскому учёту — 4,2 млн рублей, а по налоговому — 1,8 млн. Разница в 2,4 миллиона. Аудиторы приедут в понедельник. Знакомо?

Расхождение между БУ и НУ в 1С — одна из самых частых причин авралов в бухгалтерии. И одна из самых частых причин, по которым программисты 1С получают звонки в выходные.

В этой статье разберём: почему вообще возникают разницы, как 1С хранит данные по двум видам учёта, какие типовые ошибки ломают баланс — и как это чинить кодом, а не ручными корректировками.

Как 1С:Бухгалтерия хранит данные БУ и НУ — архитектура изнутри

В 1С:Бухгалтерии ПРОФ (от 16 200₽) бухгалтерский и налоговый учёт ведутся в одном регистре бухгалтерии, но с разными признаками. Это принципиально важно понимать, прежде чем лезть в отладку.

Регистр бухгалтерии «Журнал проводок» содержит движения сразу по нескольким планам счетов. Каждая проводка имеет признак: БУ, НУ, ВР (временные разницы) или ПР (постоянные разницы).

Ключевое правило, которое нарушают в 80% случаев расхождений: сумма БУ должна равняться сумме НУ плюс ВР плюс ПР. Если это равенство нарушено — у вас проблема.

Посмотрим, как выглядит типичная проводка в регистре:

// Пример движения по регистру бухгалтерии
// БУ: Дт 26 Кт 60 — 100 000 руб.
// НУ: Дт 26 Кт 60 — 80 000 руб. (расход принят частично)
// ВР: Дт 26 Кт 60 — 20 000 руб. (временная разница)
// ПР: 0

// Проверка: 100 000 = 80 000 + 20 000 + 0 ✓

Если же программист или пользователь вручную правит проводку только по БУ, забывая про НУ — равенство ломается. И дальше начинается детективная история.

Планы счетов: в чём разница между БУ и НУ счетами

В типовой «Бухгалтерии» есть единый план счетов, но у каждого счёта есть признаки: «Налоговый учёт (по налогу на прибыль)» и «Бухгалтерский учёт». Некоторые счета ведутся только в БУ (например, 99.01.1 в части ПБУ 18), некоторые — только в НУ.

Это первый источник путаницы для новичков: они думают, что НУ — это отдельная база. Нет. Это дополнительные колонки в той же таблице проводок.

Топ-5 причин расхождений БУ и НУ в 1С — с примерами из практики

За годы работы с клиентами на 1С собралась чёткая статистика: 90% расхождений укладываются в пять причин. Разберём каждую.

Причина 1: Ручные проводки без заполнения НУ

Бухгалтер делает ручную операцию. Заполняет сумму по дебету и кредиту в БУ. Про колонки НУ, ВР и ПР забывает. Итог — расхождение на всю сумму проводки.

В одной торговой компании в Екатеринбурге таких «забытых» ручных операций накопилось за квартал на 18 млн рублей. Налоговая база оказалась занижена. Штраф — 20% от недоимки.

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

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

Самая частая ошибка — не вызывать процедуру установки суммы НУ при формировании проводок вручную.

Причина 3: Некорректная настройка учётной политики

Учётная политика в 1С влияет на то, как документы формируют проводки. Если метод начисления амортизации в БУ — линейный, а в НУ — нелинейный, система должна автоматически создавать временные разницы. Если настройка сбита — разницы не создаются, и баланс ломается молча.

Причина 4: Загрузка данных через внешние обработки

Классика жанра: загружаем данные из Excel через самописную обработку. Создаём документы или проводки напрямую. Забываем про НУ-реквизиты. Через месяц главбух не может закрыть период.

Причина 5: Обновление конфигурации без тестирования

После обновления типовой конфигурации изменился алгоритм проведения какого-то документа. В новой версии 1С поправили формирование НУ-проводок. Но у клиента стоит доработанная конфигурация — и обновление легло поверх доработок. Результат: документы проводятся, но НУ не заполняется.

Как найти расхождения БУ и НУ в 1С — код для диагностики

Прежде чем чинить — нужно найти. В 1С есть встроенный отчёт «Анализ состояния налогового учёта по налогу на прибыль». Но он показывает итог, а не источник проблемы.

Для точной диагностики пишем запрос к регистру бухгалтерии:

// Запрос для поиска расхождений БУ и НУ
// Ищем проводки, где сумма БУ ≠ НУ + ВР + ПР

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЖурналПроводок.Регистратор КАК Документ,
| ЖурналПроводок.СчетДт КАК СчетДт,
| ЖурналПроводок.СчетКт КАК СчетКт,
| ЖурналПроводок.СуммаБУ КАК СуммаБУ,
| ЖурналПроводок.СуммаНУДт КАК СуммаНУ,
| ЖурналПроводок.СуммаВРДт КАК СуммаВР,
| ЖурналПроводок.СуммаПРДт КАК СуммаПР,
| (ЖурналПроводок.СуммаБУ -
| ЖурналПроводок.СуммаНУДт -
| ЖурналПроводок.СуммаВРДт -
| ЖурналПроводок.СуммаПРДт) КАК Расхождение
|ИЗ
| РегистрБухгалтерии.ЖурналПроводок КАК ЖурналПроводок
|ГДЕ
| ЖурналПроводок.Период МЕЖДУ &НачалоПериода И &КонецПериода
| И АБС(ЖурналПроводок.СуммаБУ -
| ЖурналПроводок.СуммаНУДт -
| ЖурналПроводок.СуммаВРДт -
| ЖурналПроводок.СуммаПРДт) > 0.01
|УПОРЯДОЧИТЬ ПО
| Расхождение УБЫВ";

Запрос.УстановитьПараметр("НачалоПериода", НачалоКвартала(ТекущаяДата()));
Запрос.УстановитьПараметр("КонецПериода", КонецКвартала(ТекущаяДата()));

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

Этот запрос покажет все проводки за квартал, где нарушен баланс БУ = НУ + ВР + ПР. Сортируем по убыванию расхождения — сначала смотрим самые крупные суммы.

Важный момент: в реальной конфигурации имена реквизитов могут отличаться. В типовой «Бухгалтерии предприятия» регистр называется «Хозрасчетный», а поля — «СуммаБУ», «СуммаНУ», «СуммаВР», «СуммаПР». Уточняйте через конфигуратор.

Как правильно заполнять НУ в самописных документах 1С

Это самый важный раздел для разработчиков. Если вы пишете документ с нуля или дорабатываете типовой — вот как правильно формировать проводки с учётом НУ.

Плохой код: проводка только по БУ

// ПЛОХО: так делать нельзя!
// Проводка создаётся только по БУ, НУ не заполняется

Движение = Движения.ХозрасчетныйБУ.Добавить();
Движение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("26");
Движение.СчетКт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("60.01");
Движение.Сумма = 100000;
// Реквизиты НУ не заполнены — расхождение гарантировано!

Хороший код: проводка с заполнением НУ и разниц

// ХОРОШО: правильное заполнение БУ, НУ и разниц

Движение = Движения.ХозрасчетныйБУ.Добавить();
Движение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("26");
Движение.СчетКт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("60.01");
Движение.Сумма = 100000; // Сумма по БУ

// Определяем сумму по НУ (например, расход принят на 80%)
СуммаНУ = 80000;
СуммаВР = 100000 - СуммаНУ; // Временная разница

// Заполняем реквизиты НУ
Движение.СуммаНУДт = СуммаНУ;
Движение.СуммаВРДт = СуммаВР;
Движение.СуммаПРДт = 0; // Постоянных разниц нет

// Проверка: 100000 = 80000 + 20000 + 0 ✓

Запомните простое правило: всегда, когда создаёте движение по регистру бухгалтерии, заполняйте все четыре суммы. Даже если НУ = БУ — явно пишите это в коде. Это избавит от головной боли при сопровождении.

Универсальная процедура заполнения НУ

Удобно вынести логику в отдельную процедуру, которую можно переиспользовать во всех документах:

// Универсальная процедура заполнения сумм НУ в проводке
Процедура ЗаполнитьСуммыНУ(Движение, СуммаБУ, СуммаНУ, ТипРазницы = "ВР")

Движение.Сумма = СуммаБУ;
Движение.СуммаНУДт = СуммаНУ;

РазницаСумм = СуммаБУ - СуммаНУ;

Если ТипРазницы = "ВР" Тогда
Движение.СуммаВРДт = РазницаСумм;
Движение.СуммаПРДт = 0;
ИначеЕсли ТипРазницы = "ПР" Тогда
Движение.СуммаВРДт = 0;
Движение.СуммаПРДт = РазницаСумм;
КонецЕсли;

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

// Использование:
// ЗаполнитьСуммыНУ(Движение, 100000, 80000, "ВР");

Временные и постоянные разницы в 1С — в чём разница и когда что использовать

Это тема, которую путают даже опытные бухгалтеры. Давайте разберём на пальцах.

Временная разница (ВР) — расход или доход признаётся в БУ и НУ в разные периоды. Классический пример: амортизация. В БУ — линейная, в НУ — нелинейная. В этом году НУ-амортизация больше, через три года — наоборот. Разница «закроется» со временем.

Постоянная разница (ПР) — расход принят в БУ, но никогда не будет принят в НУ. Например, представительские расходы сверх норматива (4% от фонда оплаты труда). Эта разница не закроется никогда.

Почему это важно для разработчика? Потому что ПБУ 18/02 требует отражать отложенные налоговые активы и обязательства именно на основе временных разниц. Если вы неправильно классифицируете разницу — баланс в отчёте о финансовых результатах будет некорректным.

Пример из практики: неправильная классификация разниц

Клиент — производственная компания в Новосибирске, оборот 800 млн рублей в год. Разработчик при доработке модуля учёта спецодежды все разницы помечал как ВР. На самом деле часть расходов по спецодежде сверх норм — это ПР.

Итог: отложенный налоговый актив завышен на 3,2 млн рублей. Аудиторы нашли при годовой проверке. Пришлось делать исправительные проводки за три года.

Закрытие месяца в 1С: почему «Расчёт налога на прибыль» выдаёт ошибку

Ещё одна боль — закрытие месяца зависает или выдаёт ошибку на шаге «Расчёт налога на прибыль» или «Расчёт отложенных налоговых активов и обязательств».

Типичное сообщение об ошибке: «Не выполняется условие: БУ = НУ + ВР + ПР». Это именно то расхождение, о котором мы говорили выше.

Алгоритм решения:

  • Запускаем обработку «Поиск и удаление ошибок» из раздела «Администрирование»
  • Выбираем «Проверка разниц БУ и НУ»
  • Смотрим список документов с расхождениями
  • Перепроводим документы (если расхождение из-за алгоритма проведения)
  • Если перепроведение не помогает — смотрим код проведения документа

Если расхождение в ручных операциях — придётся исправлять руками. Никогда не удаляйте проводки с расхождением — это только замаскирует проблему, но не решит её.

Код для автоматического исправления расхождений в ручных операциях

Если расхождений много и они однотипные — можно написать обработку для пакетного исправления. Вот заготовка:

// Обработка для исправления расхождений в ручных операциях
// ВНИМАНИЕ: запускать только после резервной копии!

Процедура ИсправитьРасхожденияНУ(НачалоПериода, КонецПериода)

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ЖурналПроводок.Регистратор КАК Документ
|ИЗ
| РегистрБухгалтерии.Хозрасчетный КАК ЖурналПроводок
|ГДЕ
| ЖурналПроводок.Период МЕЖДУ &Начало И &Конец
| И ТИПЗНАЧЕНИЯ(ЖурналПроводок.Регистратор) =
| ТИП(Документ.ОперацияБух)";

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

Выборка = Запрос.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл
ДокОбъект = Выборка.Документ.ПолучитьОбъект();
// Здесь логика исправления НУ для каждой строки
// зависит от бизнес-правил конкретной компании
ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);
КонецЦикла;

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

Важно: перед запуском любой пакетной обработки — делайте резервную копию. Это не просто совет, это закон.

ПБУ 18/02 в 1С: балансовый метод vs затратный — что выбрать

С 2020 года большинство организаций обязаны применять ПБУ 18/02 с использованием балансового метода. В 1С:Бухгалтерии это настраивается в учётной политике.

Балансовый метод — разницы определяются как разность между балансовой стоимостью актива/обязательства по БУ и его налоговой базой по НУ. Более точный, но сложнее в понимании.

Затратный метод — разницы определяются по каждой операции (доходу/расходу). Проще в реализации, но может давать погрешности при сложных операциях.

В типовой «Бухгалтерии» с релиза 3.0.70 балансовый метод стал методом по умолчанию. Если у вас старые базы с затратным методом — при переходе на балансовый могут вылезти накопленные расхождения. Это нормально, но нужно быть готовым.

Настройка метода учёта разниц в 1С

Путь в типовой «Бухгалтерии предприятия»:

  • Главное меню → Главное → Настройки → Учётная политика
  • Вкладка «Налог на прибыль»
  • Раздел «Учёт отложенных налоговых активов и обязательств (ПБУ 18)»
  • Выбираем «Ведётся балансовым методом»

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

Практический чек-лист: как не допустить расхождений БУ и НУ в 1С

Собрали всё в один список — распечатайте и повесьте над монитором.

  • При разработке документов: всегда заполняйте СуммаНУ, СуммаВР, СуммаПР в каждой проводке
  • При загрузке данных: проверяйте заполнение НУ-реквизитов в обработке загрузки
  • После обновления конфигурации: тестируйте проведение ключевых документов и проверяйте баланс БУ/НУ
  • Ежемесячно: запускайте встроенную проверку «Анализ состояния налогового учёта» до закрытия периода
  • При доработке учётной политики: тестируйте на копии базы, не на рабочей
  • Ручные операции: ограничьте права — пусть ручные проводки делает только главбух, и только с обязательным заполнением НУ
  • Резервные копии: перед любыми пакетными операциями с проводками

Реальный кейс: как мы нашли расхождение на 47 млн рублей за 2 часа

Расскажем историю без названия компании — NDA. Крупный ритейлер, 1С:ERP (от 432 000₽), 200 пользователей. Перед годовой отчётностью главбух обнаружила: налоговая прибыль меньше бухгалтерской на 47 млн рублей.

Стандартные отчёты не давали ответа — расхождение «размазано» по тысячам документов. Написали запрос к регистру бухгалтерии (аналог того, что показан выше). За 2 часа нашли источник: самописный документ «Списание неликвидов», который разработчик добавил в июне.

В модуле проведения этого документа была ровно та ошибка, о которой мы говорили: проводки формировались только по БУ. За полгода документ провёлся 340 раз. Суммарное расхождение — 47,3 млн рублей.

Решение: исправили код проведения, написали обработку для перепроведения всех документов за полгода. Три часа работы программиста — и проблема закрыта. Без исправительных проводок, без объяснений аудиторам.

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

Что нового в 1С по теме БУ и НУ в 2026 году

В начале 2026 года 1С выпустила несколько важных обновлений для «Бухгалтерии предприятия» в части налогового учёта.

Главное изменение: доработан механизм учёта по налогу на прибыль в связи с изменением ставки до 25% (с 2025 года). Если вы обновились на релиз 3.0.160 и выше — в учётной политике появился новый параметр для корректного расчёта отложенных налоговых обязательств по новой ставке.

Важно: если база не обновлялась с конца 2024 года — ОНА и ОНО могут считаться по старой ставке 20%. Это прямая ошибка в отчётности. Проверьте релиз своей конфигурации прямо сейчас.

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

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

// Получить версию конфигурации программно

Функция ПолучитьВерсиюКонфигурации()

Возврат Метаданные.Версия;

КонецФункции

// Вывести в сообщение
Сообщить("Версия конфигурации: " + ПолучитьВерсиюКонфигурации());
// Для БП 3.0 актуальная версия на март 2026: 3.0.162 и выше

Итог: бухгалтерский и налоговый учёт в 1С — это не магия, это архитектура

Расхождения между БУ и НУ в 1С — не случайность и не «глюк программы». Это всегда следствие конкретных ошибок: в коде, в настройках или в действиях пользователей.

Три главных вывода из этой статьи:

  • Понимайте архитектуру: БУ = НУ + ВР + ПР — это закон, который нельзя нарушать
  • Диагностируйте запросами, а не глазами — тысячи проводок руками не проверить
  • Пишите правильный код с первого раза — исправлять расхождения за полгода дороже, чем сделать правильно сразу

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

На koderion.ru — бирже специалистов 1С — вы найдёте разработчиков с опытом именно в задачах налогового учёта и ПБУ 18/02. Можно выбрать специалиста по рейтингу, портфолио и стоимости часа, не нанимая в штат. Оставьте задачу — и получите предложения от проверенных 1С-ников уже в течение дня.