Mobile App Development for Housing Management Company (HOA)
Residents don't want to call the dispatcher to file a repair request for the building entrance. They want to write, attach photos, and get notified when the plumber arrives. The management company wants to close this request flow without hiring additional operators. The app here is not a marketing tool — it's operational.
What Must Work First
Request Processing. Resident selects complaint category (plumber, electrician, cleaning, general), describes problem, attaches up to 5 photos. Request goes to dispatcher's CRM panel. Each status change triggers push notification via FCM to resident.
Meter Reading Submission. Resident enters water, gas, electricity readings. System validates: readings can't be lower than previous (unless meter replacement). Data goes to management company's billing system.
Payment. Account balance, billing history, online payment via YooKassa or SBP. Invoice auto-generated to PDF and available in archive.
Announcements and News. HOA publishes news: scheduled outages, meetings, resident appreciation. Push segmented — e.g., only residents of entrance #3.
Where Architecture Gets Complex
Multi-property model. Resident might own apartments in two houses served by same HOA. Data model: user → accounts (1..n) → building → entrance → apartment. Switching between accounts should completely switch context.
Integration with 1C or billing system (RCC, Infocrat, VTS KH). Usually HOA already works in some accounting system. Integration via REST API or file exchange (XML, DBF — yes, still happens). We write Laravel adapter that syncs data on schedule and provides mobile app with single API.
Chat with dispatcher. Stream Chat SDK or custom WebSocket. Important: messages must tie to request, not float in general chat. This changes data structure: message → conversation → application (request).
HOA meeting voting. Separate module with own requirements: owner identification, vote record with timestamp, protocol-format results. Implement via separate flow with SMS OTP verification.
Stack and Integrations
Flutter 3.x, Laravel 10, PostgreSQL. Pushes — FCM. Media (request photos) — S3-compatible storage with auto-compression. Admin panel for dispatchers and HOA staff — web app on React/Inertia.
Timeline
MVP (requests, meter readings, payment, announcements) — 12 to 18 weeks. Full version with chat, voting, billing integration, and multi-property model — 22+ weeks.
Pricing is calculated individually after requirements analysis.







