Как в 1С:Бухгалтерии рассчитывается курс и стоимость товаров при зачете нескольких авансов в валюте или у.е.?

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

При оформлении поступления товаров, материалов или оборудования в иностранной валюте либо в условных единицах (у.е.) бухгалтеры часто сталкиваются с ситуацией, когда по договору было перечислено несколько предварительных оплат по разным курсам. В момент проведения накладной итоговая рублевая себестоимость отдельных позиций номенклатуры может показаться неожиданной: курс пересчета каждой строки не совпадает ни с одним из курсов авансов и рассчитывается не по методу ФИФО для каждой отдельной строки.

Разберем детально, по какому алгоритму программа выполняет расчет, почему учет взаиморасчетов устроен именно так и как при необходимости распределить авансы на конкретные позиции.

Логика и алгоритм расчета себестоимости в типовой конфигурации

Проанализируем базовый принцип, заложенный разработчиками платформы «1С:Предприятие» и конфигурации «1С:Бухгалтерия предприятия 3.0»:

  1. Определение общей рублевой суммы документа. При проведении документа поступления программа анализирует остатки на счетах расчетов с поставщиками (60.22 для расчетов в валюте или 60.32 для расчетов в у.е.). Система берет суммы зачтенных авансов в рублях (по историческим курсам на даты платежей) и, если сумма поступления превышает сумму предоплаты, пересчитывает остаток по курсу ЦБ РФ на дату оприходования.
  2. Расчет средневзвешенного расчетного курса документа. Общая рублевая сумма по всему документу делится на общую сумму документа в валюте или у.е. Получается единый эффективный курс пересчета для данной накладной.
  3. Пропорциональное распределение по номенклатуре. Рублевая стоимость каждой товарной позиции рассчитывается путем умножения ее валютной стоимости на полученный единый средневзвешенный курс. Распределение авансов происходит в долях от общей суммы, а не последовательно по номенклатурным строкам.

Рассмотрим числовой пример, чтобы понять математику расчета:

  1. В марте перечислен аванс №1: 1000 у.е. по курсу 61,5 руб. (сумма 61 500 руб.).
  2. В апреле перечислен аванс №2: 500 у.е. по курсу 59,7 руб. (сумма 29 850 руб.).
  3. В июне поступают две позиции номенклатуры на общую сумму 1500 у.е.: Товар 1 на сумму 600 у.е. и Товар 2 на сумму 900 у.е.
  4. Общая рублевая сумма покрытия авансами составляет 61 500 + 29 850 = 91 350 руб.
  5. Единый расчетный курс документа равен: 91 350 / 1500 = 60,9 руб./у.е.
  6. Стоимость Товара 1 в проводках составит: 600 * 60,9 = 36 540 руб.
  7. Стоимость Товара 2 в проводках составит: 900 * 60,9 = 54 810 руб.

Как видим, программа не закрывает первый аванс целиком на Товар 1 по курсу 61,5, а усредняет стоимость пропорционально доле каждой строки в накладной.

Системные причины такого поведения

Выясним причину, почему программа не использует метод ФИФО построчно к каждой номенклатурной позиции в рамках одного документа. Учет взаиморасчетов с контрагентами на счетах 60.01, 60.02, 60.21, 60.22, 60.31, 60.32 ведется в разрезе субконто Контрагенты, Договоры и Документы расчетов с контрагентом. Аналитика по номенклатуре на счетах расчетов отсутствует. Поэтому документ поступления оперирует только общей суммой взаиморасчетов по договору, а уже затем транслирует полученную рублевую оценку на счета учета активов (08, 10, 41).

Способы получения нужной себестоимости по конкретным позициям

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

Вариант 1. Разделение на отдельные документы поступления

Самый простой и методически корректный способ для типовой конфигурации — оформление нескольких документов поступления:

  1. Создаем первый документ поступления на позиции, которые должны быть закрыты первым авансом. Программа зачтет только первый аванс по его курсу.
  2. Создаем второй документ поступления на оставшиеся позиции. При его проведении зачтется второй аванс по соответствующему курсу.

Вариант 2. Ручной выбор расчетных документов при зачете аванса

Разберем по шагам, как управлять зачетом авансов вручную:

  1. Перейдем в раздел Главное — Функциональность — вкладка Расчеты.
  2. Установим флаг Управление зачетом авансов и погашением задолженности.
  3. В документе поступления нажмем на гиперссылку Расчеты в шапке документа.
  4. Переведем переключатель Зачет аванса из положения Автоматически в положение По документу.
  5. В появившейся табличной части выберем конкретный платежный документ (списание с расчетного счета) и укажем точную сумму зачета в валюте/у.е.

Вариант 3. Ведение расчетов в разрезе счетов или спецификаций

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

  1. В карточке договора с поставщиком в поле Ведение расчетов выберем вариант По счетам либо создадим отдельные элементы справочника Договоры контрагентов под каждую спецификацию.
  2. При перечислении предоплаты выберем соответствующий счет или договор спецификации.
  3. При оформлении поступления укажем тот же счет/договор, что исключит смешивание разных авансов в рамках одной накладной.

Вариант 4. Ручная корректировка проводок документа

Если накладную нельзя разделить на несколько документов, а расчет необходимо скорректировать постфактум:

  1. Откроем движения проведенного документа поступления (кнопка Дт/Кт).
  2. Установим флаг Ручная корректировка (содержит исправления движения документа).
  3. Скорректируем рублевые суммы по дебету счетов 08, 10 или 41 и регистрам учета НДС вручную в соответствии с требуемыми расчетами.
← На главную