Files
docs/features/brokerage-account-upcoming-events.md
T

3.3 KiB
Raw Blame History

Будущие события брокерского счёта

Авторизованный пользователь видит до пяти ближайших событий на обзоре /accounts/:accountId и открывает полный список известных событий Brokerage Account, доступного через текущее T-Bank connection, на /accounts/:accountId/events. Ошибка или пустой результат блока на обзоре не заменяет Portfolio.

sequenceDiagram
  participant U as User
  participant F as Frontend
  participant B as Backend
  participant T as T-Bank gRPC
  participant M as MOEX ISS
  U->>F: Открывает будущие события
  F->>B: GET /api/v1/brokerage-accounts/:accountId/events
  B->>T: GetAccounts и GetPortfolio
  B->>T: GetDividends (дивиденты по акциям)
  B->>M: Получает события облигаций
  B-->>F: Прогноз на 30 дней
  F-->>U: Компактный список событий

API

GET /api/v1/brokerage-accounts/:accountId/events требует Bearer access token. Ответ содержит accountId, calculatedAt и отсортированный по календарной дате список events.

Событие содержит type (coupon, dividend, maturity, offer), date, dateKind, идентификаторы и название Instrument, а также nullable projectedAmount как Money { currency, value }. Для offer и неизвестных денежных условий сумма не создаётся искусственно и передаётся null. Дивиденд передаёт dateKind: registry: это дата закрытия реестра, а не гарантированная дата зачисления.

Поведение и ограничения

  • Период включает текущую календарную дату и следующие 30 дней.
  • Суммы до налогов рассчитываются по текущему количеству бумаг на calculatedAt; они не учитывают будущие сделки или владение на дату реестра.
  • Список не имеет фильтров, пагинации, конвертации валют и общего итога.
  • Поддерживаются только известные события по доступным позициям: дивиденды по акциям из T-Bank GetDividends (дата фиксации реестра record_date, сумма dividend_net на бумагу; отменённые выплаты Cancelled не попадают в прогноз), а также купоны, полное погашение и оферты облигаций из MOEX bondization. Будущее частичное погашение и амортизация не синтезируются без надёжного расписания.
  • Ошибка T-Bank или MOEX возвращает 503 без частичного списка. Инструмент без поддерживаемых данных не создаёт строку «нет данных».