processes in one system
From planning and call-outs to payroll and client correspondence.
The client is one of Russia’s largest HoReCa ventilation-maintenance operators: hundreds of restaurants, nationwide coverage, market leader in Moscow and Saint Petersburg. Their entire operational core lived in Excel, messengers and paper work orders. We replaced it with a single CRM that runs the company from the monthly plan to the brigade’s payroll.
A few key screens from the live system.






From planning and call-outs to payroll and client correspondence.
Excel sheets and printouts replaced with a single CRM.
Who, where, at what stage — in one window per role.
Everything digital — nothing gets misplaced.
Monthly plans, norms, Excel import, history and plan-vs-actuals.
Drag-and-drop calendar, brigades, drivers, vehicles, routes, re-scheduling.
Full lifecycle from creation to act, mobile view for the brigadier.
Per-site checkpoint links, shot requirements, checklist verification.
IMAP + SMTP, mail templates, auto-link of incoming to orders.
Vehicles, drivers, links to brigades and orders.
Hours- and order-based salary calculation, payment history.
Documents per site and contract, client approval flow.
Roles, permissions, regions, mail templates, document types — without releases.
Web Push, personal inbox per user, client replies.
Tell us what to automate. We come back with an architecture proposal and an estimate within a couple of days.
A full corporate CRM for one of the largest HoReCa-service operators in Russia. Replaced an Excel + paper + messenger + personal-mailbox stack with a single platform that runs every operational process: planning, work orders, photo and video evidence, fleet, payroll, document workflow, IMAP inbox with auto-link to orders, dynamic RBAC, mail templates and push notifications.
9 roles × 87 permissions = 371 links in the DB. Permissions are data, not code — edited by admins through the UI without a release. The permission registry is seeded by migration; role↔permission pairs live separately, which keeps permission migrations safe.
A user can be a brigadier in one team and a technical director of another region at the same time. Implemented as many-to-many user_roles instead of a flat role column — otherwise we’d be cloning accounts.
An FSM-like status model with a transition matrix and per-role visible statuses (role_visible_statuses). Orders cannot skip a stage, and each role only sees a relevant slice of the queue.
photo_requirements + photos with typing. You can require specific shots per site checkpoint (entrance / panel / filter) and prevent order closure without them. Mobile uploads land in S3 directly.
An inbox_messages parser extracts the order number from subject and body and auto-links incoming mail to related_order_id. Approvals are visible right inside the order card.
email_templates with variables ({order_number}, {object_address}, {brigade}, {date}). The operator picks a template, the system fills it from the order, Yandex SMTP sends it, sent_messages logs it.
excel_imports + plan_items: monthly plan from one file, validation against sites/norms/contracts, idempotent retry with import history.
vehicles ↔ brigades + order_workers + order_worker_payments. Payroll is calculated automatically from actual hours and closed orders.
notification_rules: the admin picks which events trigger which push/email for which role. No code change — config in the UI.
A few key screens from the live system.






Move work-order dates and brigades with the cursor, conflict-check, filters by region, status and brigadier.
All statuses, transition history, photo and video evidence, approvals, payroll, documents.
Grid and list, filters by region, work history, contracts, norms, recommended brigades.
9 roles, 87 permissions, mail templates, regions, documents, photo requirements — all via UI.
IMAP + SMTP, auto-link of incoming to orders, outgoing templates with variables, send audit.
vehicles ↔ brigades, drivers, links to orders and regions.
Calculated from actual hours, payment history per employee.
One file — monthly plan, validation against sites, import history and rollback.
Web Push (VAPID), per-user inbox, configurable rules.
Documents per site, contract and employee, configurable document types.
Auto-generated approval mail, IMAP-side linking of client reply to order.
Brigade load, conversion by status, plan vs. actuals, reports by region.
Tell us what to automate. We come back with an architecture proposal and an estimate within a couple of days.