Zodiac Tech CRM Docs

Sales process & stages

Build the pipelines and stages your team drags leads through — names, colours, order and won/lost rules.

admin manager Medium ⏱ 15 min Updated 2026-10-05

Sales process & stages

Your sales process is the set of steps a lead walks through to become a customer: for example New → Contacted → Qualified → Quoted → Won. Each step is a stage, and stages live inside a pipeline. The Lead board draws one column per stage; every stage change is stamped with a time, which powers funnel, bottleneck and response-time reports.

You can run more than one pipeline (for example New Sales and Renewals) — each with its own stages. New leads land in your default pipeline.

Who this is for

  • Admins — configure the process once, correctly.

  • Managers — adjust stages as the business evolves.

  • Difficulty: Medium

  • Time: 15 minutes for a full first-time setup

  • Prerequisites: You are an admin (or have the pipeline permission). Leading a sales process design? Decide your steps on paper first.

Steps

1. Open pipeline management

  1. In the sidebar open Settings (the single Settings entry) → the Leads & Sales tab → Sales Process.

The URL is /admin/pipelines.

Expected result: the list of pipelines shows each pipeline's name, how many stages it has, and how many leads sit in it.

2. Create a pipeline

  1. Click New pipeline.
  2. Fill in:
    • Name — the process name your team will see (for example Sales, Renewals, Support).
    • Description — optional note.
    • Default toggle — the pipeline new unassigned leads enter.
  3. Add stages (see next step).

Expected result: saving creates the pipeline straight away; it appears in the list and in the pipeline selector on the Board.

Keep the default pipeline default Exactly one pipeline should be the default. That is where Facebook/Instagram leads, form submissions and imports land unless a lead form routes them elsewhere.

3. Add and arrange stages

  1. Inside the pipeline form, use the Stages list. Add a row per step.
  2. For each stage set:
    • Name — what the team calls it (Contacted, Demo Booked, Negotiation…).
    • Colour — used on the board, badges and reports (default indigo #6366f1).
    • Won — tick for the final "deal closed, money earned" stage.
    • Lost — tick for the final "deal closed, no sale" stage.
  3. Drag stage rows to set the order the board shows them in.

Expected result: the stage list reads top-to-bottom exactly like your process, and the board columns appear in that order.

4. Rename or recolour later

  1. Open the pipeline, change the stage, save.

Expected result: the new name/colour shows everywhere immediately (board, stage badges, filters). Historical leads keep their history — only the label changes.

5. Check the plan limit

  1. If the New pipeline button refuses, you have reached your plan's pipeline limit.

Expected result: the CRM tells you the limit; delete an unused pipeline or upgrade your plan.

Expected result

Your team opens the Board and sees exactly the steps of your process — nothing generic. Won/lost stages are clearly marked, so reports can separate "in progress" from "finished".

Common mistakes

  • Too many stages. Ten stages means nobody updates anything. Four to seven is the practical range.
  • Forgetting to mark a Won stage. Revenue reports use the won/lost marking (and the won value); without it, closed deals look like they are still in progress.
  • Deleting a pipeline that holds leads. Move its leads to another pipeline/stage first — check the leads count column before deleting.
  • Creating a second pipeline when you only needed a new stage. Pipelines are separate processes, not extra steps.
  • Renaming a stage in the middle of a campaign. Harmless for data, but tell the team — reports and filters use the new name.

Troubleshooting

Symptom Fix
Changes do not appear on the Board Refresh; confirm a lead's stage actually belongs to the pipeline you are viewing.
"New pipeline" is disabled Plan limit reached, or you lack the pipeline permission.
Lead shows a stage from another pipeline The lead was moved by a form routing rule or a merge; fix it from Lead 360 with Move stage.

Technical details

  • Admin screens: App\Filament\Resources\PipelineResource (Settings cluster, section Leads & Sales). Creation is capped by PlanGate::withinCreationLimit('max_pipelines').
  • Data model: App\Models\Pipeline (name, description, is_default) and App\Models\PipelineStage (name, colour, is_won, is_lost, sort_order). Stage rows are reordered via Filament's orderColumn('sort_order'), which is also the Board's column order.
  • Moving a lead sets pipeline_stage_id + pipeline_id and stamps stage_entered_at via App\Observers\LeadObserver — that timestamp feeds funnel/bottleneck reporting.
  • The Board renders stages for the selected pipeline only.

Was this page helpful?