Five sales process automations you can build in n8n in a weekend
Five small, high-leverage n8n workflows that quietly remove busywork from your SDR and AE teams without replacing the CRM you already pay for.
The sales process is mostly busywork dressed up in a CRM. Most of it can be removed with five small n8n workflows that no one will notice are running, which is the highest praise you can give an automation.
None of these replace your CRM. They sit next to it and quietly do the work no one wants to do.
1. Inbound lead enrichment before it hits the CRM#
The mistake most teams make is enriching inside the CRM (HubSpot, Pipedrive, Salesforce, Attio). Slow, expensive, and you cannot deduplicate cleanly because the lead is already in the system.
The better pattern:
- Webhook receives the form submission (
HTTP Triggernode). Ifnode checks for an obvious spam pattern (free-mail domain + role-y title + low-quality message length).- Enrich via Clearbit, Apollo, or whatever provider you prefer (
HTTP Requestnode, or the dedicated node if available). - Score the lead with a simple rules engine in a
Codenode. ICP fit, company size, geography, intent signal. - Only then
Upsertinto the CRM with the enriched fields and the score already populated.
Two benefits: your CRM stays clean, and your AE sees a lead that already has the context they would have alt-tabbed three times to find.
2. Round-robin assignment, but smarter than your CRM does it#
Most CRM round-robins are dumb. They cycle through a list and assign whoever is next. They do not check:
- Who is out of office today.
- Who is at capacity.
- Who specializes in the segment the lead came from.
The n8n version:
Schedule TriggerorWebhookfires when a new qualified lead lands.- Pull the AE list from a Google Sheet (or Notion, or Airtable; pick whatever your ops lead actually keeps current).
- Filter out anyone with
OOO == TRUEfor today. - Filter out anyone whose
current_loadexceeds their cap. - Filter by
segment_specialtymatching the lead's segment. - Pick the AE with the lowest current load.
- Assign in CRM, post in Slack (“@alex you got the lead from Acme”), and increment
current_loadin the sheet.
It is ten nodes and you have built a smarter dispatcher than most CRMs ship.
3. Stale-deal nudges into Slack, not email#
Email-based deal reminders are noise. They land in the same inbox as every other CRM notification and get deleted on autopilot.
A Slack nudge into the deal owner's DM with the deal name, last activity date, and a one-click link to update the stage works far better.
Schedule Triggerruns daily at 9am.- Query the CRM for deals where
last_activity_date < (today - 7 days) AND stage IN ('Proposal Sent', 'Negotiation'). - Loop over the result set.
- Look up the deal owner's Slack ID in a
Usersheet. - Post a Slack DM with a polite nudge and a deep-link into the CRM record.
Result: deals stop falling through cracks, your AE looks competent in front of the customer, and no one has to send the awkward “hey just checking in” reminder.
4. AE-to-CS handoff with a real handover doc#
Most handovers from sales to customer success are a single Slack message: “new customer, account X, here is the call recording.” Two months later CS is asking sales the same question for the third time.
A real handover doc, generated automatically:
Webhookfires when a deal moves toClosed Won.- Pull every note, email, and call summary attached to the deal record.
- Pass the bundle to an LLM (
OpenAIorAnthropicnode) with a prompt that produces a structured handover: goals, success criteria, key stakeholders, known risks, agreed timeline. - Create a Notion page (or Coda doc, or Confluence) with the structured summary.
- Add the CSM and AE to the page. Post the link in the dedicated handover channel.
Same five minutes of AE time become a permanent artefact the entire CS org can read.
5. Quote-to-cash plumbing that does not lose the PO#
This one is the most boring and the highest leverage.
When a deal closes, the PO needs to go somewhere, the invoice needs to be generated, the customer record needs to exist in the billing system, and finance needs to be told.
In most companies that is four manual steps and a Slack thread. In n8n:
- CRM webhook:
deal stage == 'Closed Won'. - Create or update the customer in your billing system (Stripe, Recurly, Chargebee).
- Generate the invoice from the deal's line items.
- File the PO PDF into a known Google Drive folder named
purchase-orders/{year}/{customer}. - Post a summary into a
#new-customersSlack channel for finance and ops. - Tag the deal in the CRM with the invoice number for audit traceability.
Step 6 is the one most teams skip. Skip it and three months from now you cannot answer “which deal did this invoice come from?” without forensic work.
What “good” looks like#
If you run these five workflows for two months, you will notice three things.
- Your AEs stop complaining about the CRM.
- Your CS team stops re-asking the same onboarding questions.
- Your CFO stops sending you that monthly Slack about the missing PO.
That is the bar. Each one is a workflow you could build in a weekend. None of them are clever. All of them buy back time your team currently spends on things they hate.
Keep reading
- AI agents & LLMn8nPlaybookAI agents & LLM
AI form replies with human-in-the-loop: architecture for n8n, Slack, and Google Sheets
Design a form-to-reply pipeline in n8n: capture submissions, draft with an AI agent, route Slack approvals, send email only after sign-off, and track every row in Google Sheets.
7 min · - Business processn8nPlaybookBusiness process
Welcome to n8n Automation Hub: what we write about and why
An editorial hub for the people doing real work in n8n. Eight pillars, opinionated takes, copy-pasteable templates, and zero ten-hacks-to-automate-everything energy.
5 min · - Slackn8nPlaybookSlack
Send Slack alerts from any system with n8n (no custom Slack app required)
Wire any webhook into the right Slack channel with n8n. Throttling, formatting, routing, and the four mistakes that turn useful alerts into ignored noise.
5 min ·