Dashboard
Revenue Overview
Top Sellers
Product Sales
Store Status
Customer Loyalty
Inventory Alerts
All Customer Reviews
Reviews Requiring Attention (1-3 Stars)
Cash Settlements
Equipment Service
Promotion Performance
Delivery Platforms
Revenue Overview
Hourly Sales Heatmap (Last 7 Days)
Top Sellers
Revenue by Category
Slow Movers
All Customer Reviews
Reviews Requiring Attention (1-3 Stars)
Staff Overview
Order Fulfilment
Delivery Platform Breakdown
Inventory Snapshot
View Full Inventory →Store Comparison
| Store | Revenue | Orders | Avg Ticket | Best Seller | Staff | Fulfilment | Status |
|---|
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 |
|---|
Staff Directory
| Name | Staff # | Olsera Role | CC Role | Store | Status | Shift |
|---|
Shift Schedule
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 | 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
▶ Operating Expense Detail
| Owner Name | Code | Type | NIB | NPWP | Stores |
|---|
Users / Roles
| User | Role | Page Access | Password | Owner | Store | Status |
|---|
Complete these steps in order at month-end to ensure all data is reconciled and synced across systems.
1Sync Olsera POS Data
What it does: Pulls all transaction data from the Olsera POS system for the selected date range and stores. Includes order details, payment methods, items sold, and customer data.
When to use: Run at month-end to ensure ALL transactions for the month are captured. Use "Force" if you suspect missing data. Check the dashboard after syncing to verify totals match Olsera.
2Apply Transaction Adjustments
What it does: Corrects payment method misclassifications from Olsera. Points Burn: reclassifies loyalty redemptions as free cups and deducts the drink value from cash expected. Delivery Override: reclassifies EDC/transfer payments as GoFood/Grab/Shopee when order source indicates delivery.
When to use: Run after Olsera sync to correct the month's transaction data before cash reconciliation. The adjustments feed into Cash Management and P&L calculations.
3Sync All Data to Firestore
What it does: Writes all local data tables to Google Cloud Firestore via REST API. This ensures all data is backed up in the cloud and available on other devices. "Audit" checks which tables are missing from Firestore without modifying anything.
When to use: Run after completing steps 1-3 to ensure all updated data is persisted to the cloud. Run Audit first to see what's missing. Essential before switching to a different computer.
4Xero Accounting Sync
What it does: Syncs financial data from Xero. "Chart of Accounts" pulls account codes and categories for P&L mapping. "Bank Transactions" pulls deposits for cash reconciliation matching. "P&L" pulls the profit and loss report for the selected period — if multiple months, automatically splits into individual monthly pulls.
When to use: Sync Chart of Accounts if new accounts were added in Xero. Sync Bank Transactions before running cash reconciliation. Pull P&L after all Xero entries for the month are finalised.
5Cash Reconciliation
What it does: Matches pending cash settlements against Xero bank deposits. Auto-reconcile finds high-confidence matches (exact amount within 0-5 days) and marks them as confirmed. Rollback reverts auto-reconciled entries back to pending for re-processing.
When to use: Run after syncing Xero bank transactions (Step 5). Review the Cash Management page for any ambiguous or unmatched items that need manual confirmation. Use Rollback if reconciliation needs to be redone.
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
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.
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.
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
▶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 opportunitiesCompleted Nudges
▶Loyalty Members
Activity Log
| Timestamp | User | Action | Module | Description | Changes |
|---|
Mobile View Configuration
Toggle which pages and components are visible on mobile devicesDevelopment Lifecycle
Sequenced by dependencies & priority| ID | Type | Title | Priority | Status | Dependencies | Created |
|---|
Version History
| Version | Date | Type | Changes |
|---|