Most businesses run five or more tools that never talk to each other. A deal closes in CRM, but someone still has to manually create the invoice in Books. A support ticket escalates, but nobody in Slack knows until the customer follows up. Zoho Flow eliminates these gaps by connecting your apps through declarative, no-code automation recipes.
Here are six recipes that wire your business stack into a single, self-updating system.
Why Manual Data Transfer Is Costing You
Every time someone copies a deal value from Zoho CRM into a Zoho Books invoice, two things happen: time is wasted and error risk increases. Multiply that by every deal, every ticket escalation, every new lead — and you have a team spending hours per week on data entry that software should handle automatically.
The cost is not just labor. Manual handoffs introduce lag. A deal closes on Friday afternoon; the invoice does not go out until Monday because the finance team did not get the notification. A support ticket escalates to priority one, but the account manager does not find out until the client calls directly. These delays erode the client experience in ways that are hard to measure but impossible to ignore.
Zoho Flow solves this by sitting between your apps as an integration engine. When an event occurs in one app — a deal stage changes, a payment arrives, a form is submitted — Flow detects it and triggers a sequence of actions across other apps. No API code, no middleware servers, no polling intervals. The recipes below cover the six most impactful integrations we deploy for mid-market teams.
Recipe 1: CRM Deal Won to Books Invoice
Trigger: Deal stage changes to Closed Won in Zoho CRM.
Actions:
- Create a new invoice in Zoho Books with the deal's line items, client contact, and payment terms
- Attach the deal's custom fields (project scope, contract length) as invoice notes
- Update the CRM deal record with the invoice number and
invoicedstatus
This is the single highest-impact integration for any business running both CRM and Books. Without it, the sales-to-finance handoff requires someone to re-enter every deal's details into the invoicing system — a process that typically takes 10-15 minutes per deal and introduces transcription errors on roughly one in eight invoices.
The recipe runs in under three seconds. The moment a rep marks a deal as won, the invoice exists in Books with the correct amounts, the correct client, and the correct payment terms. Finance reviews and sends — no data entry required.
Key insight: Map your CRM deal's amount field to the Books invoice total, but use line items for accuracy. A single total amount works for simple deals, but multi-line invoices need each product or service mapped individually. Set this up once and every future deal flows through correctly.
Recipe 2: Desk Ticket Escalation to Slack Alert
Trigger: Ticket priority changes to High or Urgent in Zoho Desk.
Actions:
- Post a formatted message to a designated Slack channel with the ticket subject, client name, priority level, and a direct link to the ticket
- Mention the assigned agent's Slack handle (mapped via email address)
- If priority is
Urgent, also send a direct message to the team lead
Support ticket escalations have a shelf life. A high-priority ticket that sits unnoticed for two hours is no longer just a support issue — it is a retention risk. Email notifications get buried. Desk dashboard notifications require someone to be looking at the dashboard. Slack is where your team already lives, which makes it the right channel for time-sensitive alerts.
The formatting matters. A raw "ticket updated" message is noise. The Flow recipe should include the client name (so the account manager recognizes it), the ticket subject (so context is immediate), and a one-click link to the Desk ticket (so the responder does not have to search). We configure the message as a Slack Block Kit payload for clean rendering with bold labels and inline links.
Pro tip: Create separate Slack channels for High vs. Urgent escalations. High-priority tickets go to #support-escalations for the team. Urgent tickets go to #support-urgent and ping the team lead directly. This prevents alert fatigue from mixing severity levels.
Recipe 3: New Lead to Google Sheets Log and CRM Record
Trigger: New form submission via Zoho Forms (or any webhook source).
Actions:
- Create a new lead record in Zoho CRM with all form fields mapped to CRM fields
- Append a row to a Google Sheets tracking spreadsheet with the lead's name, email, source, and submission timestamp
- Assign the CRM lead to the correct sales rep based on territory or round-robin rules
This recipe serves two audiences. Sales reps get leads in CRM where they work — assigned, tagged, and ready for outreach. Marketing and leadership get a live spreadsheet that tracks every lead source, submission date, and conversion status without needing CRM access or running reports.
The Google Sheets log becomes especially valuable for teams that run multiple lead sources — paid ads, organic search, referral forms, webinar registrations. Each row captures the utm_source and utm_medium from the form submission, creating a lead attribution record that marketing can pivot and filter without touching the CRM.
The CRM record creation includes field mapping that goes beyond name and email. Map the form's company-size dropdown to the CRM's company_size field, the industry selection to the industry field, and the message field to the description field. The more data you map at intake, the less manual enrichment your reps need to do before the first outreach.
Need Your Apps Talking to Each Other?
We architect Zoho Flow integrations that connect CRM, Books, Desk, and third-party tools — eliminating manual data transfer across your business.
See Our Integration ServiceRecipe 4: Books Payment Received to CRM Deal Update
Trigger: Invoice status changes to Paid in Zoho Books.
Actions:
- Update the linked CRM deal's custom field
payment_statustoReceived - Add a note to the CRM deal record with the payment date, amount, and payment method
- If this is the final payment in a multi-installment deal, update the deal stage to
Fully Paid
This is the reverse of Recipe 1 — and it closes the loop that most implementations leave open. Sales teams need to know when a client has actually paid, not just when the invoice was sent. Without this integration, reps either check Books manually (which they never do consistently) or rely on finance to forward payment confirmations (which adds lag and noise to both teams' inboxes).
The deal note is critical for context. When a rep opens a CRM deal six months later for an upsell conversation, seeing "Payment of $12,500 received via ACH on 2026-03-15" provides immediate financial context. The alternative — digging through Books or emails to reconstruct payment history — wastes time and makes your team look disorganized to the client.
For multi-installment deals, the recipe tracks partial payments by incrementing a payments_received counter on the deal. When the counter matches the total_installments field, the deal stage automatically advances to Fully Paid. This eliminates the most common accounting-sales disconnect: reps marking deals as "done" before all payments have cleared.
Pro tip: Add a condition to this recipe that checks if the payment is more than 30 days overdue at the time it arrives. If it is, create a follow-up task for the account manager to check in with the client about their payment process — late payments often signal cash flow issues that can affect renewal conversations.
Recipe 5: Form Submission to CRM Lead and Desk Ticket
Trigger: Contact form submission on your website (via Zoho Forms webhook or any form provider).
Actions:
- Create a lead in Zoho CRM with the form data (name, email, company, message)
- Create a support ticket in Zoho Desk with the same details, tagged as
inbound-inquiry - Link the CRM lead and Desk ticket via the contact's email address
This recipe is for businesses where the line between "sales inquiry" and "support request" is blurry — which describes most service businesses under 200 people. A website contact form submission could be a prospect asking about pricing, an existing client reporting an issue, or a partner proposing a collaboration. Creating records in both CRM and Desk ensures nothing falls through the cracks regardless of intent.
The linking mechanism is the contact's email address. When the CRM lead and the Desk ticket share the same email, your team has a unified view: the sales rep sees the support context, and the support agent sees the sales context. This prevents the embarrassing scenario where a support agent tells a prospect "I can not help with that, you need to talk to sales" — instead, the agent sees the CRM lead and can warm-transfer with full context.
The inbound-inquiry tag on the Desk ticket allows you to filter these from regular support tickets in your queue views. Your support team processes them differently — checking CRM first to see if this person is already in the pipeline before responding with a standard support reply.
Recipe 6: Scheduled Report to Email and Slack
Trigger: Scheduled trigger in Zoho Flow (daily at 8:00 AM, weekly on Monday, or monthly on the 1st).
Actions:
- Pull pipeline summary data from Zoho CRM (open deals by stage, total value, deals closing this week)
- Format the data as a clean summary table
- Send the summary via email to the sales manager and post it to the
#sales-pipelineSlack channel
This recipe replaces the Monday-morning "Can someone pull the pipeline numbers?" ritual that wastes the first 30 minutes of every sales meeting. The report is waiting in inboxes and Slack before anyone arrives — pre-formatted, accurate, and sourced directly from CRM data.
The weekly version is the most common, but the daily version works well for high-velocity sales teams that process 20+ deals per day. The daily snapshot surfaces patterns that weekly reports miss: a sudden drop in new deals entering the pipeline, a cluster of deals stalling at the same stage, or a rep whose active deal count dropped because deals moved to lost without follow-up.
The Slack post uses a structured format: a one-line summary ("14 deals in pipeline, $182,000 total value, 3 closing this week") followed by a breakdown by stage. Keep the Slack version concise — detailed analysis belongs in the email version, which can include a table with per-deal details for the manager to review during prep.
Decision framework: Use the daily trigger for teams with 5+ reps and 50+ active deals. Use the weekly trigger for teams under 5 reps. The monthly trigger works best for executive summaries that include quarter-over-quarter comparisons — but pair it with weekly operational reports so issues are caught early.
Building Your Integration Stack
These six recipes are not standalone automations — they form a connected system where data flows continuously between your tools without human intervention. The implementation order matters.
Start with Recipe 1 (CRM to Books invoicing) because it delivers the most immediate time savings and has the simplest trigger-action logic. Follow with Recipe 4 (Books payment to CRM) to close the financial loop. Then add Recipe 2 (Desk to Slack alerts) for operational visibility. Recipes 3, 5, and 6 build on the foundation by adding lead capture, cross-system records, and automated reporting.
Each recipe takes 15-30 minutes to configure in Zoho Flow if you know the field mappings. The critical work is not the Flow configuration itself — it is defining which fields map where, which conditions trigger actions, and which edge cases (partial payments, duplicate leads, weekend submissions) need handling. That planning phase determines whether your integrations run reliably for years or break the first time an unusual record comes through.
The goal is not just connected apps — it is a business where data moves faster than your team could move it manually, freeing them to focus on the work that actually requires human judgment.