如果有人向你推销“自动报价的人工智能(AI)”,正确的问题不是它用哪个模型,而是它把报价留在什么状态、能读什么、不能写什么、由谁审批。本指南用Odoo的状态与文档,以及Transgenia(特兰斯赫尼亚)采用的方法来回答这个问题。
查看 Mermaid 图
mindmap
root(("由 AI 准备、由人审批的报价"))
要求与范围
Odoo 版本与套餐
Online 仅 Custom 套餐有外部 API
定期轮换的 API 密钥
七个步骤
客户请求
结构化提取
只读查询
报价单草稿
通知
人工审批
衡量
状态与允许的操作
自动化规则
可能出错的地方
假设示例
我们的立场与来源
本指南需要哪些前提,适用范围是什么?
| 要点 | 你需要什么 | 本指南不涵盖 |
|---|---|---|
| Odoo版本类型 | Community或Enterprise。报价模型(sale.order)及其状态在两者中都存在。Studio(自动化规则)是付费功能:在Odoo Online上安装它会把数据库切换到Custom套餐。 | Odoo应用商店中的第三方审批模块:确实存在,但本文不评估。 |
| 部署方式与套餐 | 自托管或Odoo.sh:外部API可用。Odoo Online:“通过外部API访问数据仅在Custom定价套餐上可用”;One App Free与Standard套餐不可用。 | 套餐与AI价格:另见成本因素指南。 |
| 版本号 | Odoo 19使用JSON-2 API,以API密钥作为bearer令牌。更早版本使用JSON-RPC或XML-RPC,两者计划在Odoo 22中移除。 | 早于13的Odoo(不在Transgenia服务范围内)。 |
| 凭证 | 由最小权限用户创建的API密钥(偏好设置,账户安全,新建API密钥),至少每三个月轮换。 | 我们绝不在表单或聊天中索取密钥。 |
| AI层 | 通过API使用Claude或ChatGPT,或使用一个模型上下文协议(MCP)服务器(例如Transgenia的开源服务器,只读模式),让智能体以受限工具查询Odoo。 | 没有草稿状态、直接写入企业资源计划(ERP)的智能体:我们不推荐。 |
| 人员 | 一位审批的销售人员、一位定价负责人以及一位定义验收标准的人。 | 取代销售人员。AI准备;人来决定。 |
从请求到获批报价,具体分几步?
1. 定义什么算一次请求,从哪个渠道进来
邮件、WhatsApp、网站表单、PDF或Excel。起步时只选一个渠道和一个产品类别。范围受限的试点让你在扩大之前先测量错误。
2. 提取结构化数据,而不是散文
AI把客户的文字转换成一条记录:客户、行项目(产品、数量、单位)、交付日期与条件。缺少某项数据或存在两个相容产品时,智能体提问;它不自行填补。模型服务商为此提供结构化输出,请使用它们。
3. 以只读权限查询Odoo
智能体在“联系人”中查找客户,把每一行映射到目录(编码、变体、单位),读取所分配的价格表、税费与可用量。价格、折扣与税费由Odoo计算;AI不发明也不重算金额。使用只读模式的MCP服务器时,任何写入尝试都会在到达Odoo之前被拒绝。
4. 以“报价单”状态创建报价
一个与智能体不同的技术账户,仅拥有创建报价的权限,登记草稿并附上可见标签(“由AI生成”)以及一条沟通记录,注明来源请求与日期。初始状态为“报价单”。什么都不发送。
5. 带着摘要与警示通知销售人员
在Odoo中创建一项活动,或向团队频道发出通知,附草稿链接、有歧义的产品、库存不足的行以及超出政策的条件。
6. 人工审阅与审批
销售人员修改数量、价格或条件并做决定。只有此时他们才点击“通过邮件发送”或“确认”。根据Odoo 19文档,确认后“报价单被确认,状态变为销售订单”,并且“它正式转为可开票、可收款的销售订单”。
7. 先测量,再扩大
无需修改即获批的草稿比例、按类型统计的错误(产品、数量、价格)、销售人员在每份报价上花费的时间,以及需要澄清的报价数。有了这些数字,你再决定是否扩展渠道或类别。
查看 Mermaid 图
flowchart TB
S1["1. 客户请求:邮件、WhatsApp、表单或 PDF"] --> S2["2. AI 提取结构化数据,缺信息时提问"]
S2 --> S3["3. 以只读权限查询 Odoo:客户、目录、价格、库存"]
S3 --> S4["4. 技术账号创建处于“报价单”状态的草稿,带标签与备注"]
S4 --> S5["5. 向销售人员发送活动或提醒,附带警示"]
S5 --> S6{"6. 人是否批准?"}
S6 -- "修改" --> S4
S6 -- "是" --> S7["通过邮件发送或确认:只能由人操作"]
S7 --> S8["7. 衡量:未修改即批准、错误、耗时、澄清"]
各状态下允许哪些操作?
| Odoo中的状态 | 谁可以把它推到该状态 | 允许的操作 |
|---|---|---|
| 报价单(草稿) | 集成程序,使用最小权限的技术账户 | 创建与编辑行项目,加“由AI生成”标签,在沟通记录中留言 |
| 报价单已发送 | 仅限人工,通过“通过邮件发送” | 禁止智能体执行;服务器验证AI无法调用该动作 |
| 销售订单 | 仅限人工,通过“确认”(若已配置,也可由客户在门户中确认) | 禁止智能体执行;它会触发交货与开票 |
| 已取消 | 人工 | 记录原因 |
两条不可省略的规则。第一:服务器在执行发送前验证状态;如果集成程序可以绕过界面上的审批按钮,那个按钮就不是控制。第二:如果有人在审批后更改价格或数量,报价退回审核,并记录每个版本的审批人。
查看 Mermaid 图
stateDiagram-v2
[*] --> Quotation: 集成创建草稿
state "报价单(草稿)" as Quotation
state "报价单已发送" as Sent
state "销售订单" as Order
state "已取消" as Cancelled
Quotation --> Sent: 人,通过邮件发送
Quotation --> Order: 人,确认
Sent --> Order: 人,或客户在门户确认
Quotation --> Cancelled: 人
Sent --> Quotation: 价格或数量变动,退回审核
Odoo的自动化规则能放在哪里?
Studio的自动化规则“允许在特定触发器响应下执行一个或多个预定义动作”。有五类触发器(值更新、邮件事件、时间条件、自定义与外部),动作包括更新记录、创建活动、发送邮件或短信、发送WhatsApp、执行代码或发送webhook。它们可用于在带标签的草稿到达时通知销售人员,或把总额变动的报价退回审核。它们不替代服务器端控制:文档建议为筛选器启用开发者模式,而在Odoo Online上安装Studio会把数据库切换到Custom套餐。
查看 Mermaid 图
flowchart TB
A["AI 智能体:只读权限"] --> B["独立的技术账号:仅能创建报价单"]
B --> C["服务器在发送前校验状态"]
C --> D["人审批;记录审批人"]
D --> E["发送或确认"]
B -. "按来源消息设置幂等键" .-> B
D -. "价格或数量变动时" .-> C
哪些地方容易出错?
- 有歧义的产品。 “白色油漆”可能对应五个编码。没有模糊搜索与确认提问,草稿就会带着错误产品发出,销售人员从此不再信任工具。
- 发明的价格。 如果模型计算或“估算”价格,即使报价是草稿,控制也已失效。价格与税费由Odoo计算。
- 重试造成的重复。 同一封邮件或消息可能触发集成两次。用来源消息的标识符作为幂等键。
- 写权限过宽的智能体。 一个能“确认”或开票的账户,会把一次理解错误变成一笔销售或一张电子发票(CFDI)。最小权限,独立技术账户。
- 没有外部API的Odoo Online套餐。 One App Free或Standard没有外部API;项目在第一次调用时就会停下。
- 未轮换的密钥。 Odoo文档要求长期密钥至少每三个月轮换。
- 反射式开票。 确认订单不应自动开具任何发票。开票遵循自己的授权流程。
一个假设的例子长什么样?
本例仅说明拟议的流程,不报告任何客户的结果或数字。一家经销商通过邮件收到:“我需要20箱中号丁腈手套和5箱大号手套,周四交货,发票开给常用的税号”。AI提取两行、日期与开票指示;它发现中号手套有两种规格并询问是哪一种;得到回答后查询库存与客户价格表,以“报价单”状态创建报价,带“由AI生成”标签和“来源:10月13日邮件”备注。销售人员收到一项活动,看到中号只有18箱可用,调整为18与7后发送。开票指示不被执行:会计在到期时开票。如果缺少价格,或智能体没有读取价格表的权限,流程会停下并请求验证。查询库存不等于预留库存。
Transgenia的立场是什么?
- AI提议;人来决定。 我们不出售自行确认、发送或开票的智能体。最初几个月里,每一次写入都经过一个人的审批。
- 先只读。 我们从只读模式的MCP服务器开始(它在任何内容到达Odoo之前拒绝所有写入),凭证据而非承诺扩大权限。
- 控制在服务器,不在按钮。 如果集成程序可以绕过审批,那就没有审批。
- 先要可靠的数据。 如果目录有重复项或价格对不上,AI只会加速错误。因此“迁移前的库存”指南排在本文之前。
- 诚实的范围。 开源服务器覆盖Odoo 10至19;Transgenia的服务面向Odoo 13至19,这是我们能以真实支持维持的范围。
关于我们使用的工具:MCP-Odoo-Tools是一个开源的MCP服务器(MIT许可证),提供28个工具,覆盖Odoo 10至19的Community、Enterprise与Online,具备只读模式与隐私说明(Transgenia不代理也不存储数据;结果流向MCP客户端与模型服务商)。它在PyPI上以odoo-mcp-tools 1.4.0发布,也以“Odoo Tools”插件形式进入Claude目录;根据截至2026年10月11日的目录管理面板数据,它累计安装506次,28天内活跃账户203个,15,651次加载中0次错误。
资料来源有哪些?
本指南的每一项技术事实都有在2026年10月12日核查过的公开来源。插件数字来自Transgenia自身,并已明确标注。
- Odoo 19,创建报价单:报价在“销售”中创建,确认后“状态变为销售订单”,并“正式转为可开票、可收款的销售订单”。
- Odoo 19,外部JSON-2 API:“通过外部API访问数据仅在Custom定价套餐上可用”;API密钥作为bearer令牌;在“偏好设置,账户安全,新建API密钥”中创建;至少每三个月轮换;XML-RPC与JSON-RPC计划在Odoo 22中移除。
- Odoo 19,自动化规则(Studio):定义、五类触发器与动作列表;建议启用开发者模式。
- Odoo,套餐与价格:“如果你安装Studio或向数据库添加公司,将自动切换到Custom套餐”;外部API与Studio位于Custom列。
- MCP-Odoo-Tools仓库(MIT许可证):覆盖Odoo 10至19,Community与Enterprise,自托管与Online;28个工具;“启用只读模式(ODOO_READONLY=1)后,所有写入工具在任何内容到达Odoo之前都会被拒绝”;隐私说明。
- PyPI上的odoo-mcp-tools软件包:版本1.4.0,MIT许可证,Python 3.9及以上(通过PyPI API核实)。
- Anthropic,模型上下文协议发布公告:MCP是开放标准;Transgenia的服务器实现了它,协议本身不属于Transgenia。
- Claude目录管理面板,截至2026年10月11日的数据,Transgenia内部来源:Odoo Tools插件的安装量、活跃账户与无错误加载次数。
常见问题
如果某人已经审阅过一份类似的报价,AI可以直接把报价发给客户吗?
在我们的方法里不可以。每份报价都是独立的商业决策:价格、可用量与条件都会变化。智能体把它留在“报价单”状态,由人执行发送。服务器在允许发送前验证该状态,集成程序无法绕过。
由AI准备的报价应该停留在Odoo的哪个状态?
停留在“报价单”,即sale.order模型的初始状态,附可见标签与注明来源的沟通记录。“报价单已发送”与“销售订单”状态保留给人:前者通过“通过邮件发送”,后者通过“确认”,根据Odoo 19文档,确认会把报价转为可开票的销售订单。
AI智能体在Odoo中需要哪些权限?
对联系人、产品、价格表与库存的读取权限,仅此而已。草稿由一个独立的技术账户创建,它只有创建报价的权限,没有确认、交货或开票的权限。使用只读模式的MCP服务器时,所有写入在到达Odoo之前都会被拒绝。
在Odoo Online上可行吗?
只有套餐包含外部API时才可行:根据Odoo 19文档,通过外部API访问数据仅在Custom套餐可用,One App Free与Standard不可用。自托管与Odoo.sh没有这一限制。
用Claude和用ChatGPT效果一样吗?
一样。模型负责提取结构化数据并在有歧义时提问;流程的控制(草稿状态、权限、服务器验证)不依赖于模型。Claude Code能运行本地MCP服务器,所以Odoo插件在它上面运行;ChatGPT通过OpenAI API或各服务商的连接器接入。
客户要的产品在目录里不存在怎么办?
智能体不得发明产品,也不得悄悄选“最接近的那个”。它创建带有待定行的草稿并附内部备注说明未找到的项目,或在创建任何内容之前先提问。由销售人员解决。
Studio的自动化规则足以强制审批吗?
它们可用于通知(创建活动、发送邮件或WhatsApp消息)以及把总额变动的报价退回审核。它们不替代发送前的服务器端状态验证。Studio是付费功能:在Odoo Online上安装它会把数据库切换到Custom套餐。
集成程序重试时如何避免重复报价?
用来源消息或邮件的标识符作为幂等键:如果已存在该来源的草稿,就不再创建另一份。这是我们在开放渠道之前测试的控制之一。
获批的报价会自动生成发票吗?
不会。确认订单不应自动开具任何发票;开票遵循会计的授权流程,有自己的审核。把商业确认与电子发票(CFDI)分开,可以避免因一条误读的消息而开出发票。
我需要哪个Odoo版本?
Odoo 19提供带API密钥的JSON-2 API;更早版本使用JSON-RPC或XML-RPC,两者计划在Odoo 22中移除。Transgenia的开源MCP服务器覆盖Odoo 10至19;实施服务面向13至19。
申请这一流程的评估之前,我应该准备什么?
请求进来的渠道、真实的请求示例、Odoo的版本号、版本类型与套餐、现行价格表、目前由谁审批报价,以及试点采用的验收标准。访问权限在评估中商定;请勿分享凭证。
如何衡量这个流程是否有效?
每周四个数字:无需修改即获批的草稿、按类型统计的错误(产品、数量、价格)、销售人员在每份报价上花费的时间,以及需要澄清的请求数。没有带证据的测量,我们不发布数字也不扩大范围。
下一步做什么?
如果贵公司已在运行Odoo,并通过邮件或WhatsApp收到报价请求,请先阅读AI实施与Odoo集成服务;如果你是贸易公司或经销商,请阅读面向贸易公司的Odoo页面,那里汇集了三份指南。然后申请评估:我们在报价之前先定义流程、权限与验收标准。
关于作者和Transgenia
Efraín Carreón Ortiz是墨西哥科技精品公司Centrum Transgenia的首席执行官。他持有Anthropic颁发的官方Claude Code徽章(Claude Partner Badge),可在Credly上验证。
Transgenia是OpenAI Partner Network中的OpenAI Select Partner,也是Anthropic Claude Partner Network中的Anthropic Registered Partner。团队:Víctor Estrada Bello,Chief PMO;Danild Johan Zambrana López,Chief Technology Officer;Jaime Lozano Castañeda,Chief Marketing Officer;Efraín Carreón Ortiz,Director General(Chief Executive Officer)。
联系我们:contacto@transgenia.org、WhatsApp +52 55 8034 0405、15分钟预约或联系页面。
继续阅读
- 如何用AI把WhatsApp订单接入Odoo:同样的“草稿加人工确认”原则,应用于WhatsApp渠道。
- 迁移前如何在Odoo中纠正库存差异:可靠的数据先于任何智能体。
- 墨西哥谁能把Claude或ChatGPT与Odoo集成?:向集成商书面索取的内容,包括本流程。
- Transgenia如何用受控AI智能体运营企业:草稿优先与签核模型在我们自身运营中的应用。
- 在Odoo副本上测试智能体前要隔离什么:任何写入之前的安全测试。
- 我们发布了MCP-Odoo-Tools以及MCP服务器页面:对Odoo的查询层。
- 面向B2B贸易公司的Odoo:行业中心页。
本文由AI撰写并经内部审校,尚待母语人士审阅。