Every live feature across all three portals — business owner, customer, and driver.
| Feature | Description | Status |
|---|---|---|
| QuickBooks Integration | ||
| OAuth connection | One-click QB connect. Tokens auto-refresh. No re-auth needed. | ✓ Live |
| Full data sync | Customers, products, invoices, payments, credit memos, tax codes. | ✓ Live |
| Real-time webhooks | Changes in QB reflect immediately — no polling, no manual sync. | ✓ Live |
| Orders → QB invoices | Every confirmed order creates a real invoice in QuickBooks automatically. | ✓ Live |
| Payments → QB sync | Online Stripe payments post back to QB as payments received. | ✓ Live |
| Product hierarchy | Categories, sub-items, parent-child relationships synced and displayed. | ✓ Live |
| Customer Portal | ||
| Branded storefront | Custom slug, logo, and theme per business. Customers log in at your URL. | ✓ Live |
| Product catalog | Grid and list view toggle, category tabs, search. | ✓ Live |
| Variant matrix ordering | Table view for grouped variants — qty per variant, bulk add to cart. | ✓ Live |
| Cart & checkout | Slide-over cart with qty steppers, delivery notes, place order. | ✓ Live |
| Smart reorder suggestions | Ranked by each product's real reorder cadence — flags what's actually due, not just what's popular. | ✓ Live |
| Custom product lists | Business can restrict a customer's catalog to a named list — e.g. wholesale-only items. | ✓ Live |
| Live delivery tracking | Customer sees driver's live GPS on a map as the delivery approaches. | ✓ Live |
| Invoice & payment history | Full invoice list, Pay Now button, all payments and credit memos. | ✓ Live |
| Stripe Payments | ||
| Pay Now on invoices | Stripe card payment directly on any open invoice. | ✓ Live |
| Saved payment methods | Cards stored securely via Stripe. One-click payment on repeat invoices. | ✓ Live |
| Autopay | Customer enables autopay — invoices charge automatically on due date. | ✓ Live |
| Dunning reminders | Automated payment reminders at 3, 7, and 14 days overdue. | ✓ Live |
| AR aging summary | Overdue buckets (current, 1–30, 31–60, 60+ days) on the dashboard. | ✓ Live |
| Proactive AR alerts | Ranked feed of accounts overdue or going quiet — surfaced on login, not buried in a report. | ✓ Live |
| Driver & Delivery | ||
| Driver portal | Mobile-ready stop list, map with numbered pins, GPS sharing. | ✓ Live |
| Live GPS tracking | Driver location streamed via SSE + Redis. Customer sees real-time movement. | ✓ Live |
| Mark delivered | Driver marks each stop done. Status updates instantly in the dashboard. | ✓ Live |
| Proof of delivery | Driver captures a photo on delivery. Stored per order, visible in dashboard. | ✓ Live |
| Driver busy lock | System prevents assigning a new route to a driver mid-delivery. | ✓ Live |
| Route Planning | ||
| Customer map selection | Select customers on a Leaflet map to build a delivery run. | ✓ Live |
| ORS route optimization | OpenRouteService API finds the most efficient stop order automatically. | ✓ Live |
| One-click dispatch | Optimized route sent to driver with one click. Appears in stop list instantly. | ✓ Live |
| Live dispatch board | All active drivers, all routes, on one map — with live GPS positions. | ✓ Live |
| Mid-route stop additions | Add new stops to a driver already on route without restarting. | ✓ Live |
| Business Dashboard | ||
| Order management | Full lifecycle — create, confirm, assign driver, track, deliver, cancel. | ✓ Live |
| Customer management | Balances, order history, invoice history, portal users, address — all in one view. | ✓ Live |
| Dashboard widgets | Today's orders, needs action count, revenue this month — at a glance. | ✓ Live |
| Portal user management | Approve, deactivate, and unlink customer portal accounts. | ✓ Live |
| Business settings | Business address, order edit window, storefront name and logo. | ✓ Live |