Operations dashboard

The reporting QuickBooks doesn't ship

SideQuest ships a self-contained operations dashboard for distributors automating POs into QuickBooks Online. Eighteen cards across six sections — throughput, review queue, customer health, pricing, catalog, activity — in one HTML file with sidebar navigation and dark mode. One command to refresh it. Runs offline. No SaaS, no auth, no data leaves your laptop.

sidequest dashboard
SideQuest operations dashboard v2 — sidebar navigation, period switcher, KPI row, month-end forecast, pipeline funnel, and match quality
The actual dashboard the connector renders. One file. Lives on your laptop.

What's on it

Each section pulls from the local usage log and drafts store. Sections degrade independently: if QuickBooks auth drops, AR alone shows "unavailable" while everything else renders.

KPI

POs processed

Throughput for the period (today, 7d, 30d, MTD, YTD).

KPI

Auto-clean rate

What share of POs submitted without you touching them.

KPI

Submitted $ value

Total dollars on Estimates SideQuest pushed to QB.

KPI

AR open balance

Live from QuickBooks when AR sweep is configured.

Trend

This period vs prior

Real comparison vs the equivalent prior window, with arrow and percentage delta.

Trend

Auto-clean trend

30-day daily rate as an inline sparkline. Rising = matcher is learning.

Forecast

Month-end projection

POs projected for the month at current pace. Red banner if you'll exceed quota.

Risk

Customer concentration

Top customer's share of volume. Color-coded above 30% and 50%.

Backlog

Oldest draft in review

Age of the longest-waiting draft. Fresh / aging / stale framing.

Funnel

Pipeline funnel

Parsed → drafted → submitted → discarded, as a bar chart.

Quality

Match quality

Three-color bar (auto / you-assigned / needs-review) plus top review reasons in plain English.

ROI

Top unmatched parts

Customer part numbers seen more than once with no QB match. Single best ROI section.

Activity

Recent activity feed

Last ten events with relative timestamps and event-type pills.

Walk the console

Every screenshot below is the real dashboard rendered from a live sandbox — same file your install produces. The sidebar jumps between sections; the period chips re-cut every number to the window you pick; the moon toggle flips the whole console to dark mode.

Top items and top customers tables on the SideQuest dashboard, with per-table filters, ranked quantity and revenue, and the AR snapshot
Top items and top customers, ranked by quantity, PO count, or revenue. Type in the filter box to cut either table to one SKU or one account. Click a column header to re-sort.
Customer Health section on the SideQuest dashboard showing At risk, Watch, Dormant, and Healthy buckets with per-customer scores and recommended next actions
Customer health, scored 0-100 from recency, frequency, AR, and match quality. Each row ends with the one thing to do about it.
Pricing Intelligence section on the SideQuest dashboard showing High leverage, Below list, Variable pricing, and Stale list buckets with per-item impact
Pricing intelligence. High-leverage items come with the annualized dollar value of a 2% list bump — the price review writes its own agenda.
Below list and Stale list tables on the SideQuest dashboard quantifying margin given up per customer and list prices that have not moved
The margin leaks, quantified. Below-list shows the dollar gap per customer; stale-list flags prices that haven't moved while your costs did.
Catalog Hygiene section on the SideQuest dashboard showing Duplicate, Missing SKU, Suspicious pricing, Out of stock, and Unused buckets with fix hints
Catalog hygiene. Five buckets of QuickBooks catalog drift — duplicates, missing SKUs, $0 prices — each with the exact fix.
Missing SKU and Unused items tables on the SideQuest dashboard listing flagged QuickBooks items with per-item fix instructions
Drill into any bucket and you get the item list plus what an empty SKU actually costs you: those items skip the exact-match path until you fill the field.
Recent activity feed on the SideQuest dashboard showing the last ten parse and submit events with timestamps
The activity feed — every parse and submit, timestamped. The raw JSON behind every card sits in a collapsed block at the bottom of the page for export.

The three you'll use most

Top unmatched parts

Ranks customer part numbers that have failed the matcher more than once across the period. Add a cross-reference once for each one and the next five POs containing that part process clean. Compounds over time.

Customer concentration

Top customer's share of submitted volume, plus the top-3 share for context. Above 50% the section labels it "single-customer risk" in red. The number that should land on a board slide.

Month-end forecast

POs MTD ÷ days elapsed × days in month. License-aware: if the projection breaches your tier's quota, a red banner suggests planning the upgrade before month-end rolls over.

Why it's not in QuickBooks

QuickBooks Online's reporting layer runs against transactions. Your auto-clean rate is invisible to QBO because QBO never sees the drafts you discarded. Your customer part numbers that keep failing the matcher are invisible because QBO has no concept of an inbound PO that didn't become an Estimate. Your time saved is invisible because the alternative was a human typing line items, and QBO can't measure that.

MetricIn QuickBooks Online?In the SideQuest dashboard?
Submitted Estimate totalsYesYes
AR agingYesYes
POs that came in but were never draftedNoYes
Drafts you discardedNoYes
Auto-clean rate trendNoYes
Customer part numbers that fail matchingNoYes
Time saved vs typingNoYes
Month-end forecast vs license quotaNoYes

How to open it

Install the latest connector, then run one command:

~/.qb-distributor-mcp/venv/bin/pip install --force-reinstall \
  ~/Downloads/sidequest-connector.zip

# Cmd+Q Claude Desktop, reopen, then:
sidequest dashboard

The HTML file lands at ~/.qb-distributor-mcp/dashboard.html and your default browser opens to it. Re-run sidequest dashboard any time to refresh. Pass --period 7d for a tighter view, --no-open to skip the browser launch.

No JavaScript fetches, no external CSS, no fonts from a CDN. The file works offline. Move it to a USB stick, open it on a machine that's never seen the internet, the dashboard still renders. The raw underlying data sits in a collapsed JSON block at the bottom for export.