🧩 Юнит

Unit — это базовая и ключевая организационная сущность вашей бизнес-структуры в системе Monocrypt. Юнит представляет собой отдел, департамент, проект или любое другое подразделение внутри компании, которое управляет своими кошельками, клиентами и финансовыми операциями.


🧱 Структура и иерархия Юниты могут иметь вложенные юниты (children), образуя иерархическую модель управления, где родительские подразделения контролируют дочерние. Это позволяет гибко строить корпоративную структуру, например:

  • Головная компания → Региональный офис → Отдел продаж

  • Холдинг → Дочерняя компания → Проектная команда


⚙️ Важная особенность Unit — это самая важная сущность в системе. Практически все API-запросы (создание клиентов, инвойсов, кошельков, выплат и т.д.) требуют указания ID или UUID юнита, с которым выполняются действия. Без корректного unitId невозможно связать финансовые операции и учётные данные между собой.


💡 Пример: Чтобы создать клиента или инвойс, необходимо заранее определить, в каком юните они будут находиться. Это обеспечивает прозрачность, безопасность и разделение ответственности между подразделениями.


📘 Общая структура

{
    "id": 239,
    "createdAt": "2025-10-16T12:18:50.778Z",
    "updatedAt": "2025-10-16T12:18:50.778Z",
    "uuid": "b8234610-677a-4e0a-814d-ebe494c15625",
    "name": "DEMO",
    "rootUnitId": 49,
    "parentId": null,
    "adminIds": [],
    "description": null,
    "isActive": true,
    "logo": null,
    "wallets": Wallet[],
    "children": Unit[],
    "totalBalances": {
      "TRX": "51.278",
      "USDT": "133.245545",
      "ETH": "0.000000000425698452",
      "USDC": "0",
      "BTC": "0"
    }
  }

🧩 Поля сущности

Поле
Тип
Nullable
Описание

id

number

Уникальный числовой идентификатор юнита

uuid

string

Уникальный UUID юнита

name

string

Название юнита (например, “iGaming”, “E-Commerce”)

description

string

Описание или комментарий

isActive

boolean

Статус активности юнита

logo

string (URL)

Ссылка на логотип юнита

rootUnitId

number

Идентификатор корневого юнита компании

parentId

number

ID родительского юнита, если юнит вложенный

adminIds

array<number>

Список ID администраторов, управляющих юнитом

wallets

array<Wallet>

Список кошельков, принадлежащих юниту

children

array<Unit>

Список вложенных (дочерних) юнитов

totalBalances

object

Агрегированные балансы по всем валютам юнита и его дочерних юнитов

createdAt

string (ISO 8601)

Дата создания юнита

updatedAt

string (ISO 8601)

Дата последнего обновления


🪙 Структура объекта totalBalances

Ключ
Тип
Описание

TRX

string

Сумма всех TRX на кошельках юнита и его дочерних подразделений

USDT

string

Сумма всех USDT

ETH

string

Сумма всех ETH

USDC

string

Сумма всех USDC

BTC

string

Сумма всех BTC

💡 Балансы агрегируются рекурсивно: если юнит имеет дочерние юниты, их балансы также включаются в totalBalances.


🔗 Связанные сущности

Поле
Связь
Сущность
Тип связи

wallets

содержит

One-to-Many

children

содержит

Unit

Recursive One-to-Many

parentId

ссылается на

Unit

Many-to-One

clients

(непосредственно не возвращается, но логически связан)

One-to-Many

invoices

(по аналогии)

One-to-Many

Last updated

Was this helpful?