
# Odoo

> **这是为谁准备的？** 那些运行 Odoo（产品目录、CRM 管道、销售订单）并希望其 AI 智能体能在聊天中直接使用这些功能的商家。如果您不使用 Odoo，可以跳过此页面。
>
> 使用其他 CRM 或 ERP？任何带有 API 的系统仍然可以连接：请参阅 [连接未列出的工具](connecting-other-tools.md)。

Odoo 是一套业务应用程序：销售、CRM、库存、发票等，所有这些都在一个数据库上运行。将 Odoo 连接到 <span data-t="appName">DM Champ</span> 后，您的 AI 智能体无需任何人构建 Webhook 或自定义函数，即可在常规对话中执行三项操作：

- **回答来自目录的产品问题。** 名称、含正确货币和税费的价格、库存、描述，所有信息均直接从 Odoo 实时读取。
- **将潜在客户移交给您的销售团队。** 当客户表现出购买意向时，AI 会在您的 Odoo CRM 中创建一个潜在客户（或商机），并附上他们需求的摘要。
- **告知客户订单状态。** 查询客户订单的状态、商品、发票和交付进度。

---

## 您需要准备什么

- Odoo **14 或更高版本**：Odoo Online、Odoo.sh 或您自己的服务器。
- 一个 AI 将以其身份操作的 Odoo **用户**。该用户在 Odoo 中能看到和能做的内容，就是 AI 能看到和能做的极限。最好使用一个拥有销售、CRM 和库存访问权限的专用用户；您不需要管理员权限。
- 该用户的 **API 密钥**。在 Odoo 中，点击用户名（右上角）→ **首选项 (Preferences)** → **账户安全 (Account Security)** → **新建 API 密钥 (New API Key)**。为其命名（例如“AI agent”），然后复制该密钥：Odoo 只会显示一次。

---

## 连接 Odoo

1. 在左侧边栏中，点击 **Settings**（齿轮图标）。
2. 在“设置”侧边栏中，找到 **Integrations** 分组，点击 **CRM & ERP**。
3. 在 **Odoo** 卡片上，点击 **Connect**。

::: master-only
<figure><img src="../.gitbook/assets/v2-settings-odoo.png" alt="CRM &amp; ERP 设置部分，显示了包含 Odoo 磁贴和 Connect 按钮的 Available 卡片，并提示该功能适用于 Odoo 14 或更高版本，需使用 Odoo 用户的 API 密钥"><figcaption><p>连接前的 Settings → CRM & ERP：显示一个 Connect 按钮，并提醒已连接的 Odoo 用户所能看到的内容即为 AI 所能看到的内容。</p></figcaption></figure>
:::

4. 填写 **Odoo 地址**：您登录时使用的地址，例如 `https://acme.odoo.com`。直接从浏览器粘贴完整地址即可。
5. **数据库** 是可选的。如果您的服务器只有一个数据库，请将其留空，系统会自动检测。如果您的服务器有多个数据库，或者隐藏了列表，请填写名称：在 Odoo Online 上，它通常是您地址的第一部分（`acme.odoo.com` 的 `acme`）。
6. 填写 **Odoo 用户登录名**（该用户登录时使用的电子邮件）以及上述步骤中的 **API 密钥**。
7. 点击 **连接 (Connect)**。

::: master-only
<figure><img src="../.gitbook/assets/v2-odoo-connect-modal.png" alt="连接 Odoo 对话框，包含 Odoo 地址、数据库、Odoo 用户登录名和 API 密钥字段，每个字段下方都有提示，以及“取消”和“连接”按钮"><figcaption><p>连接所需的一切都在一个屏幕上：您登录的地址、数据库（可选）、AI 将以其身份操作的 Odoo 用户，以及该用户的 API 密钥。</p></figcaption></figure>
:::

### 凭据检查

在 Odoo 确认之前，不会保存任何内容。当您点击 **连接 (Connect)** 时，我们会检查该地址是否确实是 Odoo 服务器，使用该登录名和 API 密钥登录该数据库，并读取用户在产品、CRM、销售和库存应用程序中可以访问的内容。错误的地址、错误的数据库、错误的登录名或密钥，或者没有访问权限的用户，都会被立即拒绝，并在屏幕上显示原因。

连接成功后，连接卡片会显示公司名称、Odoo 版本、AI 连接的数据库以及它所代表的用户。

您的 API 密钥经过加密存储，且永远不会再次显示——无论是对您还是对您的团队。丢失了？请在 Odoo 中创建一个新密钥并重新连接。

### AI 可以做什么

连接卡片上有三个开关。连接后这三个开关均处于开启状态；您可以关闭您不希望 AI 触碰的功能：

- **来自产品目录的回答** — 产品名称、价格、税费、库存和描述。
- **在 CRM 中创建潜在客户** — 从对话中获取新的潜在客户或商机。
- **查询客户的订单** — 订单和配送状态。

这些设置适用于所有已开启 Odoo 的智能体。如果已连接的用户在您连接时无法访问某个应用（例如未安装“库存”），该卡片会在相应开关下方显示提示。

### 暂停或断开连接

- **暂停**：停止所有智能体使用 Odoo，但保留连接设置。**激活**：重新开启该功能。
- **断开连接**：彻底移除连接。AI 已经创建的潜在客户将保留在 Odoo 中。您可以稍后使用相同的详细信息重新连接。

---

## 为 AI 智能体开启 Odoo

连接 Odoo 不会立即改变 AI 的行为。您需要为每个智能体单独开启：

1. 点击侧边栏中的 **AI 智能体** 并打开该智能体。
2. 进入 **AI 能力** 步骤并滚动到 **Odoo** 卡片。该卡片仅在 Odoo 连接后才会显示。
3. 开启 **在此智能体的对话中使用 Odoo**。设置会立即保存。

该卡片列出了此代理现在可以执行的操作，具体取决于 Settings → CRM & ERP 下的开关设置。同一账户下的支持代理和销售代理可以有所不同：为需要使用 Odoo 的代理开启此开关。

---

## AI 能做什么

### 产品问题

当客户询问产品、价格、是否有库存或“你们卖 X 吗”时，AI 会在回答前搜索您的 Odoo 目录。它会查找 Odoo 中标记为 **可销售** 的产品，通过产品名称、内部参考和条形码进行匹配，并回答价格和货币、是否含税、可库存产品的库存水平以及销售描述。如果没有匹配项，它会要求客户提供其他名称或产品代码，而不是进行猜测。

### 潜在客户

当客户表现出真实的购买意向时（例如询问报价、要求回电、想要订购 AI 无法在聊天中完成的商品、要求演示），AI 会收集您的销售团队所需的信息（具体内容、数量、时间、预算（如有提供）、姓名和电子邮件），并在您的 Odoo CRM 中创建记录：

- 如果您的 CRM 使用“潜在客户”阶段（CRM → 配置 → 设置 → 潜在客户），则创建为 **潜在客户**，否则在您的销售漏斗中创建为 **商机**。
- 客户的电话号码、电子邮件和姓名取自 <span data-t="appName">DM Champ</span> 中的联系人，如果 Odoo 中存在匹配的客户，记录将关联到该客户。
- 如果该客户已经有开放的潜在客户或商机，AI 会将新请求作为备注添加到该记录中，而不是创建重复项。

该记录包含诸如“20 把办公椅的报价”之类的标题，以及为您团队编写的摘要，并附有对话来源渠道的备注。

在测试场中测试智能体绝不会在 Odoo 中创建任何内容：AI 会告知您它本会创建什么。

### 订单状态

当客户询问订单位置、订购内容或是否已发货时，AI 会在 Odoo 中查找其订单，并回复订单参考号、状态（报价单、已确认、已完成或已取消）、日期、总额、商品明细、开票信息，以及包含承运商提供的追踪号码的配送进度。

AI 仅向客户展示其**本人**的订单：

- 在 WhatsApp、短信和其他电话渠道上，订单会与客户发送消息时使用的号码（以及其联系人信息中的电子邮件，如果有的话）进行匹配。
- 在您的网站聊天窗口中，由于无法验证身份，AI 会要求提供订单参考号**和**下单时使用的电子邮件地址，只有两者匹配时才会显示订单。

AI 无法列出其他人的订单，也无法仅凭参考号查找订单。

---

## 值得了解的信息

- **每个账户对应一个 Odoo。** 如果您在不同的 Odoo 数据库中运营多家公司，请连接您的代理（Agent）应使用的那个数据库。
- **Odoo 用户权限即限制。** AI 看到的正是该用户所能看到的全部内容。请为该用户授予 Odoo 中“销售”、“CRM”和“库存”应用程序的访问权限，并确保 AI 不会触及不该触及的内容。
- **Odoo 始终是唯一事实来源。** Odoo 中的任何内容都不会被复制到 <span data-t="appName">DM Champ</span> 中；每个回答都是在当下实时读取 Odoo 数据。
- **电话号码匹配较为宽松。** 即使客户在 Odoo 中保存的号码是 `06 12 34 56 78`，当他们从 `+31 6 12345678` 发送消息时，系统仍能识别出该客户。
- **Odoo 无法连接？** AI 会表示歉意，根据您的知识库回答力所能及的问题，并在客户需要立即得到答复时提醒您的团队。

---

## 后续步骤

- [AI 代理](../ai-agents/ai-agents.md) — 设置将使用 Odoo 的代理。
- [知识库](../ai-automation/faq-management.md) — 添加您的政策、配送时间和退货规则，以便 AI 也能回答目录之外的问题。
- [连接未列出的工具](connecting-other-tools.md) — 用于上述三种能力未涵盖的任何 Odoo 相关需求（自定义函数、Webhook、API）。
