Telecaller & Leads
Call Management
Lead Status Lifecycle

Lead Status Lifecycle

The Lead Status system defines the complete lifecycle of a contact from initial outreach through final resolution. Each status represents a distinct state in the sales funnel and carries specific rules, effects, and transition constraints.

Status Definitions & Codes

Complete Status Reference Table

CodeDisplay NameCategoryActiveNext Follow-upAuto-CloseNotes
SVSite Visit FixedConversionYesUpon visitNoCreates site visit entry
CPClient PendingActiveYes2-3 daysNoAuto-reminder enabled
TRTrashedClosedNoNoneYes (30 days)Eligible for purge
NRNo ResponsePendingNoAuto-retry or closeYes (after N attempts)Counter tracked
WBDWaiting for Booking DetailActiveYes1-2 daysNoAwaits customer input
CBCall BackScheduledYesScheduled dateNoManager notified if overdue
NINot InterestedClosedNoNoneYes (7 days)No further contact
WNWrong NumberInvalidNoNoneYes (immediate)Marked for cleanup
DNDDo Not DisturbBlockedNoNoneYes (as per regulation)Legal block, no calls

Status Transition State Machine

Status-Specific Effects

SV Fixed (Site Visit)

When a lead transitions to SV Fixed:

EFFECTS:
├─ Create SiteVisit record with:
│  ├─ Lead ID
│  ├─ Scheduled date (from call notes)
│  ├─ Assigned field officer (if available)
│  └─ Status = Pending
├─ Send notification to Manager:
│  └─ "New SV Fixed: [Customer Name] on [Date]"
├─ Update Lead.IsActive = true
└─ Create follow-up reminder for field officer

CP (Client Pending)

When a lead transitions to CP:

EFFECTS:
├─ Set Lead.IsActive = true
├─ Create auto-reminder:
│  ├─ Scheduled: NOW + 2-3 days
│  ├─ Type: Customer Follow-up
│  └─ Assignee: Original TC
├─ Increment CP_Counter
├─ Update Last_Activity_Date
└─ Alert UI: Show "Follow-up due on [Date]"

Trashed (TR)

When a lead transitions to Trashed:

EFFECTS:
├─ Set Lead.IsActive = false
├─ Clear all active reminders
├─ Remove from active dashboard
├─ Mark eligible for auto-close:
│  └─ After 30 days: Automatically archive
├─ Log closure reason (if provided)
└─ Remove from reassignment pool

No Response (NR)

When a lead transitions to NR:

EFFECTS:
├─ Increment NR_Attempt_Counter
├─ Schedule auto-retry:
│  ├─ Time: NOW + 24-48 hours
│  ├─ Max retries: 3
│  └─ If max reached → Auto-transition to TR
├─ Update Last_Contact_Attempt
├─ Alert TC: "[X] more attempts before auto-close"
└─ If Counter >= N: Auto-transition NR → TR

Call Back (CB)

When a lead transitions to CB:

EFFECTS:
├─ Set Callback_Date from call notes
├─ Create reminder:
│  ├─ Scheduled: Callback_Date - 1 hour
│  ├─ Alert: "Callback due in 1 hour"
│  └─ Assignee: Original TC
├─ Flag as overdue-eligible:
│  └─ If NOW > Callback_Date: Mark overdue
├─ Manager notification if overdue > 24 hours
└─ Lead remains active until callback

Not Interested (NI)

When a lead transitions to NI:

EFFECTS:
├─ Set Lead.IsActive = false
├─ Log decline reason
├─ Remove from active follow-up queue
├─ Mark for auto-close: 7 days
├─ Alert: "Lead marked not interested"
└─ Prevent further outreach

Transition Rules & Restrictions

Invalid Transitions (Require Manager Override)

Natural/Allowed Transitions

  • Active States (CP, WBD, CB): Free transitions between each other
  • To SV: From CP, WBD, CB, or Fresh
  • To NR/NI/WN/DND: From any active state (one-way to closed)
  • To TR: From any state (final closure)

Manager Override Requirements

A TeleLeader can manually override invalid transitions for:

  • Reopening Trashed leads (e.g., customer called back)
  • Reviving Not Interested leads (e.g., customer reconsidered)
  • Clearing DND status (e.g., customer removed from registry)
  • Reassigning from Wrong Number (e.g., corrected number obtained)

Audit Trail: All manager overrides are logged with:

  • Original state
  • New state
  • Manager ID
  • Override reason
  • Timestamp

Auto-Closure Rules

No Response Attempt Counter

The NR status uses an attempt counter to prevent infinite retry loops:

NR Status Rules:
├─ Counter starts at 0 when status = NR
├─ Each retry increments counter by 1
├─ System auto-schedules retry every 24-48 hours
├─ Max retries = 3 attempts
├─ On Counter >= 3:
│  ├─ Lead auto-transitions to TR (Trashed)
│  ├─ Notification sent: "Max attempts reached"
│  └─ Marked for auto-close
└─ TC can manually reset counter (requires notes)

Performance & Monitoring

  • All transitions are tracked and timestamped
  • Status change queries are optimized with indexes on (LeadId, Status, ChangedDate)
  • Auto-closure runs nightly via scheduled job
  • Manager alerts for overdue CB status are sent daily