C
ComUnify
Глава 04

Внутренний учёт и закрытый контур

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

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

Лицевой счёт как единица учёта

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

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

Взаимозачёт по статье 410

Когда двое участников должны друг другу — один тысячу рублей за вчерашнюю помощь, другой четыреста за общее имущество, — нет смысла гонять оба платежа через банк. Один остаётся должен другому шестьсот рублей чистого зачёта. Эта операция называется зачётом встречных требований и описана в статье 410 Гражданского кодекса Российской Федерации. Применяется, когда требования однородны (например, оба денежные в одной валюте) и срок исполнения наступил. Аналогичная норма в гражданском кодексе Беларуси требует отдельной проверки по конкретной модели сообщества.

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

Этот раздел не является юридической консультацией. Перед применением механики зачёта в конкретном сообществе рекомендуется проверка юристом по применимой юрисдикции.

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

Паевые вклады и расчёт пая при выходе

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

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

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

Закрытый контур — не криптовалюта

Понятие «закрытый финансовый контур» в этой книге не имеет отношения к криптовалютам, блокчейну или суррогатным валютам в юридическом смысле статьи 27 Закона о ЦБ РФ. Российское законодательство запрещает выпуск денежных суррогатов — частных валют, которые претендуют на замену рубля. ComUnify не претендует.

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

Бонусные баллы — другой инструмент

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

Бонусные баллы намеренно не взаимозаменяемы с рублями. Их нельзя обналичить, нельзя передать другому участнику в обмен на деньги, нельзя продать. Это снижает риск признания их денежным суррогатом при корректно оформленных правилах и одновременно делает их предметом отдельной мотивационной системы внутри сообщества.

Что это даёт практически

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

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

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

Аудитируемость. Каждая запись на лицевом счёте — это событие в журнале событий (об этом подробнее в шестой главе). Штатный путь приложения не позволяет задним числом изменить или удалить запись; исправление оформляется новым событием. Если возник спор, он разрешается через предъявление истории, а не через слово казначея.

Следующая глава — про то, кто и как принимает решения о расходовании этого учёта, о приёме новых участников, о правилах работы сообщества. Учёт без правил принятия решений — половина платформы.