The problem
Anyone starting a digital retail operation picks between two extremes: an off-the-shelf platform where the brand is reduced to a theme and the data stays locked inside, or a bespoke store that costs months before the first sale. Either way the sales report comes from a manual spreadsheet export — when it comes at all. The merchant knows the revenue; not which category carries the margin, which payment method dominates, or what the discounting actually costs.
The solution
One codebase, one backend, many brands: each merchant gets an app with its own identity — icon, splash, palette and name — and its own data space under the store’s path. An order placed in the storefront fires Cloud Functions that load the sale and each line item into BigQuery; ready-made views slice that data per store and feed a Looker Studio report the merchant opens inside the console, alongside catalog, orders and their own brand settings.
The platform on screen
Click any screen to enlarge.
Commercial highlights
The order written to Firestore fires two Cloud Functions that load the sale and every line item into BigQuery, in the Brazilian region. Four views shape that data for Looker Studio — no export, no spreadsheet, no human step between the sale and the chart.
Two brands run on the same codebase today: same storefront, same backend, different identities. Switching brand is a single command — and the onboarding runbook goes from signed contract to an installable branded app in under an hour.
A dedicated console for catalog, orders and brand settings — including colors and the BI dashboard address. Each owner sees only their own store, because the scope comes from their access credential rather than a filter on the screen.
Clean Architecture with separated layers, Bloc for state and dependency injection, test coverage above 70% across unit, widget and integration tests, and a build-and-distribution pipeline on Codemagic with Firebase Test Lab.
Technology
This product was born from a real problem. Yours can be too.