Andulka

The problem.
Money in the bank does not equal invoiced, and invoiced does not equal earned. Three numbers, and nothing explains the difference between them.
A service business delivered through partners has recurring payments, complaints, partner shares, service margin, and corrections. Without a system, it lives in spreadsheets and bank statements, reconciled by hand. The cost of getting it wrong is direct: a wrong payout, an unaccounted complaint, an incorrect discount. On top of that sits DAC7 and per-country reporting.
What we built.
One platform built on a strict asset hierarchy: country, city, building, entrance, services. The schedule is the single source of truth for charges: from it, the system derives the client invoice, the partner payout, and the service revenue.
- Hierarchical asset management down to the individual entrance
- Automated scheduling and pricing rules per entrance
- Invoice generation and bank transaction reconciliation, including unmatched payments
- Partner payout approval with corrections and recalculations
- Complaints processing that automatically adjusts discounts, partner income, and margin
- Reporting by city, country, and period, plus DAC7 exports
Check out the ui.
How it's built.
Built for people who use it every day. Dense, tabular, information-first. Filtering follows the domain logic instead of a generic dashboard. The fewest possible clicks on repeated operations, because a mistake here costs money.
Admin commands, recalculations, and imports run as background jobs, making it an event-driven system rather than a standard CRUD application. The interface is a projection of the data layer, not the other way around.
What changed.
- Manual reconciliation across banks, invoices, and payouts is no longer a monthly ordeal
- Reporting and payout figures no longer disagree silently
- New cities and countries are launched without expanding back-office headcount
- DAC7 compliance is handled fully inside the product
The system is designed to work with reality: unmatched transactions, corrections, disputes. Not with ideal cases.
