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

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

Как 1С рассчитывает курсовые разницы

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

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

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

Ключевой момент: переоценке подлежат только те объекты учёта, которые выражены в валюте и по которым план счетов или настройки конфигурации предписывают пересчёт. Авансы выданные и полученные в бухгалтерском учёте, как правило, не переоцениваются — это частая причина расхождений между ожиданиями бухгалтера и фактическими проводками программы.

Какие объекты учёта 1С переоценивает

Программа определяет перечень переоцениваемых объектов по признаку валютного учёта на счёте плана счетов. В 1С:Бухгалтерии это счета, у которых установлен признак «Валютный»: валютные счета 52, депозиты 55, расчёты с контрагентами 60, 62, 76 при наличии договора в валюте, задолженность по займам 66, 67, касса в валюте 50 и другие.

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

Отдельная категория — авансы. В бухгалтерском учёте авансы, выданные и полученные в валюте, пересчитываются в рубли один раз по курсу на дату аванса и далее не переоцениваются. Если вы видите, что остаток по счёту 60.22 или 62.32 «не двигается» при изменении курса, это не ошибка, а требование ПБУ 3/2006, заложенное в типовой механизм.

Как устроен расчёт: формула и логика программы

Базовая формула, которой следует 1С, проста: новая рублёвая оценка остатка = валютный остаток × курс на дату переоценки. Курсовая разница = новая рублёвая оценка − текущая рублёвая оценка по данным учёта. Если результат положительный и это актив — формируется доход; если обязательство — расход, и наоборот.

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

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

Где в программе выполняется переоценка

В 1С:Бухгалтерии 8 переоценка на отчётную дату выполняется регламентной операцией «Переоценка валютных средств» внутри обработки «Закрытие месяца» (раздел «Операции»). Операция формируется автоматически, если в информационной базе есть валютные остатки и загружены курсы.

Кроме закрытия месяца, курсовые разницы возникают в момент проведения операционных документов: списание с валютного счёта, поступление на валютный счёт, оплата поставщику или поступление оплаты от покупателя по валютному договору. В этих документах проводка по курсовой разнице формируется сразу, в составе движений самого документа.

В 1С:ERP и Комплексной автоматизации механика похожа, но расчёт выполняется в рамках регламентного задания переоценки и процедуры закрытия месяца в финансовом результате, а аналитика разниц может детализироваться по направлениям деятельности и статьям доходов/расходов. Точные проводки там зависят от настройки учётной политики и методов распределения.

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

Какие проводки формирует программа

Типовая корреспонденция в бухгалтерском учёте: положительная курсовая разница отражается по дебету валютного счёта (52, 60, 62 и т.д.) и кредиту 91.01 «Прочие доходы», отрицательная — по дебету 91.02 «Прочие расходы» и кредиту валютного счёта. Для обязательств знак зеркальный: рост курса по кредиторской задолженности даёт расход.

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

СитуацияДебетКредит
Рост курса, валютный остаток на счёте 525291.01
Падение курса, валютный остаток на счёте 5291.0252
Рост курса, долг поставщику в валюте (60)91.0260
Падение курса, долг поставщику в валюте (60)6091.01
Рост курса, долг покупателя в валюте (62)6291.01

Настройки, влияющие на расчёт

Главная настройка — признак валютного учёта на счёте плана счетов. В типовых конфигурациях он предустановлен, но если вы добавляли собственные субсчета для валютных операций, проверьте, что флаг «Валютный» включён: без него программа не будет вести валютную сумму и переоценка не выполнится.

Второй критичный элемент — справочник «Валюты» и регистр курсов. Рекомендуется настроить автоматическую загрузку курсов через регламентное задание, чтобы исключить пропуски дат. Для валют с косвенной котировкой проверьте правильность способа установки курса (кратность), иначе суммы будут искажены в десятки раз.

Третий блок — учётная политика: порядок признания курсовых разниц в налоговом учёте и применение ПБУ 18/02. Изменение этих настроек в середине года приводит к тому, что один и тот же остаток переоценивается по-разному в соседних периодах, и сальдо по счетам отложенных налогов перестаёт сходиться.

Проверка результата и типовые ошибки

Самый быстрый способ проверить корректность переоценки — сравнить рублёвое сальдо валютного счёта после закрытия месяца с произведением валютного сальдо на курс ЦБ на последний день месяца. Значения должны совпасть (с точностью до округления). Для расчётов по договорам в валюте проверка аналогична, но выполняется в разрезе каждого договора через оборотно-сальдовую ведомость по счёту с субконто «Договоры».

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

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

Типичные ошибки
01
Незагруженный курс на дату операции — программа берёт устаревший курс, и вся цепочка разниц месяца искажается.
02
Договор заведён в рублях при фактических расчётах в валюте — валютное сальдо не формируется, переоценка не выполняется вовсе.
03
Ручная правка рублёвых сумм в проводках документов — последующие переоценки считаются от неверной базы.
04
Закрытие месяца выполнено до проведения всех валютных документов — переоценка устаревает, а её забывают пересчитать.
05
Ожидание переоценки авансов — авансы по ПБУ 3/2006 не переоцениваются, и попытки «исправить» это вручную создают ложные разницы.

Ограничения и частные сценарии

Стандартный механизм рассчитывает разницы только по остаткам, которые видит в валютном учёте. Если часть расчётов ведётся в управленческих регистрах (например, в ERP по взаиморасчётам с детализацией по заказам), рублёвые оценки там и в бухгалтерском учёте могут отличаться из-за разных моментов пересчёта — это нормально, но требует сверки при закрытии периода.

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

Расчёты в условных единицах, оплата по курсу, отличному от курса ЦБ (например, курс ЦБ + 2%), и конверсионные операции между валютами — сценарии, где типовой механизм требует точной настройки договора и порядка пересчёта. Если условия договора нестандартны, сначала проверьте расчёт на тестовом примере с известным результатом, и только потом проводите реальные документы.

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

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

Рублёвое сальдо счёта 52 на конец месяца
Норма

Равно валютному остатку × курс ЦБ на последний день месяца

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

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

Операция «Переоценка валютных средств» в закрытии месяца
Норма

Присутствует, выполнена без ошибок, проводки сформированы

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

Операции нет при наличии валютных остатков или она помечена как неактуальная

ОСВ по счетам 60/62 в разрезе договоров в валюте
Норма

Рублёвая оценка долга соответствует курсу на отчётную дату

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

Оценка «застыла» на старом курсе — проверяйте валюту договора и признак валютного учёта

Сальдо 91 счёта по курсовым разницам
Норма

Суммы объясняются движением курса и валютными остатками

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

Круглые или аномально большие суммы — признак неверного курса или кратности валюты

Итог

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

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

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

Почему в закрытии месяца нет операции «Переоценка валютных средств»?

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

Переоцениваются ли валютные авансы поставщикам?

В бухгалтерском учёте — нет: аванс пересчитывается в рубли по курсу на дату перечисления и далее не переоценивается, это требование ПБУ 3/2006. В налоговом учёте порядок может отличаться в зависимости от применяемых норм, поэтому по авансам возможны временные разницы, которые программа отразит при расчёте налога на прибыль.

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

Загрузите курсы за весь период через обработку загрузки в справочнике «Валюты», затем перепроведите валютные документы и повторно выполните закрытие месяца. Программа пересчитает рублёвые суммы и курсовые разницы по корректным курсам. Проводить такую операцию лучше до сдачи отчётности за период.

Почему курсовая разница появилась по документу, хотя месяц ещё не закрыт?

Это нормально: документы оплаты и отгрузки по валютным договорам формируют курсовую разницу в момент проведения, потому что обязательство погашается или возникает по курсу на дату операции. Закрытие месяца лишь дооценивает оставшиеся остатки на отчётную дату.

Можно ли отключить автоматическую переоценку для отдельного счёта?

Штатного переключателя «не переоценивать» у счёта нет: переоценка определяется признаком валютного учёта. Снятие признака «Валютный» остановит переоценку, но одновременно отключит валютную сумму в отчётах и нарушит учёт. Если по методологии объект не должен переоцениваться (например, аванс), правильное решение — вести его на соответствующем субсчёте авансов, а не менять настройки счёта.

Расходятся курсовые разницы в бухгалтерском и налоговом учёте — это ошибка?

Не обязательно. Различия возможны из-за разного порядка переоценки отдельных объектов (например, авансов) и применения ПБУ 18/02. Тревожный признак — расхождение по объектам, где методология БУ и НУ совпадает: тогда проверяйте курсы, ручные корректировки и настройки учётной политики.