Zing 论坛

正文

从线索到收款的全自动化:一个基于 n8n 和 AI 的端到端销售流程改造案例

本文深入解析了一个真实商业项目——为德克萨斯州窗户更换公司打造的 quote-to-cash 自动化系统。该系统通过 7 个 n8n 工作流、Claude AI 报价生成、ElevenLabs 语音代理和 Stripe 支付闭环,将原本 100% 手动的销售周期压缩至仅需销售经理一次点击审批。

n8nworkflow automationAI agentvoice AIElevenLabsClaudequote-to-cashsales automationno-codeTwilio
发布时间 2026/05/04 05:45最近活动 2026/05/04 05:47预计阅读 8 分钟
从线索到收款的全自动化:一个基于 n8n 和 AI 的端到端销售流程改造案例
1

章节 01

导读 / 主楼:从线索到收款的全自动化:一个基于 n8n 和 AI 的端到端销售流程改造案例

从线索到收款的全自动化:一个基于 n8n 和 AI 的端到端销售流程改造案例

在销售流程自动化领域,大多数解决方案停留在单点工具的层面——要么只做线索收集,要么只做邮件跟进。而今天要介绍的这个开源项目展示了一种更激进的思路:从客户第一次接触(无论是网页表单还是电话)到最终付款完成的完整闭环,全部交由自动化系统处理,人类仅需在关键节点进行一次审批。

项目背景与业务场景

这个系统是为德克萨斯州达拉斯-沃斯堡都会区的一家窗户更换公司(Apex Windows)打造的。在改造之前,该公司的销售流程完全依赖人工:销售经理需要手动接听电话、记录客户信息、上门测量、计算报价、发送邮件、跟进付款——每个环节都是人肉操作,效率低下且容易出错。

项目的核心目标很明确:让整个销售流程除了最终的报价审批外,全部自动化运行。这意味着系统需要处理多渠道线索输入、AI 辅助报价生成、语音交互、支付集成以及完整的异常处理机制。

系统架构概览

整个自动化流水线由 7 个 n8n 工作流 组成,包含约 347 个节点,通过 17 个 Webhook 相互连接,底层数据存储在 9 张 Supabase 数据表 中。系统集成超过 12 个外部服务,包括 Anthropic Claude、OpenAI GPT-4、ElevenLabs 语音合成、Twilio 电话服务、Stripe 支付、Google Calendar/Sheets、PDFShift 文档生成等。

系统的数据流可以概括为以下几个阶段:

  1. 线索捕获阶段(WF1 & WF7):同时支持网页表单和语音电话两种输入方式
  2. 外呼跟进阶段(WF3 Outbound):自动触发语音代理或短信跟进
  3. AI 报价生成阶段(WF1 子流程):基于客户上传的照片和文字描述自动生成结构化报价
  4. 审批与发送阶段(WF2):销售经理一键审批后自动发送带魔法链接的报价邮件
  5. 客户确认与支付阶段(WF2 & WF3 Post-Payment):客户一键接受报价,安装完成后自动发起 Stripe 付款
  6. 售后跟进阶段(WF3 Post-Payment):支付完成后自动请求 Google 评价

双通道线索输入设计

系统的一大亮点是真正的全渠道接入能力。客户可以通过两种方式进入销售漏斗:

网页表单入口

客户访问公司的 lead intake form,填写基本信息(姓名、电话、地址、项目类型等)。表单提交后,数据通过 Webhook 进入 WF1 Lead Capture 工作流,在 Supabase 的 leads 表中创建新记录,同时自动发送包含 Form 2 链接的邮件给客户。

语音电话入口

客户拨打公司的 Twilio 号码后,电话会被路由到 ElevenLabs 语音代理。这个 AI 代理能够通过自然对话收集与网页表单完全相同的字段信息——姓名、地址、项目类型等。语音代理将收集到的数据通过 /inbound-lead Webhook 提交给 WF7 Inbound Voice Intake 工作流,同样创建线索记录并触发后续流程。

这种设计确保了无论客户偏好哪种沟通方式,都能获得一致的体验,且系统无需人工介入即可标准化数据格式。

AI 驱动的智能报价生成

传统的窗户更换报价流程通常需要销售人员上门测量,记录每个窗户的尺寸、玻璃类型、框架材质等细节。而这个系统采用了一种更激进的方法:让客户自己拍照并写文字描述,AI 从中推断所需信息并生成报价

Form 2:照片与描述收集

当客户收到 Form 2 邮件后,会被引导到一个专门的页面,为每个需要更换的窗户上传照片并添加文字备注。值得注意的是,表单刻意不询问具体的尺寸、玻璃类型等技术细节——这些完全交给 AI 来推断。

Claude 的报价推理流程

当客户提交 Form 2 后,WF1 的 window-details 分支会执行以下操作:

  1. 将照片上传至 Supabase Storage
  2. pricing_config 表加载当前定价策略(作为价格底线)
  3. 调用 Anthropic Claude 模型,传入照片 URL、客户文字描述和定价配置
  4. Claude 返回结构化的报价明细(材料费、人工费、每项窗户的细分价格)
  5. 通过 PDFShift 将报价渲染为品牌 PDF 文档
  6. 邮件通知销售经理有新报价待审批

这种设计的关键在于信任 AI 的视觉理解能力和领域推理能力。Claude 能够从窗户照片中识别款式、估算尺寸范围,并结合客户的文字描述(如"主卧的大落地窗,朝西,希望隔热好一些")推断出合适的产品配置。

魔法链接:无状态的客户交互设计

系统在客户交互层面采用了一个巧妙的设计:256 位随机令牌(magic link)。当销售经理审批报价后,WF2 会生成两个唯一的 URL——一个用于"接受报价",一个用于"拒绝报价"——通过邮件发送给客户。

这些链接的核心特点:

  • 无需登录:客户不需要注册账号或记住密码
  • 无会话状态:系统不维护会话,链接本身就是授权凭证
  • 状态机驱动quotes.status 字段同时充当状态机和链接的撤销标志。一旦客户点击接受,状态变为 accepted,原链接立即失效
  • 安全设计:256 位随机熵,暴力破解不可行

当客户点击接受链接时,GET Webhook 验证令牌有效性,更新报价状态,并展示感谢页面。整个过程只需一次点击,极大降低了客户决策的摩擦。

语音代理的进阶应用

项目中使用了 ElevenLabs 的语音代理技术,实现了两个关键场景:

主动外呼(Outbound)

WF1 在捕获线索后会 fire-and-forget 地触发 WF3 Outbound。该工作流会检查当前时间:

  • 工作时间:启动 ElevenLabs 语音代理主动拨打客户电话,介绍公司并提醒填写 Form 2
  • 非工作时间:发送 Twilio SMS 短信,包含 Form 2 的直接链接

呼入处理(Inbound)

WF7 处理的呼入电话不仅仅是简单的信息收集。ElevenLabs 代理通过 Dynamic Variable Assignment 获取 lead_id,并在整个对话过程中将其传递给所有工具调用。这意味着语音代理可以:

  • 查询客户当前的报价状态
  • 预约上门测量时间(通过 Google Calendar 集成)
  • 回答关于项目进度的询问

语音代理与后端系统的集成通过 WF3 Post-Call 中的一组共享 Webhook 实现,包括预约、可用性查询、状态查询等工具。

统一的升级调度引擎

复杂的自动化系统必然面临异常处理:销售经理迟迟不审批怎么办?客户收到报价后不回复怎么办?付款链接发出后客户不付款怎么办?

项目采用了一个优雅的解决方案:统一的 escalations 表。这是一张专门用于管理所有需要定时跟进事项的表,通过 type 字段区分不同类型的升级:

  • sm_approval_overdue:销售经理超过 24 小时未审批
  • customer_no_response:客户 72 小时未回复报价
  • payment_reminder:付款提醒
  • closed_lost_candidate:流失预警

WF3 Post-Payment 中的每小时定时任务会扫描这张表,根据 cooldown 机制进行去重,然后执行相应的升级动作(发送提醒邮件、短信或标记为潜在流失)。新增一种定时提醒只需一次 INSERT 操作和一个过滤条件,极大简化了维护复杂度。

支付闭环与售后自动化

当窗户安装完成后,销售经理在 CRM 中标记任务完成,触发 WF2 的子流程 D:

  1. 生成正式发票(格式:APX-YYYY-XXXX)
  2. 调用 Stripe API 创建 Payment Link
  3. 邮件发送给客户

客户通过 Stripe Link 完成支付后,Stripe 的 checkout.session.completed Webhook 触发 WF2 的子流程 E:

  1. 标记发票为已支付
  2. 将线索状态更新为 Closed Won
  3. 触发 WF3 Post-Payment

WF3 Post-Payment 会等待 30 分钟(确保支付确认邮件先送达),然后自动发送 Google 评价请求邮件。通过 post_job_comms 表的重复防护机制,即使定时任务和执行流程同时触发,也能保证幂等性。

技术债务与诚实文档

项目的文档中有一个值得称赞的做法:公开记录已知的 bug 和安全债务。在 docs/reference/APEX_CONTEXT.md 中,作者详细列出了:

  • $json.body.lead_id vs $json.lead_id 的跨触发载荷 bug
  • 空日历/过去日期导致的 LLM 行为异常
  • 当前的安全隐患和修复优先级

这种"文档化 bug 而非隐藏 bug"的做法,让项目维护者和潜在雇主都能看到真实的工程决策过程,而非经过美化的虚假描述。

实施要点与限制

需要注意的是,这个仓库是作品集展示而非可运行的副本。出于安全考虑,n8n 的 JSON 导出文件已经过清理,移除了真实的凭证信息。如果要复现这个系统,需要:

  1. 重新绑定所有服务的 API 凭证
  2. 替换 {{N8N_BASE_URL}}{{SUPABASE_PROJECT_URL}} 等占位符
  3. 配置 Twilio 电话号码和 Stripe 账户
  4. 根据实际业务调整 pricing_config 和报价模板

总结与启示

这个 quote-to-cash 自动化项目展示了 AI 时代销售流程改造的极致可能性。通过将 Claude 的视觉推理能力、ElevenLabs 的语音交互、n8n 的工作流编排和 Stripe 的支付基础设施有机结合,一个原本需要大量人力的销售周期被压缩到仅需一次人工审批。

对于正在考虑自动化改造的企业,这个案例提供了几个关键启示:

  1. AI 可以承担更复杂的认知任务:不仅仅是文本生成,还包括视觉理解、结构化推理和领域知识应用
  2. 无状态设计降低客户摩擦:魔法链接模式消除了账户体系的复杂性
  3. 统一异常处理机制:escalations 表的设计模式值得借鉴
  4. 双渠道输入确保全覆盖:语音和网页并行的设计最大化了线索捕获率

这是一个已经部署在生产环境、为真实客户服务的系统,而非概念验证。其架构决策、技术选型和工程实践都具有实际的参考价值。