> ## Documentation Index
> Fetch the complete documentation index at: https://omniflow-vpn.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Сравнение с альтернативами

> Чем Omniflow отличается от Bedolaga Bot, Bedolaga Cabinet и RemnaCore.

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

> [!NOTE]
>
> Bedolaga Bot и RemnaCore сравнивались 11 августа 2026 года по их публичным веткам `main` и с тех пор не перепроверялись. Строки по Bedolaga Cabinet перепроверены 14 августа 2026 года по опубликованному перечню возможностей версии 1.61.0 — он подробнее README, по которому делался первый проход, и именно поэтому ниже появилось несколько новых строк. Колонка самого Omniflow отслеживает этот репозиторий и обновлялась 14 августа 2026 года. Наборы возможностей меняются быстро. Проверьте по исходному репозиторию, прежде чем принимать решение, и заведите issue, если что-то здесь устарело или несправедливо.

## Проекты

| Проект | Что это | Лицензия | Стек |
| - | - | - | - |
| **Omniflow** | Telegram-first платформа коммерции и поддержки для Remnawave с полноценными веб-панелями оператора и клиента | Apache-2.0 | Go 1.26, PostgreSQL 18, Valkey 9, River, Next.js 16 / React 19 |
| **[Bedolaga Bot](https://github.com/BEDOLAGA-DEV/remnawave-bedolaga-telegram-bot)** | Зрелый Telegram-бот продаж для Remnawave, администрируемый изнутри Telegram | MIT | Python 3.13, aiogram 3.x, FastAPI, PostgreSQL + SQLAlchemy, Redis |
| **[Bedolaga Cabinet](https://github.com/BEDOLAGA-DEV/bedolaga-cabinet)** | Веб-кабинет клиента для Bedolaga Bot; требует Cabinet API этого бота | AGPL-3.0 | React, Vite, TypeScript, Tailwind, Nginx |
| **[RemnaCore](https://github.com/BEDOLAGA-DEV/RemnaCore)** | Модульная DDD-платформа поверх Remnawave с поддержкой реселлеров и плагинов; помечена как находящаяся в разработке | AGPL-3.0 | Go 1.26, PostgreSQL 18, Valkey 9, NATS JetStream, Extism/wazero WASM, React 19 |

Различия в лицензиях стоит прочитать внимательно. Omniflow под Apache-2.0, которая разрешает закрытые модификации и включает явную патентную лицензию. Bedolaga Bot под MIT. Bedolaga Cabinet и RemnaCore под AGPL-3.0, которая распространяет копилефт-обязательства на пользователей, обслуживаемых по сети.

## Как читать таблицы

| Обозначение | Значение |
| - | - |
| ✅ | Доступно сегодня |
| 🚧 vX.X | Запланировано; см. [дорожную карту](https://github.com/kewldan/omniflow/blob/main/ROADMAP.md) |
| 🔭 | Кандидат на период после 1.0, не запланировано |
| ❌ | Намеренно не планируется |
| — | Не описано в публичном README этого проекта |

Прочерк означает, что возможность отсутствует в собственной публичной документации проекта. Внутренние детали реализации, такие как устройство книги проводок или обработка идемпотентности, могут существовать в коде, не появляясь в README, поэтому считайте прочерк «не проверено», а не доказанным пробелом.

Строки с 🔭, появившиеся после разбора Bedolaga Cabinet 1.61.0 от 14 августа 2026 года, собраны в дорожной карте в разделе [Post-1.0 product gaps](https://github.com/kewldan/omniflow/blob/main/ROADMAP.md). Там у каждой сказано, что есть в Omniflow сегодня и чего стоит её отсутствие, — то, что не помещается в одну ячейку таблицы.

Сегодняшняя поставленная функциональность Omniflow — это v0.1–v0.10: полная серверная коммерческая модель, функционально завершённый Telegram-бот, пополнение кошелька с отложенными корзинами, дополнения, необязательные параллельные подписки, продакшен-рантайм с пробами здоровья, метриками, трассировкой, зашифрованными резервными копиями и режимом обслуживания, полноценная панель оператора — вход с двухфакторной аутентификацией, необязательный OIDC, гранулярный RBAC, журнал аудита только на добавление и повседневные экраны для клиентов, финансов, каталога, поддержки, маркетинга, рисков и всех настроек установки, — а также полноценная клиентская веб-панель: вход, подписки, оформление заказа, кошелёк, магазин цифровых товаров, поддержка, новости, реферальная программа, лояльность и собственный экспорт данных клиента и запрос на удаление. Осталась v1.0: это работа по выпуску, а не продуктовая функциональность.

## Подписки и тарифы

| Возможность | Omniflow | Bedolaga | RemnaCore |
| - | - | - | - |
| Гибкие периоды и сроки | ✅ | ✅ | ✅ |
| Версионирование цен тарифов, чтобы исторические заказы не менялись | ✅ | — | ✅ |
| Режимы трафика: безлимитный, фиксированный, пакеты | ✅ | ✅ | ✅ |
| Лимиты устройств или отключённые лимиты | ✅ | ✅ | ✅ |
| Пробный период, включая платный с конверсией | ✅ | ✅ | ✅ |
| Автоматическое назначение сквадов | ✅ | ✅ | ✅ |
| Клиентский конфигуратор подписки с наборами сквадов для каждого тарифа | ✅ | ✅ | ✅ |
| Докупка трафика, устройств и сквадов в середине периода | ✅ | ✅ | ✅ |
| Умная корзина, переживающая нехватку баланса | ✅ | ✅ | — |
| Автопродление до истечения | ✅ | ✅ | ✅ |
| Несколько одновременных подписок у одного клиента | ✅ (по желанию) | — | ✅ |
| Пауза подписки с сохранением оставшихся дней | ✅ | ✅ | — |

## Платежи и работа с деньгами

| Возможность | Omniflow | Bedolaga | RemnaCore |
| - | - | - | - |
| Встроенные платёжные провайдеры | 4: Telegram Stars, CryptoBot, YooKassa, ручной | 24+ | только плагин Stripe |
| Провайдеро-независимый контракт адаптера | ✅ | ✅ | ✅ (плагины WASM) |
| Пополнение кошелька любым включённым провайдером | ✅ | ✅ | — |
| Автоматическая покупка после пополнения | ✅ | ✅ | — |
| Рекуррентные платежи с сохранёнными картами | ✅ | ✅ | ✅ |
| Переопределение поддержки рекуррентов для отдельного мерчанта | ✅ | — | — |
| Опрос статуса платежа и сверка | ✅ | ✅ | ✅ |
| Книга проводок клиента с двойной записью и только на добавление | ✅ | — | ✅ |
| Ключи идемпотентности на каждой мутации заказа и платежа | ✅ | — | ✅ |
| Приём вебхуков, устойчивый к повторам, с хранением сырых событий | ✅ | — | ✅ |
| Полные и частичные возвраты без переписывания истории | ✅ | ✅ | ✅ |
| Граница метаданных фискализации | ✅ | ✅ | — |
| Адаптер фискализации для самозанятых | 🔭 | ✅ | — |
| Гостевое оформление заказа без авторизации | 🔭 | ✅ | — |
| Валюта отображения с курсами | 🔭 | ✅ | — |

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

Противовес со стороны Omniflow — финансовая модель. Каждая мутация заказа и платежа несёт ключ идемпотентности, приём вебхуков устойчив к повторам и сохраняет сырые события, а балансы выводятся из книги проводок с двойной записью и только на добавление, где исправления — это компенсирующие проводки, а не обновления. Эти инварианты задокументированы и покрыты тестами — см. [Финансовые инварианты](https://omniflow-vpn.mintlify.site/ru/commerce/financial-invariants.md).

## Маркетинг и рост

| Возможность | Omniflow | Bedolaga | RemnaCore |
| - | - | - | - |
| Промокоды | ✅ | ✅ | ✅ |
| Типы промовознаграждений: сумма, процент, дни, пробный период | ✅ | ✅ | — |
| Персональные адресные предложения | ✅ | ✅ | — |
| Реферальная программа с неизменяемой атрибуцией | ✅ | ✅ | ✅ |
| Вывод реферального баланса | 🔭 | ✅ | — |
| Партнёрская программа | 🔭 | ✅ | ✅ (реселлеры) |
| Отчётность по многоуровневой реферальной сети | 🔭 | ✅ | ✅ |
| Подарочные подписки | ✅ | ✅ | — |
| Обязательная подписка на канал с автоотключением | ✅ | ✅ | — |
| Рассылки по сегментам и отслеживание кампаний | ✅ | ✅ | — |
| Согласия, тихие часы, ограничения частоты, исключения | ✅ | — | — |
| Собственные лендинги с аналитикой | ❌ | ✅ | — |
| Конкурсы и ежедневные игры | 🔭 | ✅ | — |
| Оптовые партии кодов для реселлеров с отзывом всей партии | ✅ | ✅ | — |
| Рекламные счётчики, офлайн-конверсии и теги верификации сайта | ✅ | ✅ | — |

Omniflow принудительно соблюдает маркетинговые согласия, тихие часы, ограничения частоты и дедупликацию доставки, а также разделяет транзакционную и маркетинговую классификацию. Эти ограничения были построены раньше инструментов кампаний, которые теперь их используют, и именно такой порядок заставляет их работать: список исключений, добавленный после первой рассылки, — это список, из-за которого кого-то уже пропустили.

Измерение рекламы стоит понять, а не прочитать как галочку. Платёж проходит на бэкенде, иногда через сутки после клика, с которого всё началось, поэтому рекламная система не узнаёт ничего, пока идентификатор клика не будет перенесён в заказ и не вернётся обратно офлайн-конверсией, — именно поэтому один скрипт счётчика не атрибутирует ничего. Теперь Omniflow его переносит: идентификатор захватывается на посадочной странице, хранится first-party тридцать дней, привязывается к заказу и попадает в выгрузку, когда заказ оплачен. Два ограничения сделаны намеренно. Счётчик — это идентификатор провайдера, проверяемый по форме, а не фрагмент кода: поле настроек, принимающее скрипт, выполняло бы произвольный код в браузере каждого клиента. И это программное обеспечение ничего не загружает само — выгрузка это файл, который передаёт оператор, — тогда как Bedolaga вызывает conversion API платформы напрямую. Это собственная аналитика оператора, а не телеметрия проекта: выключенная по умолчанию и показываемая только посетителю, который на это согласился. См. [Измерение рекламы](https://omniflow-vpn.mintlify.site/ru/operations/advertising-measurement.md) и [Телеметрию](https://omniflow-vpn.mintlify.site/ru/operations/telemetry.md) для границы между этими двумя вещами.

## Администрирование

Колонка Bedolaga в этой таблице покрывает бота и кабинет вместе, потому что именно так административная поверхность и поставляется: бот администрирует из Telegram, а кабинет добавляет веб-панель поверх того же Cabinet API.

| Возможность | Omniflow | Bedolaga (бот + кабинет) | RemnaCore |
| - | - | - | - |
| Администрирование изнутри Telegram | ❌ | ✅ | — |
| Уведомления операторам в темы Telegram с автосозданием | ✅ | ✅ | — |
| Автоматические резервные копии базы данных с восстановлением из бота | ✅ | ✅ | — |
| Режим обслуживания с автоопределением зависимостей | ✅ | ✅ | — |
| Мониторинг аномалий трафика и поведения | ✅ | ✅ | ✅ |
| Веб-панель администратора | ✅ | ✅ (кабинет) | ✅ |
| RBAC с гранулярными правами доступа | ✅ | ✅ | ✅ |
| События аудита только на добавление с актором, причиной и состоянием до/после | ✅ | — | — |
| Двухфакторная аутентификация TOTP и управление сессиями | ✅ | — | ✅ |
| Загрузка внешних списков блокировок | ✅ | ✅ | — |
| Массовый импорт/экспорт с предпросмотром и возобновлением | ✅ | ✅ | — |
| Служба поддержки с очередями, назначением, SLA и внутренними заметками | ✅ | ✅ | — |
| Настройки установки, редактируемые без SQL и доступа к оболочке | ✅ | ✅ | — |
| Поддержка с помощью ИИ, анализ мошенничества, копилот администратора | ✅ (опционально, по умолчанию выключено) | — | — |
| MCP-клиент и собственный MCP-сервер | ✅ (опционально, по умолчанию выключено) | — | — |
| Отчёты по продажам за произвольный период | ✅ | ✅ | — |
| Здоровье платежей: доля успешных по провайдерам | ✅ | ✅ | — |
| Отчёты по трафику в разрезе узлов, с экспортом | ✅ | ✅ | — |
| Обнаружение шеринга аккаунта по уникальным адресам | 🔭 | ✅ | — |
| Публикуемые оператором инфостраницы: FAQ, правила, оферта, политика | ✅ | ✅ | — |
| Переопределение текстов транзакционных сообщений оператором | ✅ (Telegram) | ✅ (e-mail) | — |
| White-label-оформление: палитра, логотип, разрешённые темы | ✅ | ✅ | — |
| Командная палитра и живые обновления без перезагрузки | 🔭 | ✅ | — |
| Управление узлами и сквадами Remnawave из панели | ❌ | ✅ | ✅ |

Две из этих отметок — решения, а не бэклог. Управление узлами и сквадами стоит ❌ по той же причине, что и здоровье узлов с маршрутизацией ниже: Remnawave владеет узлами, хостами, сквадами и состоянием Xray, и оператор работает с ними в её собственной панели. Обнаружение шеринга стоит 🔭 с оговоркой: имеет ли Omniflow право хранить наблюдения по отдельным соединениям — это вопрос границы, и его нужно решить до того, как это станет функцией, а не после.

Строки про отчётность были самым содержательным пробелом и теперь закрыты. Панель Omniflow по-прежнему сознательно показывает фиксированное окно в 30 дней, чтобы два визита можно было сравнить; `/admin/reports` — место, где окно двигается: разбивки по виду продажи, версии тарифа и дням, конверсия триалов и доля успешных расчётов по провайдерам рядом с долей завершения — потому что уход клиента из оплаты и отказ шлюза по карте не одно и то же событие. Со времени работы над атрибуцией там же видно, сколько принёс каждый рекламный канал за тот же период.

Omniflow намеренно держит администрирование вне Telegram. Начиная с v0.5 Telegram несёт уведомления операторам и действия резервного копирования и восстановления — и ничего больше: эти два исключения сделаны потому, что инцидент — это ровно тот момент, когда браузер и панель могут быть недоступны. Все остальные средства управления живут в веб-панели, где RBAC, аудит и диалоги подтверждения можно применять единообразно.

Это настоящий компромисс. Операторы Bedolaga продуктивны в первый же день без обратного прокси, TLS и браузера. Omniflow браузер нужен — но начиная с v0.8 браузера достаточно: тарифы, провайдеры, лимиты, соединение с Remnawave, бот, резервные копии и политика сессий настраиваются из панели, без файла окружения и без SQL.

## Клиентский веб

| Возможность | Omniflow | Bedolaga Cabinet | RemnaCore |
| - | - | - | - |
| Клиентская веб-панель | ✅ | ✅ | ✅ |
| Вход через Telegram | ✅ | ✅ | ✅ |
| Вход через любого OIDC-провайдера (Google, Yandex, Discord, …) | ✅ | ✅ | ✅ (email + OAuth) |
| Запасной вход по magic-ссылке | ✅ | — | — |
| Общая система компонентов с панелью администратора | ✅ | — | ✅ |
| Паритет оформления заказа с ботом | ✅ | ✅ | ✅ |
| Проверка ключевых сценариев на соответствие WCAG 2.2 AA | ✅ | — | — |
| Вход по e-mail и паролю | ❌ (решено) | ✅ | ✅ |
| Слияние двух существующих аккаунтов с предпросмотром | ✅ | ✅ | — |
| Редактируемый оператором каталог клиентских приложений | ✅ | ✅ | — |
| История доставленных уведомлений и тестовое уведомление | ✅ | ✅ | — |
| Языки интерфейса | 2: ru, en | 4: ru, en, zh, fa | — |

Одна строка здесь заслуживает не отметки, а объяснения. Вход по e-mail и паролю — это решение, а не пункт бэклога, и теперь оно записано: в аккаунт Omniflow ведут Telegram, OIDC и ссылка, которую доставляет бот, а пароль — это учётные данные, которые можно выудить фишингом, сбросить и утечь. [Решение 0007](https://omniflow-vpn.mintlify.site/ru/architecture/decision-0007-no-customer-password.md) фиксирует, во что обходится установке это отсутствие и при каком условии пароль был бы добавлен, — так что это больше не пробел, который читается как недосмотр.

Тексты транзакционных сообщений — это та же возможность в другом канале, поэтому отметки различаются скобками. У Omniflow вообще нет почтового транспорта: всё, что установка отправляет по собственной инициативе, уходит в Telegram, поэтому девять уведомлений, которые оператор может переписать — об истечении, о трафике, о продлении, льготный период, восстановление, два сообщения о выдаче доступа и два об автосписании, — это сообщения Telegram, со справочником значений, предпросмотром на примерах значений и тестовой отправкой в группу операторов. См. [Тексты сообщений](https://omniflow-vpn.mintlify.site/ru/operations/message-wording.md).

Каталог клиентских приложений был компромиссом, а не упущением, и теперь он разрешён без потери того, что делало его компромиссом. Каталог хранится и редактируется из панели, а обе клиентские поверхности по-прежнему читают этот единственный источник — поэтому клиенту не могут в чате посоветовать одно приложение, а в браузере другое, и для добавления клиента больше не нужен релиз. Deep link проверяется по списку разрешённых схем до сохранения, потому что запись каталога становится ссылкой, которой клиенту предлагают доверять. См. [Каталог подключения](https://omniflow-vpn.mintlify.site/ru/operations/connection-catalogue.md) и [Подключение устройства](https://omniflow-vpn.mintlify.site/ru/customer/connection.md).

## Архитектура и эксплуатация

| Возможность | Omniflow | Bedolaga | RemnaCore |
| - | - | - | - |
| Язык | Go | Python | Go |
| Движок надёжных задач | River, транзакционный | — | NATS JetStream + Watermill |
| Транзакционный outbox для доменных событий | ✅ | — | ✅ (45 событий) |
| Требуется брокер сообщений | ❌ | ❌ | ✅ |
| Среда выполнения плагинов | 🔭 | — | ✅ (WASM) |
| Kubernetes, Helm, Pulumi | 🔭 | — | ✅ |
| Односерверное развёртывание через Docker Compose | ✅ | ✅ | ✅ |
| Трассировки OpenTelemetry и метрики Prometheus | ✅ | — | ✅ |
| Анонимная телеметрия с полным отказом от неё | ✅ | — | — |
| Здоровье узлов, умная маршрутизация, тест скорости | ❌ | — | ✅ |

RemnaCore — ближайший архитектурный родственник: тот же фундамент из Go, PostgreSQL 18, Valkey 9 и React 19. Расхождение — в том, что каждый проект считает обязательным. RemnaCore требует NATS JetStream и поставляет среду выполнения WASM-плагинов с развёртыванием через Kubernetes и Pulumi. Omniflow перечисляет брокер, среду выполнения плагинов и Kubernetes как кандидатов на период после 1.0 именно для того, чтобы односерверному оператору никогда не пришлось их запускать.

RemnaCore также забирается в мониторинг здоровья узлов, умную маршрутизацию и тесты скорости. Omniflow этого не делает и делать не будет: Remnawave авторитетна для узлов, хостов, сквадов и состояния Xray, а Omniflow пользуется только её поддерживаемым API. См. [Владение данными](https://omniflow-vpn.mintlify.site/ru/architecture/data-ownership.md).

## Как выбрать

**Выбирайте Bedolaga Bot**, если вам нужно самое широкое покрытие платёжных провайдеров сегодня, вы хотите администрировать всё из Telegram без развёртывания веб-панели или вам нужны механики роста вроде конкурсов, собственных лендингов и выплат по реферальной программе, которые Omniflow отложил за пределы 1.0. Если вы продаёте через платную рекламу, учтите: идентификатор клика в заказ переносят теперь оба, а различие в том, что происходит дальше, и это реальный выбор. Bedolaga вызывает conversion API платформы за вас. Omniflow отдаёт файл для загрузки, потому что сам не обращается в рекламные сети от вашего имени.

**Выбирайте RemnaCore**, если вам нужна white-label-реселлерская функциональность с учётом комиссий или вы уже работаете с Kubernetes и хотите, чтобы среда выполнения плагинов и шина событий были инфраструктурой первого класса. Учтите заявленный статус разработки, прежде чем пускать туда продакшен-трафик.

**Выбирайте Omniflow**, если вашим приоритетом является финансовая корректность — идемпотентные заказы и вебхуки, книга проводок с двойной записью и только на добавление, кредит кошелька, который нельзя применить дважды, и исполнение заказов, которое никогда не теряет успешный платёж при недоступности Remnawave, — и если вы хотите администрирование за RBAC и журналом аудита, а не в окне чата. Omniflow также является вариантом, который считает границу с Remnawave нерушимой и держит односерверную установку свободной от брокера, среды выполнения плагинов и оркестратора.

Начиная с v0.5 это дополнительно вариант, который серьёзно относится к продакшен-эксплуатации на одном сервере: пробы готовности, классифицирующие каждую зависимость без её раскрытия, метрики Prometheus, метки которых никогда не могут нести идентификатор клиента, зашифрованные резервные копии, которым доверяют только после проверки обратным чтением, и режим обслуживания, приостанавливающий новые покупки, не трогая уже взятые деньги.

> [!NOTE]
>
> Обе панели завершены по состоянию на v0.10: панель оператора — с v0.8, а клиентская панель — вход, подписки, оформление заказа, кошелёк, магазин, поддержка, реферальная программа и персональные данные — с v0.10. Клиенты могут обслуживать себя сами в браузере или в Telegram, работая с одними и теми же записями: корзина, начатая в чате, — это та же корзина, которую показывает браузер, а прочитанный в вебе ответ поддержки перестаёт быть непрочитанным в Telegram.
>
> Требования v1.0 — это работа по выпуску, а не продуктовая функциональность, и одно из них остаётся: независимый аудит безопасности аутентификации, авторизации, платежей и обращения с секретами. Оно единственное называет привлечение внешнего аудитора, а не изменение в этом репозитории. Матрица совместимости, подписанные артефакты и требования по надёжности и документации закрыты.
>
> Завершённость — не то же самое, что паритет. Тринадцать пробелов, которые дало то сравнение, с тех пор закрыты — брендирование и подача, отчётность и измерение роста, контент и коммуникации, личность и жизненный цикл, — поэтому большинство строк выше теперь читаются как ✅ с обеих сторон. Оставшиеся строки с 🔭 — это возможности, которые есть у Bedolaga Cabinet и которых нет у Omniflow, и ни одна из них не запланирована. Раздел [Post-1.0 product gaps](https://github.com/kewldan/omniflow/blob/main/ROADMAP.md) фиксирует каждую из них, закрытую или открытую, с тем, что есть сегодня, и с ценой её отсутствия.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.