Как объединить несколько корректировок реализации в один документ за период в 1С:Бухгалтерия 3.0

Бухгалтер 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет Торговля и дистрибуция
← На главную

В процессе оптовых продаж, особенно в пищевой промышленности или на крупных производствах, систематически возникает проблема возврата или отбраковки части продукции. На практике это выливается в десятки и сотни документов корректировки реализации. Бухгалтеры сталкиваются с колоссальным объемом рутинной работы: на каждую отгрузку приходится создавать отдельный документ корректировки, выставлять корректировочные счета-фактуры и отправлять их контрагентам.

В этой статье мы подробно разберем, как решить проблему множественного документооборота при возвратах и расхождениях. Мы проанализируем законодательную базу, рассмотрим пошаговый алгоритм объединения документов в типовой конфигурации «1С:Бухгалтерия предприятия 3.0» без доработок, а также предложим варианты автоматизации этого процесса для крупных предприятий с большими объемами отгрузок.

Правовой аспект: Единый корректировочный счет-фактура (ЕКСФ)

Прежде чем переходить к технической реализации в программе, выясним правовую сторону вопроса. Законодательство РФ официально разрешает упростить процесс выставления корректировочных документов.

В соответствии с п. 5.2 ст. 169 НК РФ и Постановлением Правительства РФ № 1137, продавцы имеют право составлять один единый корректировочный счет-фактуру (ЕКСФ) к двум и более исходным счетам-фактурам, которые были выставлены ранее. Это ключевое положение полностью снимает проблему учета НДС, о которой часто спорят специалисты: вам не нужно отправлять клиенту множество отдельных бумажных или электронных корректировок. Достаточно сформировать один сводный документ за неделю или месяц.

Сводный документ ЕКСФ будет содержать:

  1. В строке 1б — номера и даты всех исходных счетов-фактур, по которым произошли изменения.
  2. В табличной части — сгруппированные по номенклатуре показатели «до изменения» и «после изменения» по всем поставкам.

Рассмотрим, как этот механизм реализован в типовом функционале программы 1С.

Решение в «1С:Бухгалтерии 3.0» штатными средствами (без программирования)

В самой программе 1С:Бухгалтерия 8 невозможно создать один физический документ КорректировкаРеализации, который бы ссылался сразу на несколько разных документов отгрузки. Каждый такой документ в системе жестко привязан к одной исходной накладной. Это обусловлено структурой метаданных и необходимостью корректного сторнирования партий и себестоимости.

Тем не менее, программа позволяет объединить эти документы на уровне Корректировочного счета-фактуры. Разберем этот процесс по шагам для обеих сторон сделки.

Шаг 1. Оформление на стороне продавца (при корректировке реализации)

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

  1. Перейдем в раздел Продажи — Корректировки реализации и создадим документ на основании первой исходной накладной.
  2. В созданном документе установим вид операции «Корректировка по согласованию сторон». В табличной части укажем реальное (уменьшенное) количество товара.
  3. Запишем и проведем документ. Важно: на данном этапе счет-фактуру внизу документа выписывать не нужно!
  4. Аналогичным образом создадим документы Корректировка реализации для всех остальных накладных, по которым были расхождения за выбранный период.
  5. В самом последнем созданном документе корректировки реализации в нижней части формы нажмем на кнопку «Выписать корректировочный счет-фактуру».
  6. Программа автоматически создаст документ Корректировочный счет-фактура выданный. Кликнем по ссылке и зайдем внутрь этого документа.
  7. В форме счета-фактуры найдем поле «Документы-основания». По умолчанию там будет указана только последняя корректировка. Нажмем на гиперссылку «Изменить» (или кнопку со списком оснований), затем нажмем кнопку «Добавить» и выберем из списка все остальные созданные ранее документы корректировки реализации за этот период.
  8. Проведем документ Корректировочный счет-фактура выданный.

В результате программа сформирует один Единый корректировочный счет-фактуру (ЕКСФ). При выводе на печать или при отправке по ЭДО в строке 1б через запятую будут указаны все исходные документы, а в табличной части программа корректно сгруппирует все изменившиеся позиции, рассчитает суммарный НДС и разницу к уменьшению или увеличению.

Шаг 2. Оформление на стороне покупателя (при корректировке поступления)

Если наш поставщик прислал нам один сводный ЕКСФ на несколько ранее осуществленных поставок, мы должны отразить это в своем учете следующим образом:

  1. Создадим под каждое исходное поступление свой документ Корректировка поступления (в меню Покупки — Корректировки поступлений).
  2. В каждом документе укажем фактическое количество принятого товара.
  3. Внизу каждого документа корректировки в полях для входящего счета-фактуры укажем абсолютно одинаковый номер и дату входящего ЕКСФ, полученного от поставщика.

При проведении документов программа 1С автоматически сопоставит эти записи по номеру и дате в книге покупок или продаж, и НДС закроется корректно без расхождений в налоговых органах.

Автоматизация для крупных производств (с программированием)

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

Рассмотрим пример программной логики, которую может реализовать программист 1С. Мы напишем алгоритм, который автоматически находит все реализации по выбранному контрагенту за период, анализирует расхождения по качеству (на основе переданного складом внешнего файла или акта ТОРГ-2) и программно создает цепочку корректировок с привязкой к одному ЕКСФ.

Проанализируем пример кода для программного создания корректировок и объединения их в один счет-фактуру:


Процедура ОбъединитьКорректировкиВЕдиныйСФ(Контрагент, Договор, ПериодНачала, ПериодОкончания, ТаблицаРасхождений) Экспорт
    
    // Шаг 1. Создаем массив для хранения ссылок на созданные корректировки
    МассивКорректировок = Новый Массив;
    
    // Шаг 2. Обходим таблицу расхождений, полученную от склада
    Для Каждого СтрокаРасхождения Из ТаблицаРасхождений Цикл
        
        // Находим исходную реализацию по метаданным (например, по заказу или накладной)
        СсылкаРеализация = СтрокаРасхождения.ДокументРеализации;
        
        Если НЕ ЗначениеЗаполнено(СсылкаРеализация) Тогда
            Продолжить;
        КонецЕсли;
        
        // Создаем новый документ Корректировка реализации
        НоваяКорректировка = Документы.КорректировкаРеализации.СоздатьДокумент();
        НоваяКорректировка.Заполнить(СсылкаРеализация);
        НоваяКорректировка.Дата = ТекущаяДата();
        НоваяКорректировка.ВидОперации = Перечисления.ВидыОперацийКорректировкиРеализации.КорректировкаПоСогласованиюСторон;
        
        // Корректируем строки в табличной части "Товары"
        Для Каждого СтрокаТовары Из НоваяКорректировка.Товары Цикл
            Если СтрокаТовары.Номенклатура = СтрокаРасхождения.Номенклатура Тогда
                // Устанавливаем новое фактическое количество
                СтрокаТовары.Количество = СтрокаРасхождения.НовоеКоличество;
                // Пересчитываем суммы по строке
                ОбработкаТабличнойЧастиКлиентСервер.ПересчитатьСтрокуТЧ(СтрокаТовары, НоваяКорректировка);
            КонецЕсли;
        КонецЦикла;
        
        // Записываем и проводим документ корректировки
        Попытка
            НоваяКорректировка.Записать(РежимЗаписиДокумента.Проведение);
            МассивКорректировок.Добавить(НоваяКорректировка.Ссылка);
        Исключение
            ЗаписьЖурналаРегистрации("Ошибка создания корректировки", УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки());
        КонецПопытки;
        
    КонецЦикла;
    
    // Шаг 3. Создаем Единый корректировочный счет-фактуру для всех созданных корректировок
    Если МассивКорректировок.Количество() > 0 Тогда
        
        // За основу берем первую корректировку для инициализации СФ
        ПерваяКорректировка = МассивКорректировок[0];
        
        НовыйСФ = Документы.КорректировочныйСчетФактураВыданный.СоздатьДокумент();
        НовыйСФ.Дата = ТекущаяДата();
        НовыйСФ.Организация = ПерваяКорректировка.Организация;
        НовыйСФ.Контрагент = Контрагент;
        НовыйСФ.ДоговорКонтрагента = Договор;
        
        // Заполняем список документов-оснований
        НовыйСФ.ДокументыОснования.Очистить();
        Для Каждого КорректировкаСсылка Из МассивКорректировок Цикл
            СтрокаОснования = НовыйСФ.ДокументыОснования.Добавить();
            СтрокаОснования.ДокументОснование = КорректировкаСсылка;
        КонецЦикла;
        
        // Запускаем штатный механизм заполнения реквизитов счета-фактуры по основаниям
        НовыйСФ.ЗаполнитьПоДокументамОснованиям();
        
        Попытка
            НовыйСФ.Записать(РежимЗаписиДокумента.Проведение);
            Сообщить("Успешно создан Единый корректировочный счет-фактура № " + НовыйСФ.Номер);
        Исключение
            Сообщить("Не удалось создать единый СФ: " + ОписаниеОшибки());
        КонецПопытки;
        
    КонецЕсли;

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

Разберем подробнее логику работы этого алгоритма. Программа сначала автоматически генерирует необходимые документы корректировки на основании переданной таблицы расхождений, проводит их, а затем объединяет ссылки в табличной части ДокументыОснования нового объекта КорректировочныйСчетФактураВыданный. Использование метода ЗаполнитьПоДокументамОснованиям() позволяет автоматически собрать все суммовые показатели и распределить НДС по соответствующим ставкам.

Методологический спор: Возврат или Корректировка реализации?

Часто на форумах возникает дискуссия: не проще ли оформить обычный документ ВозвратТоваровОтПокупателя вместо цепочки сложных корректировок? Рассмотрим обе альтернативы с точки зрения налоговых рисков и удобства учета.

Вариант 1: Оформление возврата товаров

Вариант 2: Оформление корректировки реализации по согласованию сторон

Таким образом, для минимизации налоговых рисков крупных предприятий однозначно рекомендуется использовать схему с Корректировкой реализации и последующим формированием Единого корректировочного счета-фактуры.

Использование систем ЭДО для оптимизации процесса

Для минимизации ручного труда на крупных предприятиях мы рекомендуем внедрять электронный документооборот (ЭДО). При интеграции учетной системы с ЭДО процесс обработки расхождений выглядит следующим образом:

  1. Покупатель при приемке товара обнаруживает брак или недопоставку и формирует электронный Акт о расхождениях (ТОРГ-2) или отправляет уведомление об уточнении прямо в интерфейсе ЭДО.
  2. Ваша программа «1С:Бухгалтерия 3.0» автоматически распознает этот входящий файл.
  3. На основании распознанных данных система сама предлагает создать документы корректировок. Бухгалтеру остается лишь проверить корректность заполнения и нажать кнопку проведения.
  4. Единый корректировочный счет-фактура подписывается электронной подписью и мгновенно отправляется клиенту.

Использование связки ЭДО, типового механизма Единых корректировочных счетов-фактур и простых доработок автоматического заполнения позволяет сократить трудозатраты бухгалтерии на обработку возвратов в десятки раз.

← На главную