Hub

Annual Revenue
View Finances β†’
0
Jobs Booked
0
Open Leads
0
Quotes Pending
0
Google Reviews
0
Overdue Follow-ups
πŸ“ž Callback Reminders
Revenue vs Goal
Pipeline Health
Jobs This Month
FB Groups This Week
0
Goal: 5/week
Today's Schedule Open Calendar β†’
Loading schedule...
Updates & Follow-Ups
Client Map
Loading map...
Pipeline Snapshot
Revenue
Quick Client Search
Recent Activity
Quick Actions
πŸ“… Google Calendar
⏱ Time Tracking

Active Jobs

Upcoming This Week


Today's Actions


Needs Review Request
Revenue Tracking


Data Backup & Transfer
Storage usage exceeds 80%. Consider downloading a backup.
Export saves every tab, every record, every setting into one .json file.
Import restores that file into any browser β€” send the HTML + this file to anyone.
Calculating...

Data Handoff (Readable Backup)
Data Handoff generates a human-readable Markdown document with ALL CRM data organized by entity type.
Use it to rebuild the entire system from scratch, audit data, or share a complete snapshot with another agent.
Import Handoff parses a previously exported handoff file and restores all data to localStorage + Supabase.

Contacts

📋
Select a contact to view details.

Sales Pipeline

Total Pipeline Value:$0

Products & Services

Service Catalog
Price Sheet

Change Orders

Change Orders

Calendar

This Week
⚑ Quick Schedule
Open Google Calendar

Job Lists

All Jobs
Archived Jobs (From Pipeline)

Jobs Pipeline

Total Jobs Value:$0

Work Orders

Work Orders

Appointments & Calendar

πŸ“… Upcoming (Google Calendar)
Connect Google Calendar in Settings to see your schedule here.
Incoming Requests
Request Stats

Tasks

Today's Tasks
Upcoming / Scheduled
βœ… Completed Tasks
0 completed

Time Tracking

HandyTime
00:00:00
Today
0h
0 entries
This Week
0h
0 entries
This Month
0h
0 entries
Avg / Day (Week)
0h
Today's Time Log
Weekly Summary
Full Time Log

Invoices

Total Invoices
0
Unpaid
0
Total Amount
$0
Outstanding Balance
$0
Sort:
Status Customer Address Type Invoice Amount Paid Balance Created Paid Date Actions
Tiered Invoice Builder
Build Good / Better / Best options.

Proposals

Proposals
Proposal Templates
Tiered Proposal Builder
Build Good / Better / Best proposal packages. Items cascade up β€” Good items appear in all tiers.

PDF Vault

Document Storage
📄
Drag & drop files here or click to upload

PDF Maker

Document generation hub β€” pull data from CRM modules and generate professional LaTeX documents.

Production Rates / Finances

Revenue Overview
Revenue by Month
Year-over-Year Comparison
Add Revenue Entry
Add Expense
Financial Summary
Tax Estimator (SE Tax ~15.3% + Est Income Tax)
Transaction Log

Metrics

Revenue & Wins
πŸ’°Sales
Total Revenue Collected
βœ…Jobs Won
Payments Received
πŸ“ŠAvg Job Size
Average Per Payment
Conversions & Volume
Closing Ratio
Proposals Accepted / Sent
Repeat Rate
Returning Clients
Active Clients
Unique Paying Clients
Sales By Payment Method
Revenue by payment method for the selected period.
Sales By Client
Revenue broken down by client for the selected period.
Monthly Revenue
Revenue trend by month.
Sales By Category
Revenue by service category for the selected period.
Key Insights

Marketing Activity

Activity Log
Active Campaigns

Blast

Send a Blast
Blast History

Drip Sequences

Automated Drip Sequences

Design multi-step follow-up sequences triggered by events.

Review Requests

Reviews This Month
Request History
Send Review Request
Tip: Set your Google Place ID in Settings to include a direct review link.

Facebook Groups Tracker

Track your #1 free lead generation channel. Log posts, track approvals, monitor leads from each group.

Groups Active
0
Posts This Month
0
Leads Generated
0
Best Group
Post more to unlock insights
Weekly Posting Goal
Goal:
Manage Groups
Quick Post (one-tap logging)
Tap a group to instantly log a "Service Offer / Posted" entry for today.
Log a Post
Log a Lead from FB
Post History
Leads from FB Groups
Group Performance
Posts, approvals, and leads per group.
Sync & Export
🤖 AI Post Generator

Academy

Your SOPs

SOP 1: New Lead Intake

When a new lead comes in β€” phone call, text, booking form, referral, or Facebook message.

1. Get their name, phone, address, and what they need done. No address = no quote.
2. Check the address β€” is it within 20 minutes of Northwood? If not, flag it. $250-300 minimum for 30+ min drives.
3. Quick scope check β€” is this licensed work? Electrical runs, re-piping, structural, HVAC, roofing, gas = STOP. Refer out or decline.
4. If it came through the booking form, it's already in Appointment Requests. Hit "β†’ Sales" to create the pipeline card.
5. If it came by phone/text/referral, go to Sales Pipeline β†’ + Add Card. Fill in name, service, address, value estimate, notes.
6. Set status to Contacted once you've responded. The workflow will ask if you want to send an SMS.
7. Respond within 1 hour. Speed to lead wins jobs. A same-day response is the bare minimum.
SOP 2: Pricing a Job

How to price any job. These are your real numbers β€” use them.

Hourly Rates:
Friends & Family: $60/hr (use sparingly)
Budget / Repeat: $87/hr (absolute floor)
Standard: $100/hr (default for new clients)
Premium / UHNW: $125-137/hr
Minimums:
Neighbor (<1 mi): $150
Within 20 min: $200-250
30+ min drive: $250-300
Materials: Cost + 30% markup. If the client buys their own, no markup.
Fixed prices: Ceiling fan: $150. Outlet/switch swap: $50-75. Kitchen faucet: $250+. Bathroom faucet: $150+. Ring camera: $200.
Rule: Always quote a range, not a single number. "I'm seeing $400-550 for this" beats "$475."
Use Quote AI (in the card) for a fast ballpark. Use QuoteBot (standalone tab) for a professional, send-to-client estimate.
SOP 3: Job Site Walkthrough

Every estimate visit follows this process. No shortcuts.

1. Arrive 5 min early. First impressions are everything. You're the premium guy β€” act like it.
2. Walk the entire scope with the customer. Let them talk. Don't start quoting yet.
3. Take photos of everything β€” before condition, problem areas, access points, anything unusual. These feed Quote AI and QuoteBot.
4. Write a clear scope description while you're still on site. "Replace 3 outlets in kitchen, install dimmer in dining room, swap bathroom faucet." Specific, not vague.
5. Check for scope creep red flags β€” "while you're here, could you also..." Either add it to the quote or say "I can take care of that β€” let me include it in the estimate."
6. Send the quote within 24 hours. Same-day is better. Use QuoteBot to generate the professional version.
7. Move the sales card to Estimate Sent β€” the workflow will prompt QuoteBot.
SOP 4: Day-of Job Execution

From truck to done. The full job day process.

Before leaving: Confirm appointment with customer (text morning-of). Load materials. Check the scope one more time.
Arrive: Before photos of work area. Lay down drop cloths. Protect the customer's home.
During: Move the card to In Progress β€” start date auto-stamps. If you hit anything unexpected, STOP and discuss with customer before adding scope.
Complete: After photos of finished work. Clean up ALL debris. Walk the work with the customer.
Get sign-off: Verbal approval while standing there. "Does this look good to you? Anything else you want me to touch?"
Payment: Confirm payment method β€” Stripe (preferred) or Zelle. "I'll send the invoice right now."
Close out: Move card to Completed β€” workflow prompts invoice + review request. Always ask: "Know anyone else who might need a hand?"
SOP 5: Invoicing & Getting Paid

Get paid fast. Every day an invoice sits unpaid costs you money.

1. Create the invoice same day the job completes. Not tomorrow. Today. The workflow prompts you when you move to Completed.
2. Send via Stripe (preferred β€” auto-tracked) or generate a PDF invoice from the Invoicing tab.
3. Text the customer a heads-up: "Hey [name], just sent the invoice over. Stripe link is in your email."
4. 3 days unpaid: Friendly text β€” "Just checking if you got the invoice ok?"
5. 7 days unpaid: Direct text β€” "Hey, wanted to follow up on the invoice from [date]. Let me know if you have questions."
6. 14 days unpaid: Phone call. Direct conversation.
7. Once paid, move card to Paid & Closed. Workflow prompts receipt PDF + review request.
Zelle payments: Log them in the Finance tab manually β€” Zelle isn't auto-tracked like Stripe.
SOP 6: Getting 5-Star Reviews

Every job = one review. No exceptions. This is how you dominate locally.

1. Day of completion: Thank-you text. "Thanks for trusting me with this, [name]. Let me know if you need anything else."
2. Day 3: Review request. "Hey [name], if you were happy with the work, a Google review would mean a lot. Here's the link: [link]". The workflow system will prompt this.
3. If they leave a review β€” respond to it publicly within 24 hours. Thank them by name.
4. Day 30: Check-in text. "Hey [name], just checking in β€” everything still good with the [work done]?" This catches warranty issues early AND plants the seed for repeat business.
5. Day 90: Seasonal outreach. "Hey [name], [seasonal thing]. Let me know if you need anything." Keeps you top of mind.
Target: 5-star Google review on every single job. One review from a Northwood neighbor is worth 10 from a customer in Boca.
SOP 7: Service Area Rules

Stop driving an hour for a $200 job. These rules protect your time.

Home base: 839 31st St, West Palm Beach 33407 (Northwood)
Zone 1 (0-10 min): Always yes. Northwood, El Cid, Flamingo Park, Grandview Heights. $150 minimum.
Zone 2 (10-20 min): Default yes. Most of WPB, Lake Worth, Riviera Beach. $200-250 minimum.
Zone 3 (20-30 min): Check the math. Only if the job is $500+ or it's a repeat client. $250-300 minimum.
Zone 4 (30+ min): Almost always no. Boca, Ft Lauderdale, Jupiter, etc. Only for $1,000+ jobs or UHNW referrals. $300+ minimum.
The math: Calculate your effective hourly rate = (job price) Γ· (work time + round-trip drive time). If it's under $87/hr, the job isn't worth it at any tier.
Stack jobs: If you're already going to Jupiter for a big job, schedule a second job nearby the same day. That's how you make Zone 4 work.
SOP 8: Scope Protection & Licensed Work

What you can and can't touch as an unlicensed handyman in Florida.

✓ YOU CAN: Fixture-for-fixture swaps (electrical, plumbing), painting, drywall, flooring, mounting, pressure washing, cleaning, assembly, finish carpentry, smart home installs.
✗ YOU CANNOT: New electrical runs, new plumbing lines, structural work, HVAC, roofing, gas lines, anything requiring a permit.
When in doubt: "I can take a look, but if it needs [licensed trade], I'll let you know and can refer someone."
The CRM helps: The Scope Guard scans card text for licensed trade keywords and warns you before you proceed. Don't ignore it.
Referral play: When you refer out, you build trust AND a relationship with a licensed trade who might refer back. Win-win.
SOP 9: Daily Business Routine

The non-negotiable daily habits that keep the pipeline alive.

Morning (before jobs):
• Check Appointment Requests β€” respond to anything new
• Check the Sales Pipeline β€” any cards sitting in "New" for 24+ hours?
• Confirm today's scheduled jobs with clients (text)
After jobs:
Invoice immediately for completed work
• Update pipeline cards β€” move to correct stages
• Upload job photos to card
Evening (10 min):
• One post in a local Facebook group or Nextdoor
• Follow up on any unpaid invoices past 3 days
• Review tomorrow's schedule
SOP 10: Buying Materials & Markup

How to handle the materials side of any job.

Default: You buy materials, charge cost + 30% markup. This covers your time shopping, driving to the store, and knowledge of what to buy.
Client buys: No markup. But be specific about what they need β€” brand, model number, size. "Get a Moen Adler single-handle, chrome finish, model 87233." Vague = wrong parts = wasted time.
Receipts: Keep every receipt. Photo it into the CRM card. You need these for taxes (deductible expense) and for the client if they ask.
Specialty items: If a part needs to be ordered (not in stock at HD/Lowes), tell the customer upfront β€” "This will add 3-5 days for the part to arrive." Don't eat shipping costs unless you quoted it that way.
QuoteBot knows: When you run a QuoteBot estimate, it includes a materials section with markup already calculated. Use it.

Tutorials β€” How to Use Your CRM

Step-by-step instructions for every tab and feature. Start at the top and work your way down β€” they're in the order you'll use them.

1. Contacts Tab

Your customer database. Everyone you've worked with or might work with.

Add a contact: Click "+ Add Customer" at the top. Fill in name, phone, email, address. That's the minimum β€” everything else is optional.
Search: Type any part of a name, phone, or address in the search bar. It filters live as you type.
Sort options: "In a Pipeline" (top of dropdown) shows only customers with active sales or jobs cards β€” excludes Paid & Closed. Also sort by name, date added, or last contacted.
Contact details: Click any contact to expand their detail panel on the right. Shows their info, pipeline history, notes, and linked jobs.
Edit: Click the edit icon on any contact to update their info. Changes sync to Supabase automatically.
CSV Import: Got a list from DripJobs or a spreadsheet? Use the import button to bulk-add contacts. Map columns to fields and go.
Tags & Notes: Add tags for quick filtering (e.g., "Northwood", "repeat", "Airbnb"). Notes are freeform β€” use them for anything the fields don't cover.
2. Sales Pipeline Tab

Where leads become jobs. Every potential customer flows through here.

The board: Kanban columns from left to right = lead progression. New β†’ Contacted β†’ Appointment Set β†’ Estimate Sent β†’ Quoted β†’ Proposal Sent β†’ Won (or Lost).
Add a card: "+ Add Card" at the top. Or convert an appointment request β€” hit "β†’ Sales" on any request card.
Move cards: Drag a card to the next column. Each move triggers the workflow engine β€” you'll get smart prompts for the next action.
Edit a card: Click any card to open the edit modal. Update service, value, notes, description, photos. The description field feeds Quote AI.
Quote AI: Inside any card, scroll down to "Get AI Quote." It reads the card's photos and description, then generates a price estimate. Pick a tier (F&F, Budget, Mid, Premium) to adjust.
Won = promote: When you drag to "Won," the workflow asks if you want to create a job card in the Jobs Pipeline. Say yes β€” the data carries over.
Lost: Drag to Lost β†’ workflow asks for a reason (ghosted, price shopper, out of area, etc.). This data helps you understand your close rate.
3. Appointment Requests

Inbound leads from your booking form and client portal. Located on the Jobs tab.

How they arrive: When someone fills out your booking form (on your website or client portal), it creates an appointment request automatically. PORTAL badge = came through client portal.
What you see: Name, service requested, preferred date, phone, email, notes (click "read more" to expand), and photos they attached.
Status dropdown: New β†’ Contacted β†’ Scheduled β†’ Declined. Update as you go.
β†’ Sales button: Converts the request into a sales pipeline card with all the data pre-filled β€” name, service, notes, photos, description.
β†’ Job button: Skip the sales pipeline β€” creates a job card directly (for repeat clients or confirmed work).
🤖 QuoteBot button: Opens the QuoteBot tab with this request's customer info, service description, notes, and photos pre-loaded. Get a professional estimate without re-entering anything.
πŸ“… Book to Calendar: Creates a Google Calendar event from the request's date and details.
4. Jobs Pipeline Tab

Active jobs from start to finish. This is where the work gets done.

The board: Accepted β†’ Scheduled β†’ In Progress β†’ Completed β†’ Invoiced β†’ Paid & Closed. Also: Change Order, Warranty, Blocked.
Cards arrive here from the Sales Pipeline ("Won" β†’ promote) or directly from Appointment Requests ("β†’ Job").
Scheduling: Drag to "Scheduled" β†’ workflow asks to create a Google Calendar event. Or use the Scheduling tab for more control.
In Progress: Drag here when you arrive on site. Start date auto-stamps. Workflow asks about materials.
Completed: Drag here when the job is done. Completed date stamps. Workflow prompts: generate invoice, create invoice record, request review β€” one at a time.
Paid & Closed: The finish line. Receipt PDF + review request + auto-archive. You're done.
Blocked: Something's stuck. Workflow forces you to pick a reason β€” waiting on client, materials, access, weather, etc. Card gets a red badge.
5. QuoteBot Tab

Your professional estimating tool. Builds structured quotes you can send to clients.

Select a customer: Pick from the dropdown or it pre-fills from workflow/appointment request.
Add photos: Upload job site photos. QuoteBot analyzes them to understand the scope.
Describe the work: Notes, scope, description. The more detail, the better the quote.
Generate: Hit the button. QuoteBot classifies the address (zip code β†’ drive zone), calculates minimums, checks for licensed trade exclusions, and builds a full structured quote with line items, materials (with 30% markup), labor, and total.
AI Models: Choose between Gemini (fast) and Claude (thorough) in settings.
Output: Line items you can review, edit, then export as a professional PDF or use to create a Stripe invoice.
Prefill shortcut: The 🤖 QuoteBot button on appointment request cards and the workflow prompt on "Estimate Sent" both auto-fill QuoteBot with the lead's data.
6. Invoicing Tab

Create, send, and track invoices. Links to Stripe for auto-payment tracking.

Create invoice: Click "+ New Invoice." Select customer, add line items (description, quantity, rate), add materials. Total calculates automatically.
From a card: When you complete a job and the workflow prompts "Create Invoice?", it pre-fills from the pipeline card data.
Quick Filter: Filter invoices by status β€” All, Paid, Unpaid, Overdue. See what's outstanding at a glance.
Send: Generate a PDF and/or create a Stripe invoice. Stripe sends the payment link to the customer's email automatically.
Track: Stripe payments update automatically. Zelle/cash payments need manual logging β€” update the invoice status here.
Deposit invoices: For jobs that need upfront payment, the workflow prompts a deposit invoice when a lead moves to "Won."
7. Scheduling Tab

Calendar management. Syncs with Google Calendar.

Calendar views: Day, week, and month views. Switch between them with the buttons at the top.
Create event: Click any time slot or use "+ New Event." Fill in customer, service, date, time, duration, and address.
Google Calendar sync: Events created here sync to your Google Calendar. Events from Google show up here. Two-way.
Recurring jobs: Set up recurring schedules β€” weekly, bi-weekly, monthly. Great for maintenance clients.
From the pipeline: When a card moves to "Scheduled," the workflow asks to create a calendar event. You can also schedule from here manually.
Arrival windows: Set arrival time ranges (e.g., 9-11 AM) for customer communication.
8. Documents Tab

Generate proposals, contracts, and manage your PDF vault.

Proposals: Build professional proposals from templates. Include scope of work, pricing tiers, terms, and your branding. Send to clients for approval.
Tiered proposals: Offer Good / Better / Best options. Let the client pick their level.
PDF Vault: All generated PDFs stored here β€” invoices, proposals, work orders, receipts. Searchable by customer or document type.
PDF Maker: Build custom PDFs with your branding. Used for quotes, invoices, change orders, receipts, and liability waivers.
Workflow-triggered: Most PDFs are generated automatically when the workflow prompts you. You just click "Yes" on the popup.
9. Tasks Tab

Your personal to-do list and job checklists.

Add a task: Type it and hit enter. Assign a due date, priority, and optionally link to a customer or job.
HandyTime: Built-in time tracking. Start a timer when you begin work, stop when you're done. Logs hours per job for accurate billing.
Checklists: Create reusable checklists for common job types. "Ceiling Fan Install" checklist: turn off breaker, remove old fixture, mount bracket, wire connections, test, cleanup.
Google Tasks sync: Syncs with Google Tasks if connected.
10. Finance & Reporting Tab

Revenue tracking, expense logging, and business analytics.

Finance: Income and expenses tracked from Supabase. Add entries manually for Zelle/cash payments. View by month, quarter, or year.
Saved Services: Track your most common services and their average revenue. Helps with pricing decisions.
Marketing Reports: Track lead sources β€” where are your jobs coming from? Booking form, Facebook, referral, Nextdoor, etc.
Photo Reports: Before/after photo gallery organized by job. Great for marketing content and portfolio building.
Pipeline Analytics: Conversion rates, average deal size, time-in-stage. See where leads get stuck.
Dormancy Report: Which customers haven't been contacted in 30/60/90 days? Time to reach out.
Hub: Dashboard widgets showing key metrics β€” revenue, active jobs, unpaid invoices, review count.
11. Communications

SMS, email templates, and automation rules.

SMS (Twilio): Send texts directly from the CRM. Template messages for common situations β€” appointment confirmation, estimate follow-up, payment reminder, review request.
Email: Send emails from within the CRM. Templates available for estimates, invoices, and follow-ups.
Automations: Set up rules like "When a card moves to Estimate Sent, send follow-up SMS in 48 hours." Runs in the background.
Workflow-integrated: The workflow engine triggers SMS prompts at key stage transitions. You approve each one β€” nothing sends without your OK.
12. Map View

See all your jobs and leads on a map. Great for route planning.

Pin colors: Different colors for sales leads vs. active jobs vs. completed. See your service area coverage at a glance.
Click a pin: Shows customer name, service, and status. Quick link to open the card.
Route planning: When you have multiple jobs in a day, the map shows the most efficient order.
Service area visualization: See exactly where your jobs cluster. Should be within 20 min of Northwood. If pins are scattered to Boca and Jupiter β€” you're drifting.
13. Client Portal

Your clients' view β€” booking, invoices, job status. Branded to your business.

Booking form: Clients fill out name, phone, email, service needed, preferred date, notes, and upload photos. Creates an Appointment Request in your CRM.
Client view: Clients can see their invoices, job status, and documents. No login required β€” authenticated by their unique portal URL.
Branding: Portal shows your logo, colors, and business name. Looks professional β€” not like a generic form.
Share the link: Send your portal booking URL to clients via text or add it to your website, Facebook, Google Business Profile, and business cards.
14. Settings Tab

System configuration, branding, API keys, workflow toggles, and debug tools.

Branding: Upload your logo, set colors, business name, tagline. Applied across CRM, client portal, and generated PDFs.
API Keys: Enter your Google, Supabase, Gemini, Twilio, and Stripe credentials. These power the integrations.
Workflow Automations: Toggle individual stage workflows on/off. Don't want QuoteBot prompts? Turn them off here.
UI Settings: Customize the interface β€” sidebar style, default views, notification preferences.
AI Chat: Chat directly with the AI assistant for business questions.
Debug Tools: Tab Health, Full Audit, Error Sniffer, Dev Notes (changelog), and Audit Trail. Use these when something isn't working right.

Business Resources

Workflow Automation System

How It Works

Every time you drag a card to a new stage in either pipeline, the workflow engine fires. It looks up that stage and shows you a series of confirmation popups asking if you want to take the next logical action.

You always have three choices:

Yes β€” Do it now
Not Now β€” Skip this time, ask again next time
Skip Always β€” Never ask again for this card + action

If a stage has multiple actions (e.g. Completed has invoice + review request), they queue up one at a time. Answer one, the next appears. Non-interactive actions (logging, webhooks, date stamps) fire automatically in the background.

Red border popups are hard stops β€” no "Skip Always" option. These are safety gates (licensed trade scope warnings, financial actions).

Controls & Settings

Settings tab → Workflow Automations lets you toggle individual stage workflows on or off. Disable a stage = no popups for that transition.

Emergency Kill Switch: Open browser console and type:
window._WORKFLOWS_ENABLED = false
This instantly disables ALL workflow popups. Existing logging, stage transitions, and webhooks still fire β€” only the confirmation prompts stop.

Scope Guard: The engine automatically scans card text for licensed trade keywords (electrical, plumbing, HVAC, structural, roofing, gas). If detected, you get a red hard-stop warning before any other actions fire. You can mark a card as "I'm Licensed" to dismiss permanently.

Sales Pipeline Workflows
New
Auto: Logs lead creation + fires webhook
Contacted
Asks: Send initial contact SMS?
Appointment Set
Asks: Create Google Calendar event?
Estimate Sent
Asks: Open QuoteBot to build estimate? (No → opens PDF Maker instead)
Quoted
Asks: Generate quote PDF?
Proposal Sent
Asks: Generate proposal PDF? + Schedule 48hr follow-up SMS?
Won / Accepted
Asks: Promote to Jobs pipeline? + Generate deposit invoice? (if deposit > $0)
Lost
Asks: Record lost reason? + fires webhook
Revision Requested
Asks: Re-open estimate in QuoteBot? + auto-increments revision number
Revised Estimate / Proposal Sent
Asks: Generate revised PDF with version number?
Jobs Pipeline Workflows
Accepted
Asks: Generate work order? + Open scheduler to book?
Scheduled
Asks: Create Google Calendar event for this job?
In Progress
Auto: Sets start date. Asks: Open materials list?
Change Order
Asks: Generate change order PDF?
Completed / Done
Auto: Sets completed date. Asks: Generate final invoice? + Create invoice record? + Request review?
Invoiced
Asks: Publish to customer portal? + Send invoice notification SMS?
Paid / Paid & Closed
Asks: Generate receipt PDF? + Send review request? Auto: Archives if no follow-up
Warranty
Asks: Link to original job? + Generate liability waiver? + Schedule 30-day follow-up?
Blocked
Hard Stop: Must record blocked reason (waiting on client, materials, access, weather, etc.)
Quote AI vs QuoteBot

Quote AI (inside cards) is the quick tool. Upload photos or use existing ones, get a ballpark estimate in seconds. Uses Gemini. Has tiered pricing β€” after the quote shows, switch between:

F&F $60/hr Budget $87/hr Mid $100/hr Premium $137/hr

Tap a different tier → re-runs the quote at that rate. Use "Use This Quote" to set the card value.

QuoteBot (standalone tab) is the professional tool. Classifies the customer's address by zip code, calculates drive zone minimums, checks for licensed trade exclusions, suggests upsells, and produces structured JSON quotes with line items, materials markup, scope notes, and Florida compliance disclosures. Supports both Gemini and Claude.

Rule of thumb: Quote AI for "roughly what should I charge?" — QuoteBot for "send this to the client."

Audit Trail

Every workflow action is logged to the audit trail with timestamps, previous/new values, and metadata. This includes:

  • Every stage change (who, when, from → to)
  • Every confirmed action (PDF generated, invoice created, review sent)
  • Every hard stop acknowledgment
  • Scope guard flags and responses

View the full trail in Settings → Debug → Audit Trail. Max 5,000 entries retained.

Quote AI

🧠 Photo-to-Quote

Upload a job site photo and AI will analyze it, estimate materials and labor, and generate a structured quote.

Quote History

🤖 QuoteBot

⚙ Settings
tap to configure
Customer
📷 Job Photos
📷
Drag photos here or tap to upload
Max 10 photos
Job Description
Quote History

πŸ“· Job Photos

Photo Gallery

✍ AI Content Generator

Generate Marketing Content

Upload a job photo or describe the work β€” AI generates ready-to-post content in your voice.

Content History

Automations

Automation Rules

Create rules that trigger actions automatically when events happen in your CRM.

Execution Log

Parts Picker AI

AI Assistant

Map

πŸ“ Client Map
All customers with addresses. Green = has jobs. Blue = prospect. Gold circle = 15mi service area.
Loading map...
πŸ—ΊοΈ Canvassing Map
πŸ“ Pan the map β†’ position crosshair over house β†’ hit "Drop Pin". Works on any device. Blue dot = your GPS. "Find Me" snaps to your location.
πŸ“Œ Select Pin Type Active: πŸ“„ Flyer Left
Loading canvassing map...
πŸ“Š Canvassing Tracker
Stats from your map pins + manual logging for flyer runs and door knocking.

Log a Canvassing Run
πŸ‘‘ VIP Routes β€” High-Value Flyer Targets
Premium streets and neighborhoods ranked by home value and handyman demand. Hit these first when you've got flyers in hand.

+ Add Custom VIP Route

Settings

🎨 Branding

Customize your business identity, contact info, and visual theme

API Keys
Used for AI Chat, photo quoting, and document generation
Used for client map pins, geocoding, and service area
πŸ—“οΈ Google Calendar
Not connected
Get from Google Cloud Console β†’ Credentials β†’ OAuth Client ID (Web App)
Two-way sync: Events you create here appear on Google Calendar. Google Calendar events appear here. Auto-refreshes every 5 minutes.
πŸ“ Google Drive
Not connected
Auto-organized: Files upload to "PBF Command Center" folder. Customer files auto-sort into subfolders by name. Attach photos, receipts, and documents from any customer profile.
πŸ“± Twilio SMS & Calls
Checking...
Get credentials from console.twilio.com. Enables in-app texting, call logging, and callback reminders. Platform admin credentials auto-resolve from Supabase.
πŸ’¬ SMS Automations
Loading SMS settings...
⚑ Workflow Automations
Loading workflow settings...
☁️ Cloud Sync (Supabase)
Checking...
How it works: Every save auto-syncs to Supabase cloud. Data works offline via localStorage and syncs when back online. Use Push All for first-time upload or Pull to restore on a new device.
Data Management

Saved Services
Google Reviews
Find your Place ID at Google Place ID Finder. Used for direct review request links.
AI Business Context
Integrations
Active β€” Verified via MCP
Gmail✓ ACTIVE
Google Calendar✓ ACTIVE
Google Drive✓ ACTIVE
Stripe Payments✓ ACTIVE
Google Maps✓ ACTIVE
Google Tasks✓ ACTIVE
Available β€” Not Yet Connected
Twilio SMS/Calls✓ ACTIVE
QuickBooksMEDIUM
Outbound Webhooks (Zapier / Make)

Fire HTTP POST requests to external services when CRM events happen. Connect to Zapier, Make, or any custom endpoint.

App Install
PWA Status
Install the app for quick home screen access, offline use, and standalone mode. On mobile, the app defaults to Jobsite Mode for field work.
About
Command Center v3.23
Command Center CRM
Cloud-synced via Supabase Β· Auth + Client Portal Β· Offline-first via Service Worker
Built with Claude Code
πŸš€ Build Roadmap β€” Click Any Item to Start

Prioritized by impact Γ— ease. πŸ”΄ Red = fix now Β· 🟑 Shell built Β· πŸ”΅ Partial Β· βšͺ Planned. Click for directions + a ready-to-paste Charlie command.