Written by Alpha Bits team
May 16, 2025 digital-transformation

How a Major Coffee Chain Consolidated 200+ Outlets Into One Data Platform

This is the story of the project that shaped how I think about data transformation. It happened during the pandemic, and it taught me more about organisational change than any management book ever could.

The Situation

A major Vietnamese coffee chain approached us with what seemed like a simple request: "We need better reports."

When we dug in, the actual situation was far more interesting. This chain had grown fast — over 200 outlets across Vietnam — and like most businesses that scale quickly, their technology stack had grown organically. No master plan. Just solutions to immediate problems, accumulated over years.

What we found:

  • 5 different POS systems across different outlet generations. Some locations were running systems that hadn't been updated in years. Others were on the latest cloud POS. None of them talked to each other.
  • Multiple accounting databases that had been set up by different finance teams at different times.
  • Manual report consolidation that consumed entire teams. Every Monday morning, someone in head office spent hours copying numbers from outlet-level exports into a master spreadsheet. By the time the report reached management, the data was already days old.
  • No single source of truth. Ask two departments the same question about revenue, get two different numbers.

Sound familiar? If you're running a multi-location business in Southeast Asia, this is probably your reality too.

What We Actually Did

We didn't start with dashboards. We didn't start with AI. We started with a conversation about data ownership — who generates it, where it lives, and who's responsible for its accuracy.

Phase 1: The Data Audit (2 weeks)

We mapped every system that generated transactional data. Every POS terminal. Every accounting tool. Every spreadsheet that someone had built to bridge the gaps. The map itself was a revelation — even the CTO didn't know the full picture.

Phase 2: The Pipeline (6 weeks)

We built a data pipeline that pulled from all 5 POS systems and the accounting databases into a single BigQuery data warehouse. The key decisions:

  • BigQuery over self-hosted. For a chain this size, the cost-to-maintenance ratio favoured cloud. We didn't want the client hiring a DBA just to keep the warehouse running.
  • Incremental sync, not batch dumps. Outlets with unreliable internet (and there were plenty) needed a sync mechanism that could handle connectivity gaps without losing transactions.
  • Standardised schema. Every POS system called things differently. A "discount" in one system was a "promotion" in another was a "price adjustment" in a third. We spent more time on schema normalisation than on any other technical task.

Phase 3: The Dashboards (3 weeks)

With clean, unified data, the dashboards almost built themselves. Real-time revenue across all 200+ locations. Outlet-by-outlet performance comparisons. Product mix analysis. Inventory velocity.

The moment that mattered most wasn't the launch day. It was the following Monday, when the team that used to spend hours on manual consolidation watched the numbers update automatically and said, "What do we do now?"

The Results

  • 70% reduction in reporting time. The manual consolidation process effectively disappeared.
  • Real-time visibility across all locations — a first in the company's history.
  • One-day stock adjustments instead of weekly cycles, because managers could now see actual product movement data.
  • Cost savings from identifying underperforming outlets that were previously hidden in aggregated numbers.

But the most important result wasn't quantitative. It was the shift in how management made decisions. Before the project, strategic meetings started with "I think..." After the project, they started with "The data shows..."

What Pandemic Conditions Taught Us

This entire project was executed during COVID lockdowns. Our team never visited a single outlet in person. Every integration was done remotely — remote access to POS systems, video calls with outlet managers, asynchronous coordination across time zones.

What seemed like a limitation turned out to be an advantage. The remote-first constraints forced us to:

  1. Document everything obsessively. No hallway conversations. Every decision was written down in a shared space.
  2. Build systems that didn't need on-site maintenance. If we couldn't physically touch a server, we designed around that constraint.
  3. Train outlet staff via video. Which meant we had to make the tools intuitive enough that a 20-minute video call was sufficient onboarding.

These constraints shaped our approach to every client engagement since. If a system requires someone to fly to a location to fix it, it's not built well enough.

What I'd Do Differently Today

This project was in 2021-2022. If we ran it today, two things would change dramatically:

AI-powered anomaly detection. We built rule-based alerts (e.g., "if daily revenue at an outlet drops more than 30%, notify management"). Today, we'd layer AI anomaly detection over the BigQuery data — catching patterns that no human would think to write a rule for. Our AI Workflow Automation capabilities have matured to the point where this is straightforward.

Team size. We ran this project with a dedicated team. Today, with AI-assisted development, I'd estimate we could deliver the same scope with half the people in two-thirds the time. That's not theoretical — it reflects the shift we've experienced in our own team structure.

The Takeaway

Data transformation projects aren't glamorous. Nobody posts about schema normalisation on LinkedIn. But they're the foundation that makes everything else possible — the dashboards, the AI, the competitive advantage.

If your multi-location business is still running on disconnected systems and Monday-morning spreadsheets, the starting point isn't an AI tool. It's a data audit. We've written up the full framework we use for these engagements — it applies whether you have 5 outlets or 500.

Share this article