Run the company before the 8 a.m. meeting.
A morning briefing assembled from every module — alerts, cash, KPIs, renewals. A 30/60/90-day cash forecast with assumption levers your CFO can tune. Side-by-side safe-harbor and annualized quarterly tax estimates. Consolidated multi-entity statements with one-click drill-down to GL lines. The board packet you used to compile by hand.
The first thing the owner sees, every day.
A composed view of every module's most-relevant signal for an owner — sorted by severity first, then due date, then item number. Critical count rolls in from the renewal alerts. Customer switcher for multi-entity owners. Greeting changes by shift slice so the page knows whether it's morning, afternoon, or end of day.
- Alerts — collected from every surface, de-duplicated, sorted (severity first, then due date, then by item number).
- KPI strip — backlog, active projects, FAC variance, 90-day cash, gross margin by trade.
- Todos panel — pay apps to approve, COs to sign, RFIs to escalate.
- Renewal alerts — 90/60/30/7-day window engine for warranty / license / insurance / certs.
- Customer switcher — sorted by name, filtered by user access, multi-entity owners switch with one click.
30 / 60 / 90 days. Three walkers. Five levers.
AR aging into inflows. AP aging into outflows with a pay-lag slider that slides 0d entries to 30d, 30d to 60d, 60d to 90d. Payroll, tax, and loan walkers. Min-balance tracker with horizon-days-of-min. Five customer-tunable assumption levers that re-forecast instantly.
- AR collection % — what we actually collect vs. what's invoiced.
- Retention release % — your historical pay-app retention release rate.
- AP pay-lag days — push AP outflows by N days; bucket math handles the slide.
- Tax due buffer — sit on the federal/state estimate for N days before it leaves the forecast.
- Discretionary per 30d — owner-allocated discretionary spend bucket.
- Apply order — absolute amounts first, then percentages. Predictable, no surprises.
Stale recs don't hide anymore.
Bank balances and sweep targets in one panel. Loan amortization on the same screen. The bank-reconciliation heat chip flips green < 7 days, amber 8-30, red 31+ — the controller spots the stale rec from across the room. Future-dated recs clamp to 0 so nobody fakes a 7-day window with tomorrow's clock.
- Bank accounts — current balance, available, sweep target, last-rec date with heat chip.
- Loans — outstanding, next payment, amortization, covenant ratio chip.
- Sweep table — operating-to-overnight rules with auto-flag if the rule hasn't fired this week.
- Per-customer credentials — bank API keys encrypted at the customer level.
| Account | Balance | Rec age |
|---|---|---|
| PNC Operating · 8421 | $3.4M | 3d |
| PNC Sweep · 8429 | $4.1M | 3d |
| Huntington Payroll · 1144 | $612k | 14d |
| Wells Money Market · 0091 | $2.0M | 38d |
Safe-harbor and annualized, side-by-side.
For every entity, every quarter, and every state/federal jurisdiction, AOS calculates both the safe-harbor estimate (110% of prior-year income over $150k, otherwise 100%) and the annualized installment (per IRS §6654). It picks the lower one automatically. The owner sees both, the CFO trusts the math, the IRS gets the right number.
- Federal Q1-Q4 — Apr 15 / Jun 15 / Sep 15 / Jan 15-next with weekend slide.
- 15 state overrides — including VA Q1 = May 1 and WA quarterly B&O.
- K-1 box mapping — all 42 postable accounts mapped to the right K-1 box (39 exact + 9 by prefix); Box 20 is the catch-all and carries the code embedded.
- Capital walk — beg + contrib + income − distrib ± other = end, reconciled to the equity-movement table.
- Date-effective allocation — partner percentages flip mid-year? The allocator handles it.
| Method | Amount | Pick |
|---|---|---|
| Safe harbor (110% PY AGI) | $284,000 | ✓ |
| Annualized installment | $312,400 | — |
| State | Due | Amount |
|---|---|---|
| PA | Jun 15 | $48,200 |
| OH | Jun 15 | $22,400 |
| WV | Jun 15 | $11,900 |
| VA | May 1 ✓ | $8,700 |
One company. Five entities. One income statement.
Single-entity statements and multi-EIN consolidated rollups for balance sheet, P&L, cash flow, and equity. Five period-comparison kinds: last month, last quarter, prior year, YTD-PY, budget. Variance chips heat-colour at 10% / 20% / 50% thresholds. Click any line, drill to the GL.
Replace the email attachment.
Generate the quarterly board packet from the same statements and KPIs already powering the owner dashboard. Walk through the review and approval status — draft → generating → ready for review → approved → distributed → cancelled. PDF export with branded cover, presenter notes, and a section table of contents.
- Status workflow — every step is guarded; cancelled is a final state; archiving is an off-ramp from distributed.
- Branded cover — company logo, accent colour, fiscal period.
- Presenter notes — per-slide notes for board chair that don't render to the recipient.
- Section TOC — auto-built from packet sections with click-to-jump in the public viewer.
A one-click portal your board actually uses.
Distribution lists with member emails, roles, and notify settings. A secure one-click public portal — no account, no password — that delivers the packet on a separate secure key, valid for 14 days, with re-use detection so a link can only be opened once. Engagement tracking with section views, scroll depth, and 60-second heartbeats. A single-level Q&A thread that doesn't sprawl.
- Secure one-click access — a separate secure key per portal means a board link can never be re-used on the alumni portal.
- Re-use detection — every link is stored as a secure one-way hash; a second attempt to open it is flagged.
- Engagement events — section views, scrolling, heartbeats, and close events captured automatically.
- Idle cap — sessions break after 15 minutes of inactivity so a phone-in-pocket doesn't inflate read time.
- Privacy — IP address and browser identifier stored only as secure one-way hashes; raw values are never saved.
- Q&A — replies allowed; replies-to-replies are not, so threads don't sprawl. Hidden posts drop; orphan replies promote to top-level.
| Member | Sections viewed | Scroll |
|---|---|---|
| R. Kowalski (Chair) | 8 / 8 | 98% |
| M. Tran | 7 / 8 | 84% |
| L. Sanchez | 5 / 8 | 61% |
| D. Yates | 3 / 8 | 22% |
| F. Reeves | — | — |
The signals you acted on, on the record.
Every signal an owner acknowledges or actions moves through a simple status workflow — open / in-progress / done — and writes a tamper-resistant audit row. A defensible record of who moved on what, when. The same engine drives the write-off coverage panel: how much of your aged AR is reserve-covered versus exposed.
Acknowledge or action
Each signal is a row. Owners snooze, acknowledge, or action — every transition logged with user, timestamp, and reason field.
State-machine
open → in-progress → done. Reopen allowed. Each transition writes an audit-log row; nothing gets quietly closed.
Coverage panel
Aged AR matched to reserves with both 0..1 and 0..100 percent normalisation. Surfaces uncovered exposure before write-down.
See the Command Center on your numbers.
Bring your trial balance and your AR aging. We'll wire up a sandbox briefing in 30 minutes and show you what AOS would have flagged on a Monday you remember.