Phase 1: tier demo landing pages, CRM schema, playbooks
- templates/landing: two self-contained demos (Tier A barbershop / Google stack, Tier B physio / self-hosted) + chooser page - sheets/SCHEMA.md: Google Sheets CRM workbook spec - playbooks: per-client setup checklists for both tiers - README + .gitignore - Demos avoid unverifiable claims (no "DSGVO-konform", no "Ende-zu-Ende") Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
# Master CRM — Google Sheets workbook spec
|
||||
|
||||
One Google Sheets workbook = the whole CRM + log. I create/maintain this via the Google Drive MCP
|
||||
once the fresh project Google account exists (Phase 2). n8n reads/writes it via the Sheets node.
|
||||
|
||||
Workbook name: **`SMB-Online — CRM`**. One tab per concern below. Row 1 = headers (exact column
|
||||
names matter — n8n maps by header).
|
||||
|
||||
## Tab: `Clients`
|
||||
The client list/table — the heart of the tracking requirement.
|
||||
|
||||
| Column | Type | Notes |
|
||||
|---|---|---|
|
||||
| `client_id` | text | e.g. `C-0001` (stable key) |
|
||||
| `business_name` | text | |
|
||||
| `owner_name` | text | |
|
||||
| `email` | text | |
|
||||
| `phone` | text | |
|
||||
| `niche` | text | barber, physio, café, … |
|
||||
| `tier` | A \| B | delivery tier |
|
||||
| `status` | enum | `lead` → `onboarding` → `active` → `paused` → `churned` |
|
||||
| `domain` | text | live site URL |
|
||||
| `stack_notes` | text | hosting, booking tool, etc. |
|
||||
| `vault_ref` | text | **pointer** to Vaultwarden item — never a password |
|
||||
| `services` | text | comma list: site, booking, reception, … |
|
||||
| `billing_cycle` | enum | monthly / yearly / one-off |
|
||||
| `monthly_fee_eur` | number | |
|
||||
| `start_date` | date | |
|
||||
| `renewal_date` | date | drives the renewal-reminder workflow |
|
||||
| `created_at` | datetime | |
|
||||
| `notes` | text | |
|
||||
|
||||
## Tab: `Leads`
|
||||
Every inbound lead across all client sites (and your own).
|
||||
|
||||
`lead_id` · `received_at` · `client_id` · `source` (which site/form) · `name` · `contact` ·
|
||||
`service_interest` · `message` · `status` (new / contacted / won / lost) · `notified` (bool)
|
||||
|
||||
## Tab: `Bookings`
|
||||
Every appointment booked across client sites.
|
||||
|
||||
`booking_id` · `created_at` · `client_id` · `customer_name` · `customer_contact` · `service` ·
|
||||
`start_time` · `end_time` · `source` (gcal / calcom) · `status` (confirmed / cancelled / no-show)
|
||||
|
||||
## Tab: `Projects`
|
||||
Per-client deliverable tracking.
|
||||
|
||||
`project_id` · `client_id` · `deliverable` · `tier` · `checklist` (e.g. `domain✓ page✓ booking☐`) ·
|
||||
`go_live_date` · `status` (todo / in-progress / live)
|
||||
|
||||
## Tab: `Invoices`
|
||||
`invoice_id` · `client_id` · `issued_date` · `due_date` · `amount_eur` · `period` ·
|
||||
`status` (draft / sent / paid / overdue) · `paid_date`
|
||||
|
||||
## Tab: `Activity Log`
|
||||
Append-only audit trail — **every automated action writes one row here.**
|
||||
|
||||
`ts` · `workflow` (lead-intake / booking-sync / renewal / onboarding / invoice) · `client_id` ·
|
||||
`action` · `detail` · `result` (ok / error)
|
||||
|
||||
## Dashboard
|
||||
Not a tab — a **Looker Studio** report wired to this workbook: pipeline by `status`, MRR
|
||||
(sum of `monthly_fee_eur` where `status=active`), renewals due in next 30 days, recent leads.
|
||||
Reference in New Issue
Block a user