Розроблення мобільного додатку для управління ЖКГ
Жителі не хочуть дзвонити диспетчеру, щоб подати заявку на ремонт вхідного дверу. Вони хочуть написати, прикріпити фото та отримати сповіщення, коли сантехнік виїхав. Управляюча компанія хоче закрити цей потік звернень без найму додаткових операторів. Додаток тут — не маркетинговий інструмент, а операційний.
Що повинне спочатку працювати
Прийом заявок. Житель вибирає категорію звернення (сантехнік, електрик, прибирання, загальні питання), описує проблему, додає до 5 фото. Заявка йде в CRM-панель диспетчера. Кожна зміна статусу — push-сповіщення через FCM до жителя.
Передача показань лічильників. Житель вводить показання води, газу, електроенергії. Система перевіряє: показання не можуть бути менше попередніх (якщо тільки не заміна лічильника). Дані йдуть у біллінгову систему управляючої компанії.
Оплата. Баланс лицевого рахунку, історія нарахувань, онлайн-оплата через YooKassa або СБП. Квитанція формується автоматично до PDF і доступна в архіві.
Оголошення та новини. УК публікує новини: планові відключення, збори, подяки жителям. Push по сегментах — наприклад, тільки жилого підвалу №3.
Де архітектура ускладнюється
Багатобудинкова модель. Житель може бути власником квартир у двох будинках, які обслуговуються однією УК. Модель даних: користувач → лицеві рахунки (1..n) → будинок → вхід → квартира. Перемикання між рахунками має повністю перемикати контекст.
Інтеграція з 1С або біллінговою системою (РКЦ, Інфократ, ВЦ КХ). Як правило, УК уже працює в якійсь системі обліку. Інтеграція через REST API або файловий обмін (XML, DBF — так, це ще трапляється). Пишемо адаптер на Laravel, який синхронізує дані за розкладом і надає мобільному додатку єдиний API.
Чат з диспетчером. Stream Chat SDK або користувацький WebSocket. Важливий момент: повідомлення повинні прив'язуватися до заявки, а не просто плавати в загальному чаті. Це змінює структуру даних: message → conversation → application (заявка).
Голосування на собрання жителів (ОСС). Це окремий модуль зі своїми вимогами: ідентифікація власника, фіксація голосу з timestamp, звіт про результати у форматі протоколу. Реалізуємо через окремий флоу з верифікацією через SMS OTP.
Стек та інтеграції
Flutter 3.x, Laravel 10, PostgreSQL. Пуші — FCM. Медіа (фото заявок) — S3-сумісне сховище з автоматичним стисненням. Адміністративна панель для диспетчерів та співробітників УК — веб-додаток на React/Inertia.
Терміни
MVP (заявки, передача показань, оплата, оголошення) — від 12 до 18 тижнів. Повна версія з чатом, голосуванням, інтеграцією з біллінгом та багатобудинковою моделлю — 22+ тижні.
Вартість розраховується індивідуально після аналізу вимог.







