Skip to content

Leads Module

Reference business module for the EloSync platform. Every future module (Tasks, Invoices, Inventory, etc.) must mirror this structure.

Guides

AudienceDocument
Operators / workspace usersleads-user.md
Engineersleads-developer.md
Production / opsleads-production.md
Meta App + EloSync connectmeta-app-setup.md
Module Development Standardmodule-development.md
Tenant API../api/tenant-v1-leads.md

Capabilities (Sprint 2 CRM UX)

  • Pipeline stages (seeded: New → Contacted → Qualified → Proposal → Negotiation → Won / Lost)
  • Disposition tags — multi-select catalog (CRUD + sort order); seeded Not Contacted (default), Contacted, No Response (auto follow-up days), Invalid Number, Not Interested, Not Applied, Follow Up Later (requires creating a follow-up). Tags are independent of stage/status; badges on board, table, and detail.
  • Independent statusactive, waiting, on_hold, closed, archived (not derived from stage)
  • Prioritylow, medium, high, urgent
  • Lead valuelead_value (renamed from estimated_value; API still accepts the old key as an alias on write)
  • Assignment with assignment history table
  • Notes, follow-ups (create / update-reschedule / complete), activity timeline
  • Kanban board (default) + table view; drag-and-drop auto-saves the stage change
  • Hybrid list sheet — New / N and board/table peek open a side sheet for fast create and tabbed peek; dedicated record pages remain for convert, AI, deep links, and notifications
  • KPIs via GET /leads/stats; board via GET /leads/board
  • Export CSV / XLSX of the current filtered set (leads.export)
  • Import CSV / XLSX via multi-step wizard (leads.import) — column mapping (including optional first Note), duplicate modes, preview, queued processing, history + reports
  • Inbound integrations (leads.manage_integrations) — Custom webhooks (Zapier-ready) + Meta Lead Ads OAuth / Page subscribe
  • Convert (leads.convert) — sets converted_at, records a converted activity, sets status closed; creates/links a real Contact when that module is installed (plus Company when the lead has a company name); optionally creates an Opportunity when the agent opts in; otherwise stays status-only for Contacts
  • Assignee scoping — without leads.assign, users only see their own leads
  • Module licensing (module:leads) + Spatie permissions
  • Audit + activity logging; assignment / follow-up notifications (mail + database)

Permissions

leads.view · create · update · delete · assign · export · import · convert · manage_integrations

Explicitly deferred

  • Conversion to Companies (organizations)
  • Workflow automations (installable Marketplace module — see Automation; not a hard-coded Lead feature)
  • Real-time board sync (Reverb / Echo)

Official documentation for the EloSync SaaS Platform.