Lead Management Systemv2.15.0changelog

The whole client journey — one console.

SED LMS runs the pipeline, builds the client's website, ships it to their domain, sends the contract and keeps the conversation — without anyone leaving the dashboard. Every screen and every action is gated by permissions you control.

app.sedsolutions.online/dashboard
Dashboard
+ New Lead
Total
247
+12
Ready
38
15%
Quoted
86k
+9k
Rating
6.8
/8
By Agent
Recent Leads
Brava RoofingReady$750
Lumen DentalNot Ready$500
Coastline HVACClosed$1,200
Northgate LawDropped$0

One system, six surfaces

PipelineWebsite generationDeploymentMailboxContractsOperations

Lead pipeline

Every lead, with the context to act on it.

Leads move through clear statuses, belong to a named agent, and carry their own follow-up schedule. Filter down to exactly the slice you work on, save that slice as a view, and act on the whole selection at once.

  • Statuses from first contact through to closed — with per-status view and set permissions.
  • Assignment to an agent and a closer, plus bulk reassignment across a selection.
  • Follow-up logging with pickup outcomes, a required next contact time, and overdue/today/upcoming queues.
  • Colour-coded tags you own, can share with teammates, and can apply in bulk.
  • Saved views: name a filter-and-sort combination once, reload it in a click.
  • Bulk status changes, assignment, tagging, archiving and CSV export of the current filter.
Pipeline
saved view · “My ready leads”
ReadyNot ReadyLong TermClosedDropped
Filter
Search, status, agent, site type, region, tags, month.
Tag
Your own colour catalog — shareable with the team.
Follow up
Log the call, set the next time, watch the queue.
Assign
Hand a batch of leads to another agent in one action.

Template Engine

A client website, generated from the lead itself.

Everything sales already captured — the business name, services, service areas, photos and the pages they asked for — becomes the brief. The operator drives a five-step wizard; the system writes the copy, sources the imagery, builds the site and refuses to hand over anything broken.

Operator wizard
  1. 01
    Setup

    Pick the lead and the template. A readiness panel shows what the brief is missing before you start.

  2. 02
    Content

    Pages are derived from the lead's own request; the model writes headlines, services, FAQ and page metadata.

  3. 03
    Images

    Candidate photos are gathered, ranked, and presented per slot. The client's own photos always come first.

  4. 04
    Build

    The site is assembled file by file with a live step tracker and preview.

  5. 05
    Review

    Verification gates run. Preview any page, download the build, or reopen it for edits.

AI copywriting

Hero, services, stats, testimonials, FAQ and per-page metadata — written from the real business details, never invented credentials.

Image sourcing

Stock candidates plus the client's own photos, gathered per image slot with a cache so repeat builds stay fast.

Vision ranking

A vision pass scores every candidate for relevance and quality, and can drop shots containing people.

Verification gates

Leftover template identity and altered page structure both block the build — a broken site cannot reach review.

Preview & edit

Open any generated page in-app, reopen the build for changes, and rebuild without starting over.

Automatic pages

Requested pages map onto a canonical set — home, about, services, areas, gallery, contact — with detail pages fanned out per service.

Deployment & domains

Staging for the client. Then their own domain.

A finished build goes live on a staging subdomain in one click, so the client can look at a real site rather than a screenshot. When they approve, the same site moves onto their domain.

01

Publish to staging

One click creates the subdomain, uploads the build and writes the live link back onto the lead.

02

Client reviews

Share the staging link. Redeploy in place after changes, or take the site down if the deal stalls.

03

Transfer to their domain

Files are taken fresh from the live server — so late edits survive — and the staging subdomain is removed automatically.

Deployments board

Every deployed site in one table — live URL, when it shipped, and redeploy, take-down and transfer actions per row.

Mail & contracts

Close the deal without switching tabs.

The company mailbox and the contract paperwork both live inside the console, attached to the lead they belong to.

Company mailbox

Company email accounts are linked to the people who use them, with credentials stored encrypted and both the incoming and outgoing connection verified before anyone relies on it.

Read

Inbox and Sent, in a list-and-reading view.

Compose & reply

Straight from the message you are looking at.

Attachments

Send files out, download what came in.

Unread badge

New mail surfaces in the sidebar and the tab title.

Contract automation

Bring your own Google Docs templates. The system copies the document, fills its placeholders from the lead, exports a PDF and sends it from the agent's own address with their signature applied.

Placeholders
{{business_name}}{{one_time_price}}{{yearly_price}}{{agent_name}}{{date_long}}
  • PDF export of the merged document.
  • Sent from the agent's own mailbox, not a shared one.
  • Per-agent signature — uploaded image or typed name.
  • Per-contract price overrides for discounts.

Operations

The work around the work, handled.

Delivery, money and reporting all hang off the same records, so nothing has to be re-entered anywhere.

Tickets

Change and improvement requests against a lead, with checklists, attachments, an assignee, a due date and escalation when they run late.

Payments

Managed payment links by category and currency, kept beside the client they belong to.

Analytics

Pipeline, revenue, conversion, follow-up and ticket metrics — with each KPI and chart individually grantable.

Departments

Group-level permission sets people can belong to one or many of.

Granular permissions

Roughly ninety named permissions across every module, enforced on the server and not merely hidden in the interface.

Notifications

Rule-driven alerts for follow-up reminders, ticket movement, incoming mail, finished websites and failed contract sends.

How access is decided

Access that bends to your org.

A person's access is resolved live: start with the permissions of every department they belong to, then layer on individual grants or revokes. Put someone in two departments and they get the union automatically. Need an exception? One override — no code, no redeploy.

access = Σ departments + grants − revokes
Departments
Group-level permission sets (Sales, Tech, …)
Membership
Belong to one or many — access is the union
User overrides
Force-grant or revoke a single permission
Effective access
What the user actually sees and can do — recomputed on every request.

Built with

Boring where it counts.

Typed end to end, validated at the boundaries, and tested — on a managed PostgreSQL database with row-level security.

Application

  • Next.js 16 (App Router)
  • React 19
  • TypeScript
  • Tailwind CSS v4

Data & auth

  • Supabase PostgreSQL
  • Auth & Storage
  • Realtime
  • Row-level security

Integrations

  • Google Gemini — content
  • Gemini vision — image ranking
  • Google Drive & Docs APIs
  • IMAP/SMTP (imapflow, nodemailer)

Quality & delivery

  • Zod schema validation
  • Vitest test suite
  • Deployed on Hostinger

Take control of your pipeline.

Sign in to the console and run the lead, the website, the contract and the conversation from one place.

v2.15.0 · read the changelog