Opportunity & Pipeline Management
Business perspective: Opportunity & Pipeline Management
1. Business Summary
Tracks deals from creation through win/loss, with detailed translation specifications via OpportunityJob, consultant groups, follow-ups, activities, conversions to projects/jobs.
2. Business Value
Captures the sales pipeline value and converts wins into delivery work without re-keying specifications.
3. Users / Stakeholders
Sales, AMs, PMs.
4. Workflows
A. Opportunity creation
- From lead/account; assigned creator_id, account_id, contact_id.
- Probability and currency determine pipeline weight.
- Loss reason captured on close.
B. Job specification (OpportunityJob)
- Source/target language, job type/mode/modality, content type, subject matter, voice-over type, transcreation/sync mode, DTP/QC levels, MT engine, applications, units, currency.
- Forms reusable basis for converting opportunity → real Jobs.
C. Consultant group
- HABTM OpportunityConsultantGroupsUsers defines a delivery team for the opportunity; loss reasons captured per group.
D. Conversion
- Opportunity → Project → Job (auto-conversion via Automation pipeline).
5. Sub-Features
- OpportunityJob detailed specs.
- ConsultantGroup.
- Activities, FollowUps, Notes, Cases linked.
- Probability-driven forecasting.
6. Business Rules
- OpportunityStatus and OpportunityLossReason govern won/lost.
- Currency required.
- Probability links to forecasts (0–100).
7. Data Entities
Opportunity, OpportunityJob, OpportunityConsultantGroup, OpportunityConsultantGroupsUser, OpportunityCategory, OpportunityType, OpportunityStatus, OpportunityLossReason, Probability.
8. Entry Points
crm/opportunities,crm/opportunityJobs,crm/opportunityConsultantGroups.- FreshSales:
getOpportunities()(deals).
9. Inputs & Outputs
- Inputs: opportunity data, jobs spec, consultant assignment.
- Outputs: pipeline records, jobs/projects post-conversion.
10. Integrations
- FreshSales: deals + custom fields.
11. Calculations / Logic
- Weighted value = amount × probability.
- Conversion of OpportunityJob spec into actual
Jobrecords.
12. Status Lifecycle
- OpportunityStatus (open → won/lost/closed).
- OpportunityLossReason on lost outcomes.
13. Permissions
- Creator, modifier, account team.
14. Reports & KPIs
- Pipeline weighted, win/loss ratio, loss-reason analysis, conversion rates.
15. Risks & Observations
- "Partially won" semantics not enforced in code → risk of inconsistent pipeline math.
- Consultant assignment HABTM duplicates possible without unique constraints.
16. Source Code Evidence
app/Plugin/crm/Model/Opportunity.php,OpportunityJob.php,OpportunityConsultantGroup.php.app/Plugin/crm/Controller/OpportunitiesController.php,OpportunityJobsController.php,OpportunityConsultantGroupsController.php.app/Plugin/crm/Controller/FreshSalesController.php::getOpportunities.