About the Client
💼 About the Client
Our client is an IT products distribution company operating across Delhi NCR — supplying hardware, software, and IT peripherals to corporate clients, SMBs, and government entities. With a dedicated sales team handling multiple enterprise accounts, their sales cycle involves three distinct teams: Sales, Purchase, and Operations — each playing a critical role before a deal is closed.
Despite a strong product portfolio and growing client base, the company was struggling with one fundamental problem: their sales process had no structure. Three teams were working on the same deal at different points in the cycle, but with no shared system — only WhatsApp messages, forwarded emails, and individual spreadsheets.
ℹ️ Client at a glance
IT products distributor · Delhi NCR · B2B enterprise and SMB customers · Multi-team sales process (Sales, Purchase, Operations) · Name withheld for confidentiality.
Problems Found
⚡ The Problems We Found
Before designing any solution, we mapped the existing process end-to-end. Four core breakdowns were costing the business deals every week.
1
Leads Assigned to the Wrong Salesperson
When a new lead came in for a company that already had an account owner, it was manually assigned to whoever entered it — not to the existing account owner. Multiple salespeople were approaching the same company, creating internal confusion and duplicate outreach.
2
Quotes Sent Without Complete Buying Prices
There was no system blocking quotations when buying prices were missing. Sales reps were creating customer quotes before the Purchase team had confirmed costs — leading to incorrect margins, loss-making proposals, and embarrassing revisions after the customer received the quote.
3
Purchase Delays Had No Tracking or Escalation
When the Purchase team was slow to update buying prices, there was no system tracking how long a deal had been waiting. Deals sat at the pricing stage for days without anyone being notified — directly impacting the speed of quotation delivery to customers.
4
Deals Were Manually "Closed" Without Approval Trail
Sales reps were manually marking deals as Closed Won — without any quotation approval from the customer being recorded. This made pipeline reporting unreliable, win rates inflated, and post-sale order processing disconnected from actual customer commitment.
"We were sending quotes before knowing the actual cost, and closing deals without any record of customer approval. The whole pipeline was running on trust and WhatsApp messages."
— Sales Manager, IT Products Distributor
Before vs. After
📊 Before vs. After
❌ Before Zoho CRM
New leads manually assigned — often to wrong person
No system check for existing account owners
Quotes created without complete buying prices
Purchase delays invisible — no escalation system
Deals closed manually — no quotation approval required
Three teams working in silos — no shared visibility
Pipeline accuracy: guesswork
✓ After Zoho CRM
Leads auto-routed to correct account owner via function
Company existence check runs automatically on every lead
Stage locked until all buying prices confirmed by Purchase team
3-day escalation cycle — Pending → Priority → High Priority
Closed Won triggered only by customer quotation approval
Sales, Purchase, Operations in one shared CRM workflow
Pipeline accuracy: real-time, fully auditable
What We Built
⚙️ What We Built
After mapping the existing process, we spent two days designing the CRM architecture before writing a single configuration. The implementation covered four tightly connected layers.
🔀
Intelligent Lead Assignment Function
A custom Zoho CRM function (Lead_owner_assign) that automatically detects company matches and routes leads to the correct account owner — eliminating manual assignment entirely.
🔒
Stage-Locked Pipeline with Validation Gates
A 4-stage deal pipeline where each transition is governed by system-enforced validation rules — no stage can be skipped, no pricing can be bypassed.
⏱️
Time-Based Purchase Status Escalation
An automated escalation system that tracks how long buying prices have been pending — escalating from Pending to High Priority over 3 days with notifications at each level.
🤖
Automated Deal Closure via Quotation Approval
Closed Won is triggered exclusively by customer quotation approval in the Quotes module — no manual update possible. Every won deal has a verified, approved quotation behind it.
Lead Management
🔀 Intelligent Lead Assignment —
No More Wrong Owners
The most immediately impactful fix was lead routing. Every new lead now goes through an automatic company existence check before being assigned. If the company already exists in the CRM, the lead is routed to that company's existing account owner — not to whoever entered it.
🏢 Company Already Exists in CRM
1. System detects company name match
2. Retrieves existing company owner
3. Lead_owner_assign function triggers
4. Lead assigned to correct account owner
5. Notification sent to assigned owner
✨ Company Does Not Exist
1. No match found in CRM
2. New company record created
3. Lead assigned to current salesperson
4. Standard assignment process applies
5. Salesperson becomes account owner
⚙️ Zoho CRM Custom Function
Lead_owner_assign
Trigger
New lead entered — company name matched to existing CRM record
Lookup
Searches CRM company records for exact company name match
Fetch
Retrieves Owner field from the matched company record
Action
Sets Lead Owner = Company Owner; logs assignment in activity history
Notification
Sends CRM notification + email to assigned owner immediately
Edge Case 1
Company exists but no owner → Lead falls to default assignment queue
Edge Case 2
Company owner is inactive → Lead escalated to Sales Manager automatically
Deal Pipeline
🔄 The Custom Sales Pipeline
Four pipeline stages — each with specific team ownership, mandatory actions, and system-enforced validation before the next stage can be reached.
Stage 1
Submit for Cost
Sales Team
Stage 2
Operation Reviewed
Purchase Team
Stage 3
Quotation Draft
Sales Team
Stage 4
Closed Won
🤖 Automated
Lead is converted to a deal. Salesperson adds all products to the deal record and sets the stage to Submit for Cost. This automatically triggers an email to the Purchase team — listing the deal name, company, and all products requiring buying prices.
Products added to deal
Email auto-sent to Purchase team
Purchase Status = Pending
Purchase team fills buying prices for every product in the deal. This is the most critical stage gate — the system blocks the transition if even one product is missing a buying price. Once all prices are confirmed, the stage changes and Purchase Status is set to Completed.
🔒 Blocked if any buying price empty
All products must have prices
Purchase Status → Completed
Salesperson reviews buying prices, fills sale prices for all products, and moves to Quotation Draft. Margin is calculated automatically. The system creates a linked Quotation record in the Quotes module — all products and sale prices pre-populated.
Sale prices entered
Margin auto-calculated
Quotation auto-created in Quotes module
When the customer approves the quotation, the system automatically sets Deal Stage = Closed Won. No manual update is required or permitted. Close date is recorded, management dashboard updates, and the Purchase team is notified for order fulfilment initiation.
Quotation Approved → Auto Closed Won
Cannot be manually set
Close date auto-recorded
Purchase Status Tracking
⏱️ 3-Day Escalation System —
No Pricing Delay Goes Unnoticed
Once a deal enters Submit for Cost, a Purchase Status field begins tracking how long the buying price update is taking. The status escalates automatically — with the right people notified at each level — ensuring no deal sits without pricing.
🟡 Pending
Day 1 — Deal enters Submit for Cost
Initial email sent to Purchase team with deal details and product list. No action taken yet — Purchase team has 24 hours before first escalation.
🟠 To Priority
Day 2 — Buying price still not updated
Reminder email sent to Purchase team. Salesperson is also notified. Urgency escalated — expected response within the day.
🔴 High Priority
Day 3+ — Still no update
Escalation triggered to Purchase Manager and Sales Manager. Deal flagged in management dashboard. Urgent resolution required.
🟣 More Time Needed
Any Day — Manually set by Purchase Team or Manager
Special status for extended timelines. A reason note must be entered. Pauses auto-escalation to High Priority. Management informed. No auto-escalation after this — oversight continues manually.
🟢 Completed
All buying prices filled — Stage changed to Operation Reviewed
Purchase Status locked as Completed. System confirms all buying prices are present before allowing stage transition. Deal moves forward.
Validation Logic
🔒 Validation Rules That
Enforce the Correct Process
Each stage gate prevents the most common errors that were causing problems in the original process.
Gate 1 — Submit for Cost → Operation Reviewed
🚫 BLOCKED
One or more products have empty buying price. System error: "Please fill buying price for all products." Stage remains at Submit for Cost.
✅ ALLOWED
All products have buying prices filled. System validates and permits transition. Purchase Status auto-updated to Completed.
Gate 2 — Operation Reviewed → Quotation Draft
🚫 BLOCKED — Sale Price Required for All Products
Sales person must fill Sale Price for every product before moving to Quotation Draft. This prevents a quotation being created with blank or zero sale prices — which would mean an incorrect offer going to the customer.
Gate 3 — Quotation Draft → Closed Won
🤖 AUTOMATED — Cannot Be Manually Set
Closed Won is exclusively triggered by Quotation Approval. When the customer approves the quotation in the Quotes module, the system automatically sets the linked Deal Stage to Closed Won. No salesperson can manually move a deal to Closed Won — this eliminates inflated win rates and ensures every closed deal has a verified, approved quotation.
Quotation Workflow
📄 Quotation Creation &
Approval Flow
When a deal enters Quotation Draft, a linked Quotation record is automatically created in the Quotes module. All products and sale prices are pre-populated — the salesperson reviews, finalizes, and sends to the customer.
1
Quotation Auto-Created
System creates a linked Quotation in the Quotes module. Products, quantities, sale prices, and customer details all pre-populated from the deal. Status: Draft.
2
Review & Send to Customer
Salesperson reviews quotation content, sets validity date, and sends to customer. Status: Sent.
3
Customer Reviews
Customer reviews the quotation. If revisions needed, quotation returns to Sales for adjustment. Revised quotation re-sent to customer.
4
Quotation Approved → Deal Auto-Closed Won
Customer approves. Quotation status = Approved. System automatically sets linked Deal Stage = Closed Won. Close date recorded. Purchase team alerted for fulfilment.
Results
🏆 Results — After Go-Live
| Metric |
Before |
After Zoho CRM |
Change |
| Lead assignment accuracy | Manual — often wrong owner | 100% auto-routed correctly | ↑ Zero errors |
| Quotes sent without buying prices | Happened regularly | Impossible — system blocks | ↓ 100% |
| Purchase delay visibility | None — invisible | 3-day escalation + notifications | ↑ Full visibility |
| Deal closure method | Manual — rep marks as won | Automated via quotation approval | ↑ 100% verified |
| Pipeline accuracy | Guesswork | Real-time, fully auditable | ↑ Always live |
| Cross-team coordination | WhatsApp + email | One shared CRM workflow | ↑ Fully structured |
"We now know every deal has a complete buying price before it's quoted, and every win has an actual customer approval behind it. The pipeline data is finally something we can trust."
— Sales Manager, IT Products Distributor, post go-live
Key Learnings
⭐ What Made This
Implementation Work
🗺️
Process Mapping Before Configuration
We spent two days mapping the existing sales process with all three teams before touching any CRM settings. Every validation rule and automation trigger is based on real pain points — not generic CRM templates.
🔒
Enforcement Over Honour System
Previous process relied on reps "remembering" to fill buying prices. The new system makes it structurally impossible to proceed without them. Behavior changed because the system made it unavoidable — not because people tried harder.
⏱️
Escalation Replaces Manual Follow-up
The purchase status escalation system eliminated the need for salespeople to chase the purchase team manually. The system does the follow-up — with the right person, at the right time, automatically.
🤖
Automated Closure Builds Trust in Pipeline Data
Making Closed Won exclusively driven by quotation approval was the single change that made the pipeline data trustworthy. Management now knows every "won deal" has a verified customer approval — not just a rep's optimism.
Zoho CRM
Sales Pipeline Automation
IT Distribution
Lead Assignment Automation
Purchase Workflow
Quotation Approval
Deal Closure Automation
B2B Sales
CRM Validation Rules
Zoho CRM Implementation
More Case Studies
More Case Studies
🏭 Manufacturing · B2B
Custom Zoho CRM for a Chemical Manufacturer — 3× Deals in 90 Days
7-stage B2B pipeline, auto lead routing, reorder automation. 80% less manual entry.
Read Case Study →
🏛️ NGO · Zoho Creator
Custom Zoho Creator App for NGO Beneficiary Management
4-level approval workflow, Unique Beneficiary ID system, 30+ field users onboarded.
Read Case Study →
🏠 Real Estate · Zoho One
Zoho One Implementation for a Real Estate Group
6 tools → Zoho One. Post-booking from 3 days to 5 minutes. ₹2.4L saved annually.
Read Case Study →