Dashboard
Revenue Overview
Tender Type Summary
Product Sales
Top Sellers
Customer Loyalty
Inventory Alerts
All Customer Reviews
Reviews Requiring Attention (1-3 Stars)
Cash Settlements
Equipment Service
Store Target
Revenue Overview
Hourly Sales Heatmap
Top Sellers
Revenue by Category
Slow Movers
All Customer Reviews
Reviews Requiring Attention (1-3 Stars)
Delivery Platform Breakdown
Inventory Snapshot
View Full Inventory →Nearby Competitors
Price Comparison
Competitor Peak Hours
Stores
| Store Name | Code | Area | Status | Owner | Olsera ID | Manager | Hours | Links | Opened |
|---|
Store Stock Levels
| Ingredient | Category | On Hand | Re-order (days) | Est. Days Remaining | Status | Recommendation |
|---|
Stocktake History
| Date | Store | Items | Completed By | Status | Adjusted | Reason |
|---|
Spill/Waste Log
| Date | Store | Ingredient | Theoretical | Actual | Variance | Spill / Efficiency | Status |
|---|
Attendance Timeline
Recipe Management
Menu items, ingredients, costs and margins
Equipment Management
Espresso machines, grinders, fridges and service logs
Users / Roles
Manage users, roles and page access permissions
Connections & Data
POS integrations, Xero, and external services
Database Management
Data objects, backups, and storage management
Store Management
Store details, locations, and operating hours
All Recipes
| Menu Item | Category | Ingredients | Sell Price | Net Rev | Cost | Cost + Spill/Waste | Spill/Waste Allowance | Margin | Cost Mix | Active Promos | Availability | Status | Version |
|---|
All Ingredients
| Name | Olsera Name | Category | Unit | Purchase Unit | Cost / Purchase Unit | Reorder Point |
|---|
Ingredients Stock
| Ingredient | Category | Unit | Cost / Unit | Last Stocktake | Theoretical Use | Est. Stock on Hand | Re-order (days) | Used In | Stocktake Date |
|---|
▼Completed Transfers
| Date | From | To | Items | Transferred By | Status |
|---|
Equipment Register
| Asset | Asset Tag | Type | Brand / Model | Location | Purchase Date | Purchase Price | Status | Cups Produced | Last Service | Cups Since Service | Next Service |
|---|
Supplier Directory
| Business Name | Category | Key Contact | Phone | Assigned Purchases | Notes |
|---|
Top 15 — Margin %
Top 15 — Margin Value
Bottom 5 — Margin %
Bottom 5 — Margin Value
Product Detail
▶Outstanding Cash Transfers
▶Cash Shrinkage
▶Resolved Settlements
Store Contribution
Profit & Loss Statement
Balance Sheet
Cashflow Statement
▶ Categorised Bank Transactions
CFS Category Rules
Keyword rules override the default account-type category in the cashflow statement. Matched case-insensitively — first matching rule wins.
| Owner Name | Code | Type | NIB | NPWP | Stores |
|---|
Users / Roles
| User | Role | Page Access | Password | Owner | Main Store | Report Stores | Status |
|---|
Olsera POS
Per-store API keys are used to authenticate with the Olsera monitoring API via the Cloud Function proxy. Credentials are stored in Google Cloud Firestore.
| Store | App ID | Secret Key | Bearer Token | Token Expiry | Status |
|---|
Xero Accounting
Not Connected
G GoFood (GoBiz) Merchant API
——
Google Cloud Firestore
Firestore is the primary database for this application. All data is stored in the tables collection with offline persistence enabled for cross-device sync.
Console: console.firebase.google.com → coffee-commandcentre
Google Maps
Competitor Scanning + Menu OCR
Required for Competitor Analysis scan and menu OCR. Enable the Maps JavaScript API, Places API, and Cloud Vision API in your Google Cloud Console.
Email Reports
System Architecture
Database Tables
API Connections
Data Recovery
If Firestore data was accidentally reset to defaults, use this button on the device that still has your correct data to push it back to the cloud.
Derived-Table Rebuild Failures
Logged when a post-sale rebuild of daily revenue/hourly sales/product sales/customers fails right after a sale. The 30-min scheduled sync self-heals these automatically — this list is just visibility into how often it's happening.
Cloud Backups
Nightly at 02:00 Jakarta — 30-day retention
Store Launch Comparison
Compare store performance from day 0 — each store's launch date is normalised to the same starting point so you can see how new stores are tracking relative to established ones at the same stage.
Cumulative Revenue Since Launch
Weekly Revenue Run-rate Since Launch
Store Comparison Table
Report Builder
Build a custom report from Command Centre's data — pick rows, columns and values like a pivot table, filter it, then export the result to Excel.
Available Fields
Pick fields from any source below — combining fields from more than one automatically blends them by Date/Store.
Report Layout
Result
Product Mix: Volume × Margin
Each bubble = one product. X axis: units sold, Y axis: gross margin %, size: net revenue. Stars (top-right) are high-volume high-margin items.
Monthly Revenue
Net revenue (blue) with tax, discount & free-cup deductions to gross
Day of Week Analysis
Average daily net revenue by day of the week
Gross Margin Trend
Overall gross margin % over time — requires recipe costs
Category Margin Trends
Gross margin % per category per month — hover a column for all values
Product & Margin Mix
Unit share by category by month · how product mix shifts are driving margin
▶Product Margin Trends
How each product's gross margin % has changed month by month — sorted by net revenue or margin % based on view
Tax & Charge Settings
Menu prices are inclusive of all taxes and charges. These rates determine the breakdown of net revenue, service charge, and PBJT tax from each sale.
Tender Type Breakdown
Tender by Store
▶Transactions
| Receipt # | Date/Time | Store | Cashier | Items | Tender | Earned | Redeemed | Discount | Total |
|---|
Promotion Effectiveness
| Promo Code | Type | Description | Uses | Discount Given | Revenue Influenced | Avg Basket | ROI |
|---|
Discount Share by Promo
Active Promotions
Pricing Recommendations
Loyalty Transactions
Successful Nudges
Customer Segments
Visit Frequency Distribution
Customer Opportunities
Click a persona to see top opportunities▶Completed Nudges
▶Loyalty Members
Activity Log
| Timestamp | User | Action | Module | Description | Changes |
|---|
▾ After-Hours Alerts
Cart Sales
Products Sold
Loading…
Sales by Hour
Loading…
Cart Leaderboard
| # | Cart | Rider | Region | Cups Sold | Revenue |
|---|---|---|---|---|---|
| Loading… | |||||
Live Cart Map
Cart Status and Details
| Cart | Rider | Check-in | Check-out | Cups | Revenue | Variance | Status | Location | Photos | Detail |
|---|---|---|---|---|---|---|---|---|---|---|
| Loading… | ||||||||||
Manage Riders
| Name | Phone | Status | |
|---|---|---|---|
| Loading… | |||
Rider Assignments
| Cart | Rider | Phone | Assigned | |
|---|---|---|---|---|
| Loading… | ||||
Cart Settings
▼Recent Shifts
| Cart | Rider | Check-in | Check-out | Variance | Status | |
|---|---|---|---|---|---|---|
| Loading… | ||||||
▶Rider Motivation Messages
▸ Overtime Rules
▸ Standard Hours Per Staff
▾ Excel Export — Month End Report
▾ Leave Requests
▾ Attendance Records
Nudge Configuration
Define personas and their classification rules. Order matters — first match wins. All conditions within a persona must be true (AND logic).
Nudge Settings
Customers won't appear in the opportunities table during the suppression period. After it expires they reappear with a prior-nudge badge.
WhatsApp Send Rate Limits
Protects the sender's WhatsApp account from anti-spam flags. When a limit is reached, the WA send buttons grey out until the next slot opens. Defaults err on the conservative side — raise as your account history establishes.
Shared Appendix Variants
Feedback ask + corporate bundle pitch — appended to certain persona messages{firstName}
{drinkRef}
{drinkSuggest}
{sinceLine}
·
Conditional segments:
[+drinkRef: text] shown only when drinkRef is non-empty;
[-drinkRef: text] shown only when drinkRef is empty.
The same grammar applies to the per-persona variants inside each persona card.
Mobile View Configuration
Toggle pages for the mobile tab bar, then configure which elements are visible per pageDevelopment Lifecycle
Sequenced by dependencies & priority| ID | Type | Title | Priority | Status | Dependencies | Created |
|---|
User Feedback
Version History
| Version | Date | Type | Changes |
|---|