Скип на основной контент

Управляемые инвестиции

Одна сторона обеспечивает капитал, другая обеспечивает работу. Прибыль делится на согласованное соотношение. Убыток падает на капитал.

Суть в том, что менеджер, который теряет деньги предприятия, теряет работу, вложенную в него, и уходит, ничего не имея; инвестор теряет деньги. Ни один из результатов не является штрафом — это разделение риска, на которое фактически согласились обе стороны. API Принудить его: record_loss Никогда не трогайте бухгалтерскую книгу менеджера, и прибыль менеджера не является платой, которая выживает в плохой год.

Базовый путь: /api/v1/pfp/managed-investments · Религиозное чтение: Мудараба


Два мандата​

mandate_typeМенеджер может
restricted (по умолчанию)Инвестировать только в заявленное поле и внутри business_restrictions
unrestrictedИнвестировать по собственному усмотрению

business_restrictions является перечнем строк и учитывается при выполнении мандата restrictedЭто отчет о соглашении, а не механизм исполнения — платформа хранит его и отчитывается о нем; она не проверяет индивидуальные инвестиции против него.


Статус​

draft ──submit──> under_review ──review──> review_passed
│ │ │
│ └──reject──> rejected │
│ │
└──────────────── fund ───────────────────────┘
│
v
funded ──activate──> active
│ │
└────── complete ────┴──> completed
│
loss wipes out │ current_value
v
liquidated
статусЗначение
draftЗаписанные термины
under_reviewПредставлен на утверждение
review_passedЗаключение прилагается
rejectedТерминал. Требуется а reason
fundedКапитал передан управляющему
activeМенеджер управляет предприятием; прибыль и убыток могут быть зарегистрированы.
completedУстанавливается на срок
liquidatedСтолица была уничтожена

completed и liquidated Предприятие, которое потеряло свой капитал, не является тем же событием, что и предприятие, которое провело свой срок и урегулировало, и крах этих двух сделает неудачный контракт неотличимым от успешного в любом отчете, построенном на статусе.

Нет никакого liquidate Конечная точка: платформа устанавливает liquidated момент, когда зарегистрированная потеря приводит к current_value до нуля. actual_end_date устанавливается одновременно.

В светском чтении fund досягаемости от draft а также как и review_passed.


Создать контракт​

POST /api/v1/pfp/managed-investments
{
"customer_id": "8f2a1c44-0b6e-4d51-9a3f-1c8e5b7d2a90",
"region": "RU",
"currency": "RUB",
"capital_amount": "2000000000",
"business_type": "Wholesale distribution of building materials",
"business_description": "Regional distribution across Tatarstan and Mari El",
"mandate_type": "restricted",
"business_restrictions": ["No trade financing", "No FX positions"],
"profit_sharing_ratio": { "bank": 30, "customer": 70 },
"term_months": 24,
"reporting_frequency": "quarterly"
}
Полное полеТипТребуемыйЗаметки
customer_iduuid✅Менеджер
regionstring✅Контрактный регион
currencystring✅ISO 4217
capital_amountstring✅Небольшие единицы. bank боковая сторона
business_typestring✅Предприятие, которым будет управлять менеджер
profit_sharing_ratioobject✅{"bank": n, "customer": m}Целый процент, Должен суммировать 100
term_monthsinteger✅1–120
mandate_typeenum—restricted (по умолчанию) | unrestricted
business_restrictionsarray—Струны
business_descriptionstring—Бесплатный текст
reporting_frequencyenum—monthly | quarterly | semi_annually | annually
metadataobject—Возвращение нетронутых

Обратите внимание на соотношение в примере: менеджер берет 70 Это нормально для этого продукта — вклад менеджера — это работа, и она оценивается в доле прибыли.


Переходы жизненного цикла​

POST /api/v1/pfp/managed-investments/{id}/submit     # no body
POST /api/v1/pfp/managed-investments/{id}/review # approved_by required
POST /api/v1/pfp/managed-investments/{id}/reject # reason required
POST /api/v1/pfp/managed-investments/{id}/fund # no body
POST /api/v1/pfp/managed-investments/{id}/activate # no body

fund Записи о том, что столица была передана. activate Записи о том, что менеджер начал торговать — прибыль и убыток принимаются только от active.


прибыль​

POST /api/v1/pfp/managed-investments/{id}/profit
{
"gross_profit": "180000000",
"period_end_date": "2026-12-31"
}

Требуются оба поля. Валовая прибыль делится на profit_sharing_ratio и Доля менеджера перемещается на него путем публикации в бухгалтерской книге датированный period_end_dateЭто не начисление на бумаге.

Каждый дистрибутив прилагается к истории:

{
"profit_distributions": [
{
"date": "2026-12-31",
"gross_profit": "180000000",
"bank_share": "54000000",
"customer_share": "126000000"
}
]
}

current_value — позиция инвестора — растет на долю инвестора, а не на валовую.

Нуль - это законный отчет. Период, который ничего не заработал, все еще закрывается: отправьте "0" Отрицательная валовая прибыль отклоняется — убыток представляет собой другой переход с другой арифметикой.


Потеря​

POST /api/v1/pfp/managed-investments/{id}/loss
{
"amount": "40000000",
"period_end_date": "2027-03-31"
}

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

Сторона менеджера не тронута. Не существует когтей ранее распределенных акций прибыли и долгов, созданных против менеджера.

История уходит в metadata.losses не в своей области, в отличие от profit_distributions:

{
"metadata": {
"losses": [
{ "date": "2027-03-31", "loss_amount": "40000000", "new_value": "1960000000" }
]
}
}

В отличие от прибыли, в убытке ноль отказано: записывать нечего.

Убыток также авансирует отчетную дату точно так же, как и распределение прибыли. Период, закрытый в убыток, по-прежнему является отчетным периодом.


Урегулировать в срок​

POST /api/v1/pfp/managed-investments/{id}/complete
{ "final_value": "2200000000" }

Достижимый от funded и activeНаборы actual_end_date, пишет current_value to final_valueи фиксирует расчеты в metadata.final_settlement:

{
"final_settlement": {
"returned_to_bank": "2014000000",
"total_profit": "180000000",
"total_loss": "40000000"
}
}

returned_to_bank is capital_amount + bank_profit_share − total_loss — возврат капитала, плюс накопленная инвестором доля прибыли, за вычетом понесенных убытков.


Перечислить и прочитать​

GET /api/v1/pfp/managed-investments
Параметр запросаценности
statusлюбой статус выше
regionКонтрактный регион
typerestricted | unrestricted
customer_iduuid
envtest | prod
GET /api/v1/pfp/managed-investments/{id}