Cloud ERP для ресторанов и retail

Invelio

Мультитенантная облачная ERP-платформа для управления ресторанным и розничным бизнесом

Современная архитектура, DDD подход, полный цикл управления: от закупок до лояльности

О платформе

Invelio — мультитенантная облачная ERP-система нового поколения для управления ресторанным и розничным бизнесом. Платформа построена на принципах Domain-Driven Design (DDD) и обеспечивает полный цикл операционного управления: от каталогизации продукции и управления запасами до POS-терминалов, программ лояльности и аналитики.

0
Доменных пакетов
0+
Модулей системы
0
Клиентских приложения
0
Технологий в стеке
0+
Файлов документации
0
Страны эксплуатации
0
Фаз реализовано
0+
API эндпоинтов

Мультитенантность

Единая кодовая база с изоляцией данных на уровне tenant_id. Автоматическое разрешение арендатора по HTTP Host через TenantResolverSubscriber.

API-First подход

OpenAPI-спецификации для каждого модуля. Автогенерация TypeScript-типов. Три API-клиента (tenant, admin, superadmin).

Асинхронная архитектура

RabbitMQ + Symfony Messenger. 7 типов async-сообщений. Аудит в MongoDB. QueueStatsMiddleware.

Безопасность

Stateless JWT с access/refresh. Ролевая иерархия: SUPER_ADMIN → OWNER → ADMIN → MANAGER → USER. 2FA (OTPHP). Cloudflare ACM + Total TLS.

Enterprise Ready

UUID v7 ключи, bcmath для денег, PHPStan level 8, Soft-delete, PSR-6 кэш, автоматический бэкап через pg_dump + S3.

Ключевые возможности

Современный технологический стек и архитектурные решения для масштабируемого ERP-решения

Архитектура

Multi-Tenancy

Единая кодовая база с изоляцией данных на уровне tenant_id.

Безопасность

JWT Аутентификация

Stateless JWT с access/refresh. Роли: SUPER_ADMIN → OWNER → ADMIN → MANAGER → USER.

Архитектура

Асинхронные события

Symfony Messenger + RabbitMQ. 7 типов сообщений. Аудит в MongoDB.

Архитектура

DDD Архитектура

21 доменный пакет. Интерфейсы сервисов, DTO, Repository паттерн.

Разработка

OpenAPI First

Спецификации для каждого модуля. Автогенерация TypeScript-типов.

Инфраструктура

PostgreSQL + MongoDB

PostgreSQL 16 с UUID v7. MongoDB 7 для асинхронного аудита.

Безопасность

2FA / OTP

Двухфакторная аутентификация через OTPHP. Валидация номеров.

Разработка

PHP 8.4 + Symfony 8

Строгая типизация, атрибуты. PHPStan level 8.

Инфраструктура

Cloud Native

Docker Compose с 10 сервисами. GitHub Actions CI/CD.

Фронтенд

React 18 + TypeScript

Vite, Tailwind CSS, Radix UI, TanStack Query, Zustand.

Архитектура

CQRS через Messenger

Разделение команд и запросов через Symfony Messenger.

Инфраструктура

S3 Хранилище (MinIO)

Flysystem для единого S3-интерфейса.

Функциональность

Управление клиентами

Профили, сегментация, мультивалютные кошельки лояльности.

Функциональность

POS-терминал

Заказы, платежи, смены. Интеграция с фискальными регистраторами.

Функциональность

Аналитика и отчёты

Дашборды с Recharts/ApexCharts. Экспорт PDF через Dompdf.

Функциональность

QR-меню

Цифровые меню с промо. Rate-limited public API.

Функциональность

Печать (Fulfillment)

Печать чеков и этикеток. Станции фулфилмента.

Интеграции

Telegram Bot

Кастомный бот для уведомлений и управления.

Инфраструктура

Elasticsearch

Полнотекстовый поиск по товарам, заказам, клиентам.

Интеграции

iiko Интеграция

Миграция данных с iiko POS. Fryday Migration.

Функциональность

SLA & Эскалации

Трекер задач с SLA. Система эскалации.

Функциональность

Мультиязычность

i18next + react-i18next. Symfony Translator.

Технологический стек

Современный стек технологий для enterprise-решения

Backend

  • PHP 8.4Symfony 8, PHPStan 8
  • Python 3.12AI/ML сервисы
  • PostgreSQL 16UUID v7, bcmath
  • MongoDB 7Асинхронный аудит
  • RabbitMQМесседж-брокер
  • ElasticsearchПолнотекстовый поиск
  • RedisPSR-6 кэш + сессии

Frontend

  • React 18TypeScript, Vite
  • Tailwind CSSУтилитарный CSS
  • Radix UIHeadless UI
  • TanStack QueryСерверное состояние
  • ZustandКлиентское состояние
  • React Router 6SPA routing
  • ZodВалидация форм

Infrastructure

  • Docker10+ сервисов
  • GitHub ActionsCI/CD пайплайн
  • NginxReverse proxy
  • MinIOS3-совместимое хранилище
  • CloudflareACM + Total TLS
  • PrometheusМетрики и алерты
  • GrafanaДашборды

Распределение технологий

PHP 8.4 — 30% JavaScript/TS — 25% Python — 10% Терраформ — 5% YAML — 20% Markdown — 10%

Архитектура

Монолитная кодовая база с доменной архитектурой и CQRS подходом

Backend (Monolith First)

Symfony 8 фреймворк

Единый монолит с доменным разделением в 21 пакетах

API Layer

REST API с OpenAPI-спецификациями для каждого модуля

Domain Layer

DDD: Интерфейсы сервисов, DTO, Enum, Repository, Doctrine ORM

Infrastructure Layer

PostgreSQL, MongoDB, RabbitMQ, Redis, Elasticsearch, MinIO

Async Layer

Symfony Messenger + RabbitMQ (7 типов сообщений)

Frontend (Multi-App)

Admin App

Панель администратора. Основное приложение управления.

Manager App

Приложение для менеджеров заведений. POS + аналитика.

QR Menu App

Публичное приложение с rate-limited API для гостей.

Landing App

Презентационный сайт (текущая страница).

Shared Packages

@snap/api-client, @snap/ui, @snap/shared

CQRS: Разделение команд и запросов

Команды (Commands)

  • • CreateProductCommand → через Messenger → Обработчик
  • • PlaceOrderCommand → Валидация + Бизнес-логика
  • • CreateRefundCommand → Обработка возвратов

Запросы (Queries)

  • • GetProductListQuery → Прямой репозиторий
  • • SearchOrdersQuery → Elasticsearch
  • • GetDashboardQuery → Кэшированный результат

Инфраструктура

Cloud-native архитектура с Docker-оркестрацией

Docker Compose: 10 сервисов

PHP-FPM
Symfony 8 app
PostgreSQL 16
Основная БД
MongoDB 7
Аудит событий
RabbitMQ
Message broker
Elasticsearch
Поиск
Redis
Кэш + сессии
MinIO
S3 хранилище
Nginx
Reverse proxy
AI Worker
Python (OpenAI)

CI/CD Pipeline

  • GitHub Actions: PHP-CS-Fixer, PHPStan
  • PHPUnit тесты
  • Docker Build & Push
  • Автоматический бэкап БД через pg_dump + S3

Security & Network

  • Cloudflare ACM + Total TLS
  • JWT Access + Refresh tokens
  • 2FA (OTPHP)
  • Ролевая иерархия (5 уровней)

API и Аутентификация

RESTful API с мультитенантной аутентификацией

API Architecture

  • OpenAPI спецификации
    Для каждого модуля. Автогенерация TypeScript-клиентов.
  • 3 API-клиента
    Tenant Client, Admin Client, SuperAdmin Client
  • 200+ эндпоинтов
    RESTful, версионированные (/v1/, /v2/).

Auth Flow

POST /auth/login JWT Access (15m)
POST /auth/refresh Refresh Token (7d)
POST /auth/2fa OTP Валидация

Ролевая иерархия:

SUPER_ADMIN OWNER ADMIN MANAGER USER

Тенант-резолвер

TenantResolverSubscriber {

Событие: KernelRequest

Извлекает tenant_id из HTTP Host

Устанавливает в TenantContext

Все запросы проходят через TenantFilterSubscriber

Данные изолируются на уровне WHERE tenant_id = :tenant_id

}

Событийная архитектура

Асинхронное взаимодействие через RabbitMQ

Типы сообщений

  • Inventory Events

    StockUpdated, LowStockWarning

  • Order Events

    OrderPlaced, OrderStatusChanged

  • Tenant Events

    TenantProvisioned, TenantSuspended

  • Analytics Events

    MetricRecorded, ReportGenerated

Поток сообщений

Приложение Команда Bus
Bus Handler DB/S3

Middleware цепочка:

AuditMiddleware → TransactionMiddleware → QueueStatsMiddleware → Handler

Аудит: MongoDB для истории событий

QueueStatsMiddleware

Мониторинг очередей в реальном времени. Метрики по каждому типу сообщений: количество, скорость обработки, ошибки.

Фронтенд Архитектура

React 18 monorepo с Vite, Tailwind CSS и TypeScript

SSR Middleware

Vite SSR middleware для быстрого рендеринга. Отдельная сборка под каждое приложение.

UI Kit (@snap/ui)

Radix UI primitives + Tailwind. 30+ компонентов: DataTable, Modal, Form, Chart, Timeline.

API Client (@snap/api-client)

Axios-based клиент с интерцепторами для JWT, рефреша токенов.

State Management

Серверное состояние

TanStack Query (React Query) для:

  • • Кэширование API запросов
  • • Оптимистичные обновления
  • • Инвалидация кэша по событиям
  • • Пагинация и бесконечная загрузка

Клиентское состояние

Zustand для:

  • • UI состояние (модалки, сайдбары)
  • • Текущий пользователь и роли
  • • Настройки интерфейса
  • • Формы и черновики

Модель данных

PostgreSQL 16 с доменной изоляцией

Core Domain

  • Tenant (c 10+ entity)
  • Пользователи + роли
  • Организационная структура

Catalog & Inventory

  • Товары (многоуровневые)
  • Категории и атрибуты
  • Склады и остатки

Orders & POS

  • Заказы и транзакции
  • Платежи и возвраты
  • Смены и Z-отчёты

Pricing & Fiscal

  • Ценообразование (правила)
  • Налоги и ставки
  • Фискальные данные

Loyalty & CRM

  • Клиенты и сегменты
  • Баллы и кошельки
  • Кампании и триггеры

AI & Analytics

  • AI prediction models
  • Дашборды/виджеты
  • Экспорт отчётов (PDF)

Ключевые технологии БД

UUID v7
Первичные ключи
bcmath
Денежные типы
Soft-delete
Все entity
Doctrine ORM
PostgreSQL 16

Интеграции

Гибкая платформа для интеграции с внешними сервисами

i

iiko POS

Реализовано

Полная миграция с iiko на Invelio. Fryday Burger — первый успешный переход с DadliQR (OpenCart) на Invelio.

Telegram Bot

Реализовано

Кастомный Telegram бот для уведомлений о заказах, отчётов и управления. Webhook интеграция.

Фискальные рег-ры

Реализовано

Поддержка фискальных регистраторов. Чекопечать, Z-отчёты, фискальные накопления.

S3 (MinIO)

Реализовано

Flysystem для единого S3-интерфейса. Изображения, документы, бэкапы.

Elasticsearch

Реализовано

Полнотекстовый поиск по товарам, заказам, клиентам. Синонимы и автодополнение.

OpenAI AI

Реализовано

AI-сервисы на Python. Прогнозирование продаж, анализ тональности, автозакупки.

Telegram Bot Архитектура

/start → Register (user → tenant binding)

/report → GetDailyReportQuery → PDF

/order N → GetOrderDetailQuery

Webhook → TelegramWebhookController → MessageHandler

Безопасность

Многоуровневая система защиты данных

Аутентификация

  • JWT Access Token 15 минут
  • Refresh Token 7 дней
  • 2FA (OTPHP) TOTP
  • Stateless Auth JWT

Авторизация

Ролевая иерархия с descending permissions:

SUPER_ADMIN Полный доступ ко всем тенантам
OWNER Владелец бизнеса
ADMIN Управление заведением
MANAGER Оперативное управление
USER Базовый доступ

Инфраструктурная

  • Cloudflare ACM + Total TLS
  • HSTS заголовки
  • CORS политики

Прикладная

  • Rate Limiting
  • Валидация номеров
  • XSS-фильтры

Данные

  • Tenant-изоляция (SQL)
  • Аудит в MongoDB
  • Автоматический бэкап

Модули системы

21 доменный пакет с Doctrine ORM, разделённый по функциональным областям

Пакет Описание Entity Статус
CoreБазовые entity (User, Role, Permission)10+
AuthJWT, 2FA, OAuth, регистрация8+
TenantМультитенантность, подписки, лимиты10+
CatalogТовары, категории, атрибуты, модификаторы10+
InventoryСклады, остатки, перемещения, инвентаризация8+
PricingЦенообразование, правила, акции6+
KitchenКухня, принтеры станций, статусы6+
POSTerminal, Order, Payment, Shift10+
CustomerКлиенты, сегменты, адреса, контакты6+
MenuQR-меню, модификаторы, промо6+
StorageS3 (MinIO), Upload, Image processing4+
ReferenceСправочники: города, валюты, налоги8+
AIOpenAI Python микросервис + интеграция4+
TaskЗадачи, SLA, эскалации6+
PurchasingЗакупки, поставщики, контракты8+
FiscalФискальные данные, налоги, отчёты6+
BillingПодписки, инвойсы, payment methods6+
PrintingПечать, шаблоны, фулфилмент4+
CredentialAPI-ключи, интеграции токены4+
Backuppg_dump -- S3, автоматическое расписание2+
SuperadminУправление тенантами, мониторинг6+
— Реализовано — В процессе

Тестирование и QA

Многоуровневая стратегия обеспечения качества

PHPStan
Level 8

Максимальный уровень статического анализа

PHPUnit
CI/CD

Юнит-тесты для каждого модуля

CS-Fixer
PSR-12

Автоматическое форматирование кода

TypeScript
strict

Полная типизация фронтенда

Pipeline качества

Commit PHP-CS-Fixer PHPStan 8 PHPUnit Deploy

Мониторинг и Observability

Полная наблюдаемость системы в реальном времени

Grafana

Визуализация метрик. Дашборды для бизнеса и технические. CPU, RAM, RPS, Latency p95.

Prometheus

Сбор метрик: очередь сообщений, запросы к БД, HTTP статусы, бизнес-метрики.

Логирование

Структурированные логи. MongoDB для аудита событий. QueueStatsMiddleware.

Ключевые метрики

p95 < 200ms
Latency API
99.9%
Uptime
10000/s
RPS capacity
15m
Alert response

Анализ рынка

ERP и ресторанный рынок: возможности и позиционирование

$106B
Глобальный рынок ERP
CAGR 13% (2024-2030)
$7.49B
Ресторанное ПО
CAGR 14.5%
$450M
Целевой рынок (CIS+EE)
Россия, СНГ, Вост. Европа

TAM / SAM / SOM

TAM $106B
Глобальный рынок ERP
SAM $7.49B
Ресторанное ПО
SOM $450M
CIS + Eastern Europe

Конкурентный ландшафт

Продукт Целевой рынок Цена ($/мес) Архитектура Интеграции
InvelioРестораны, retail299 — 1,999+Cloud, DDD MPATelegram, iiko, ES
Toast POSРестораны (США)165+Cloud, MonolithDoorDash, Uber
SquareМалый бизнес60+Cloud, MonolithPayments, Payroll
LightspeedRetail, рестораны69+Cloud, MonolithShopify, QuickBooks
Oracle MICROSEnterpriseCustomOn-prem, monolithOracle stack
iikoРестораны (CIS)50+Cloud/On-premМНС, ЕГАИС

Инвестиционный раунд

Seed-раунд: $500,000 для масштабирования и вывода продукта на рынок

Использование средств

  • Разработка продукта$200,000
  • Маркетинг и продажи$120,000
  • Инфраструктура$80,000
  • Команда$100,000

MVP Metrics

Размер команды 2
Кодовая база (файлов) 4,000+
Выполнено фаз 12 из 18
Reference customer 1 (Fryday)
Стран эксплуатации 3

Финансовый прогноз (5 лет)

Показатель Год 1 Год 2 Год 3 Год 4 Год 5
Клиенты15651804501,000
ARR$540K$2.3M$6.5M$14.8M$30M
ARPU$3.0K$3.0K$3.0K$2.7K$2.5K
Churn5%4%3%2.5%2%
Gross Margin72%76%79%81%83%
EBITDA-240K-180K+850K+3.8M+9.2M

Бизнес-модель

🚀

Starter

$299
/мес
  • До 3 пользователей
  • Базовые модули
  • Email support
Популярный
💎

Business

$799
/мес
  • До 15 пользователей
  • Все модули
  • Priority support
🏢

Enterprise

$1,999+
/мес
  • Неограниченно
  • Custom решения
  • 24/7 support

Процесс разработки

GSD (Goal-Structured Development) — структурированная методология

GSD Workflow
New Project New Milestone Plan Phase Execute Phase Verify Ship

Фазы реализации

Фазы 1-4: Core Завершено
Фазы 5-8: Modules Завершено
Фазы 9-12: Frontend Завершено
Фазы 13-18: Scale В процессе

Ключевые практики

  • Каждая фаза имеет PLAN.md, REVIEW.md, FIX.md
  • Peer review через cross-AI review
  • Каждая фаза атомарно коммитится
  • Отслеживание UAT-критериев
  • Артефакты: ADR, SPEC, docs

Кейс: Fryday Burger

Миграция с DadliQR (OpenCart) на Invelio — первый reference customer

Исходная ситуация

  • До DadliQR на базе OpenCart 3
  • После Invelio — облачная ERP
  • Локация Баку, Азербайджан — сеть бургерных

Fryday Burger — это быстрорастущая сеть ресторанов быстрого питания в Баку. Изначально использовали DadliQR, построенный на OpenCart, который перестал отвечать потребностям бизнеса.

Результаты миграции

Перенос данных Каталог + заказы + клиенты
Длительность 4 недели
Адаптация персонала 2 недели
Статус Эксплуатация

Fryday Burger успешно использует Invelio для управления: каталогом, заказами, POS-терминалами, кухней, лояльностью и аналитикой.

Процесс миграции

Аудит данных Экспорт Трансформация Импорт Валидация Go Live

Roadmap

План развития продукта на 2025-2026

Q1-Q2 2025

Core Platform
  • Core Backend (12/21 пакетов)
  • Multi-tenancy & Auth
  • Frontend Apps (3/4)
  • Fryday Burger Go-Live

Q3-Q4 2025

Расширение
  • Purchasing, Fiscal, Billing
  • AI microservices
  • Seed раунд $500K
  • 3 новых клиента

2026

Масштабирование
  • Запуск в РФ, СНГ
  • 50+ клиентов
  • Series A раунд
  • $2.3M+ ARR

О компании

Миссия, ценности и команда Invelio

Миссия

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

Команда

Распределённая команда из 2 человек с экспертизой в PHP, React, DevOps и управлении продуктами. Поддержка AI-агентов GSD.

Ценности

Quality first: PHPStan level 8, строгая типизация. Enterprise ready: мультитенантность, безопасность, масштабируемость.

Контакты

© 2025 Invelio. Все права защищены.