Zoho CRM workflow automations for a multi-brand product company
Support inquirys weren’t creating deals. Paid invoices weren’t updating pipeline stages. And there was no way to see how many emails or calls a rep had made on a deal. We built four automations that closed every gap.
CRM data was stale, disconnected, and manually maintained.
The sales team used Zoho CRM as their pipeline tool, but critical data from other Zoho apps never made it there. Deals were created manually, stages weren’t updated when invoices were paid, and reps had no visibility into their own activity metrics.
Form inquiries disappeared
When a customer submitted a purchase or partnership inquiry through the website, no deal was created in CRM. The lead sat in the form system with no pipeline visibility.
Paid deals stayed “open”
When a customer paid an invoice in Zoho Books, nothing happened in CRM. Deals stayed at “Draft Order” or “Prospect” even after the money was collected.
No activity metrics on deals
Management had no way to see how many emails a rep had sent or calls they had made on a specific deal. Activity data existed but was never counted or surfaced.
Four Deluge functions, zero manual work
Each function runs automatically. triggered by events in form system, or scheduled on a recurring interval. All are written in Deluge and deployed directly inside Zoho CRM.
When a inquiry is submitted via a web form, the function evaluates the inquiry type, maps it to the correct CRM pipeline, resolves the assignee and referral fields, and creates a fully populated deal, all within seconds.
- Inquiry subject determines pipeline: purchase inquiries route to Retail, partnership inquiries to B2B
- Customer email matched to existing CRM Contact or Lead
- Inquiry assignee automatically set as the deal owner
- Referral field mapped from a custom form field to a CRM user lookup
- Deal created with email, phone, description, and lead source pre-filled
A scheduled function scans open deals, finds their linked contact, and checks if a paid invoice exists in the finance module dated after the deal was created. If a match is found, the deal stage, amount, and closing date are updated automatically.
- Matches deals to invoices via shared CRM Contact ID, not email-based
- Only invoices dated after deal creation are considered (prevents false matches)
- Deal amount updated to the invoice total for accurate pipeline reporting
- Closing date set to the invoice date
- Already-closed deals are skipped to prevent regressions
Paginates through all active deals, fetches emails linked to each deal’s contact via the CRM API, and writes the sent and received counts back to custom fields on the deal record.
- Handles up to 5,000 deals with paginated API calls
- Counts outbound emails (sent by rep) separately from inbound (received from customer)
- Results visible on the deal record and usable in reports and dashboards
- Runs on a schedule. counts stay current without manual intervention
For each deal, the function extracts the linked contact’s phone number, queries the Calls module via COQL, and writes four counts back to the deal: total, outbound, inbound, and missed calls.
- Phone number normalized, non-numeric characters stripped, last 10 digits used for matching
- Call type determined from CRM Call records (Outbound, Inbound, Missed)
- Four separate fields updated on each deal for granular reporting
- Management can now see which deals have low call activity at a glance
What changed after deployment
Every sales inquiry becomes a deal
Support inquirys that are actually purchase or partnership inquiries now create CRM deals automatically. No more leads sitting in Desk with zero pipeline visibility.
Paid deals close themselves
When an invoice is paid in the finance system, the corresponding deal updates to “Paid” with the correct amount and closing date. No manual stage changes needed.
Email and call counts on every deal
Management can see exactly how many emails were sent and calls were made on each deal. Low-activity deals are instantly visible in reports.
Event-triggered + scheduled
Functions run automatically via form submission triggers and CRM schedules. No external servers, no cron jobs, no infrastructure to manage.
What powers it
Language
Zoho Deluge · Server-side custom functions · COQL queries · Paginated API calls
Integrations
Zoho CRM API v8 · Form/inquiry system API · Zoho Finance module (synced invoices) · Contacts Email API
Triggers
Form submission trigger (event-driven) · CRM scheduled functions (hourly) · No external infrastructure
Need your Zoho apps talking to each other?
We build automations that connect Zoho CRM, Books, Voice, and your web forms, so your data stays accurate and your team stops doing manual updates.
Book a Free Discovery Call →