Recent IT tickets
Due soon
Website leads
Clients
Agency tasks
Sales pipeline
IT Tickets
Portal messages
Work completion sheets
Invoices
Reports
CRM invoices (Agency OS)
Square by month
Subscriptions due this month
Square payments
Database setup
Run SQL in the Supabase SQL Editor. Prefer the master file once; other files are optional patches.
- CRM/sql/00_agency_os_master.sql — recommended Agency OS tables (tickets, pipeline, blobs, website plan, invoices)
- CRM/sql/README.md — explains SQL vs crm_blobs (files/signatures/ticket details)
- Website Leads need prospects (from CRM/supabase_single_script.sql if missing)
- Legacy-only SQL under CRM/*.sql root + /CRM/legacy/ — not required for Agency OS
Square powers invoices & IT ticket charges. Client workspace: /CRM/onboard/ · IT tickets/sign-off: /CRM/client/
Square (EM Invoicer)
Set these on Vercel so invoices can create square.link payment URLs:
- SQUARE_ACCESS_TOKEN — Square Dashboard → Developer → Credentials
- SQUARE_LOCATION_ID — e.g. LHZPHKGX76TJB
- SQUARE_ENV — optional sandbox (omit for production)
Local PDF package: em-invoicer/ (ReportLab + square_client.py)
Square MCP (Cursor / agents) — already in .cursor/mcp.json:
{
"mcpServers": {
"square": { "url": "https://mcp.squareup.com/mcp" }
}
}
OAuth on first use. CRM invoices still use REST via SQUARE_ACCESS_TOKEN. See em-invoicer/SQUARE_MCP.md.