Договор РЕПО

В типовой конфигурации необходимо реализовать учет операций РЕПО, не являющейся профессиональным участником рынка ценных бумаг. Под сделкой типа РЕПО понимается сделка по продаже ценных бумаг (ЦБ), при продаже которых у организации возникает обязательство по обратному выкупу указанных ценных бумаг через определенный срок по заранее фиксированной цене. Оценка стоимости ЦБ для целей бухгалтерского и налогового учета осуществляется по средней цене. Оценка первоначальной стоимости ЦБ в бухгалтерском и налоговом учете может различаться. Для целей ПБУ 18/02 она квалифицируется как постоянная разница. В договоре РЕПО указывается Контрагент по сделке РЕПО, Ценная бумага, Количество, Дата продажи в РЕПО, Цена продажи, Дата выкупа из РЕПО, Цена выкупа. В Бухгалтерском учете на дату фактической продажи ЦБ по первой части РЕПО организация признает операционный доход от продажи ЦБ. Сумма поступлений от продажи ЦБ отражается по Дт счета 76 и Кт счета 91 субсчет «Прочие доходы». Стоимость проданных ЦБ признается операционным расходом и списывается со счета 58 субсчет «Паи и акции», в дебет счета 91 «Прочие расходы» Выкупленные ЦБ принимаются к учету по цене выкупа, указанной во второй части сделки РЕПО. Стоимость выкупленных ЦБ отражается по Дт счета 58 «Паи и Акции», в корреспонденции со счетом 76. В налоговом учете доходы (убытки) от реализации ценных бумаг по первой части операции РЕПО не учитываются при определении налоговой базы, таким образом, на дату реализации ЦБ по первой части сделки РЕПО у организации в налоговом учете доходов и расходов не возникает. Для целей налогообложения выкупленные бумаги из РЕПО принимаются к учету по той цене, по которой они учитывались при передаче в РЕПО. На дату выкупа ЦБ разница между ценой приобретения ЦБ по второй части сделки РЕПО и ценой реализации ЦБ по первой части РЕПО включается в состав внереализационных расходов. Предельная величина расхода принимается равной ставке рефинансирования Центрального банка РФ, увеличенной в 1.1 раза. Расчет производится по формуле: SxP*1.1xD/365/100, где S – реально поступившая сумма по первой части сделки РЕПО, P – ставка рефинансирования Центробанка, D – срок действия договора РЕПО в днях (от даты поступления по первой части РЕПО до даты оплаты выкупаемых во второй части РЕПО)

Решение

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

org2

создадим рублевый счет

schet2

В учетной политике с начала 2016 года указываем применение расчетов по налогу на прибыль, система налогообложения общая:

uchetPolit 2

Для дальнейших действий потребуется контрагент (в справочнике «контрагенты»), ценными бумагами которого мы владеем, назовем его «АО Орг. ЦБ» :

orgCB_2

Сначала ценные бумаги должны как то появится в базе, для этого создадим объект справочника ЦБ, назовем «ЦБ Первый выпуск»:

cb

В задаче сказано: «Оценка первоначальной стоимости ЦБ в бухгалтерском и налоговом учете может различаться. Для целей ПБУ 18/02 она квалифицируется как постоянная разница«, это значит, что в проводке по «созданию» ЦБ (ценных бумаг) есть сумма по БУ (бухгалтерскому учету) и НУ (налоговому учету) в части ПР (постоянных разниц). Что такое ПР и ВР в налоговом учете, можно поискать в интернете. В условии сказано, что учет ЦБ ведется на счете 58, первая проводка будет выглядеть следующим образом:

1) Дт 58.01.2 Кт 000 Сумма 10000 руб., НУ = 9000 руб., ПР = 1000 руб. Субконто1: Контрагенты — АО Орг. ЦБ, Субконто2: ЦБ Первый выпуск, Кол-во 10 штук

oper15

Почему так а не как-то по другому?

Cумма постоянных разниц и сумма по налоговому учету взята «с потолка», но подчиняется известной формуле: БУ = НУ + ПР + ВР, 10000=9000 + 1000.

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

Comm

Вид кнопки на форме (из конфигуратора):

formaDogovor

В условии сказано «В договоре РЕПО указывается Контрагент по сделке РЕПО, Ценная бумага, Количество, Дата продажи в РЕПО, Цена продажи, Дата выкупа из РЕПО, Цена выкупа.«. Добавляем регистр сведений «РЕПО» с измерениями и ресурсами как показано на рисунке:

RS_REPO

Реквизит «ЦеннаяБумага» имеет тип Справочник.ЦенныеБумаги, все измерения (Организация и Договор) сделаем индексируемыми (Свойства->Индексировать).

Создаем форму записи этого регистра, запрещаем для изменения поля организация, договор и контрагент (они будут заполняться автоматически):

formaREPO

Теперь сделаем так, что бы при нажатии на кнопку «Договор РЕПО» формы Договора контрагента открывалась форма записи регистра сведений РЕПО, связанной с этим договором. Для этого в модуле команды разместим код передающий в форму записи регистра сведений необходимые параметры (ключ записи, если не пустой, и параметры договора для создания новой записи регистра):

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)

  ПараметрыФормы = Новый Структура(«Договор, Ключ», ПараметрКоманды,
    ПолучитьКлючЗаписи(ПараметрКоманды));

    ОткрытьФорму(«РегистрСведений.РЕПО.ФормаЗаписи»,
    ПараметрыФормы,
    ПараметрыВыполненияКоманды.Источник,
    ПараметрыВыполненияКоманды.Уникальность,
    ПараметрыВыполненияКоманды.Окно,
    ПараметрыВыполненияКоманды.НавигационнаяСсылка);

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

&НаСервере
Функция ПолучитьКлючЗаписи(ПараметрКоманды)

ПараметрыЗаписи = Новый Структура(«Договор», ПараметрКоманды);
  Выборка = РегистрыСведений.РЕПО.Выбрать(ПараметрыЗаписи);
  Ключ = Неопределено;
  Если Выборка.Следующий() Тогда
    Ключ = РегистрыСведений.РЕПО.СоздатьКлючЗаписи(
      Новый Структура(«Организация, Договор»,
      ПараметрКоманды.Организация,
      ПараметрКоманды));
  КонецЕсли;
Возврат Ключ;

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

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

   Запись.Договор = Параметры.Договор;
   Запись.Организация = Параметры.Договор.Организация;
   Запись.Контрагент = Параметры.Договор.Владелец;

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

При записи договора РЕПО отслеживаем что бы были заполнены все поля, для этого в форме записи размещаем код:

&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)

//проверить заполненость полей
ПП = новый Массив;
ПП.Добавить(«ДатаНачалаДоговора»);
ПП.Добавить(«НомерДоговора»);
ПП.Добавить(«ЦеннаяБумага»);
ПП.Добавить(«Количество»);
ПП.Добавить(«ДатаПродажиРЕПО»);
ПП.Добавить(«ЦенаПродажи»);
ПП.Добавить(«ДатаВыкупаРЕПО»);
ПП.Добавить(«ЦенаВыкупа»);

для каждого поле из ПП цикл
   Если Не ЗначениеЗаполнено(Запись[поле]) тогда
      сообщить(«Не заполнено поле « + поле);
      Отказ = Истина;
   КонецЕсли;
КонецЦикла;

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

Теперь можно добавлять договоры РЕПО к обычным договорам. Добавим в этой форме команду и кнопку удаления записи регистра сведений РЕПО, обработчик команды будет выглядеть так:

&НаКлиенте
Процедура УдалитьЗапись(Команда)
   УдалитьЗаписьСервер();
   ЭтаФорма.Закрыть();
КонецПроцедуры

&НаКлиенте
Процедура УдалитьЗаписьСервер()
   РЕПО = РегистрыСведений.РЕПО;
   ТекЗапись = РЕПО.СоздатьМенеджерЗаписи();
   ТекЗапись.Организация = Запись.Организация;
   ТекЗапись.Договор = Запись.Договор;
   ТекЗапись.Прочитать();
   ТекЗапись.Удалить();
КонецПроцедуры

Установим использование статей затрат в бухгалтерских проводках, для этого зайдем в меню «Главное -> Параметры учета -> закладка «Банк и касса» и установим галку «По статьям движения денежных средств».

statiyzatratuse

В справочнике «Прочие доходы и расходы» (меню: Справочники -> Прочие доходы и расходы) добавим элемент «Прочие операционные доходы (расходы)», вид движения одноименный, для целей НУ — не принимается.

prochdr

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

sdds

На начало моделируемого периода 01.01.2016 установим ставку налога на прибыль: Справочники -> раздел «Налоги» -> Ставки налога на прибыль, форма справочника заполнится сама собой, кроме даты.

nalogВ бухгалтерский план счетов добавим забалансовый счет (код счета обязательно трехзначный) АКЦ:
* Код «АКЦ»
* Вид — «Активный»
* Наименование «Акции в РЕПО»
* Забалансовый
* Количественный
* Виды субконто: Контрагенты (Суммовой, количественный), Договоры (Суммовой, количественный)
* Налоговый учет

aksnu

Допустим, появился покупатель ЦБ, назовем его «Покупатель ЦБ» и внесем в базу (меню:Справочники-> раздел «Покупки и продажи» -> Контрагенты):

newcust

Добавим договор с видом «Прочее» с этим контрагентом: кнопка «Договоры», добавить элемент и заполнить как показано на рисунке:

dogrepo

Добавляем данные договора по кнопке «Печать»->»Общая команда РЕПО»

addrepo

Сама продажа состоит из 2-х этапов:
* Перечисление денег от покупателя нам;
* Отражение сумма дохода от продажи акций по первой части;
* Списание стоимости акций.

Внесем покупателя в систему — справочник «Контрагенты»

Полезные ссылки:

Специалист 1С Бухгалтерия

РЕПО

Курс лекций по бухгалтерскому учету

Статьи движения денежных средств и Отчет ДДС

Продолжение следует…