How it fits together
- 01Telegram bot
- 02Billing
- 03Outbox
- 04Remnawave
Why open it up
Running a VPN service is mostly not about VPN: it is plans, payments, refunds, support and a bot people actually enjoy using. Every Remnawave operator rebuilds that glue. Omniflow is the glue, done once and properly.
A whole shop inside Telegram
- A plan catalogue with purchase, renewal and upgrade.
- Payments through Telegram Stars, CryptoBot and YooKassa.
- Promo codes, a wallet, referrals and support tickets, in Russian and English.
Money done carefully
Plans are immutable versions, so changing a price never rewrites what someone already paid for. Refunds and top-ups go through a wallet ledger, and access is granted through a transactional outbox: the payment and the job that provisions the subscription commit together, and River retries the job until Remnawave confirms it.
An admin panel with real access control
Staff sign in with Argon2id passwords, passkeys, TOTP or OIDC. Six roles decide who sees what, and every action lands in an audit log.
Stack
Go 1.26 with chi, pgx, sqlc and River; PostgreSQL 18, Valkey 9, OpenTelemetry; Next.js and shadcn/ui for the admin; documentation on Mintlify.