跳至內容

Odoo 20 深度解析:不只是 AI!一文掌握離線模式、JSON-2 API 與升級實戰指南

2026年10月14日 作者
Odoo 20 深度解析:不只是 AI!一文掌握離線模式、JSON-2 API 與升級實戰指南
Asta Systems Limited

📅 2026 年 10 月 | ⏱ 約 15 分鐘閱讀 | 🎯 進階 | 🏷 Odoo 20 · AI · 離線模式 · JSON-2

Odoo 20 絕不僅是「套殼 AI」。本次改版涵蓋了三大戰略核心(AI 賦能、原生離線模式、JSON-2 API 換代)與六大業務模組升級。本文特別為企業 IT 主管、Odoo 顧問與開發者,整理了最務實的升級準備清單 (Checklist)。

📑 目錄

  1. Odoo 20 不只是 AI——六大戰略主軸

  2. AI 助手:從文案生成到業務操作

  3. 離線模式:前線團隊的可用性革命

  4. 網站與電商:組合產品與 Builder 升級

  5. 庫存、製造與現場服務改進

  6. 項目、CRM 與營銷增強

  7. ⚠️ 開發者與 IT 必讀:三大破壞性變更 (Breaking Changes)

  8. 升級前準備 Checklist

  9. 對不同角色的影響

  10. 結語:將升級化為常態,掌握企業 IT 節奏

一、Odoo 20 不只是 AI——六大戰略主軸

Odoo 每年 10 月發布新版,2026 年如期迎來 v20。很多人把焦點放在「AI」上,但官方釋出的 Roadmap 與功能列表清楚表明,這是一次涉及前端、後端、平台、整合的全面升級。可以歸納為六大主軸:

主軸核心變化

AI 賦能

AI 助手深入內容生成、網站 SEO、CRM 操作

離線工作

網路不穩環境下繼續作業,自動同步並偵測衝突

電商整合

網站、電商、銷售、POS 共享組合產品資料

營運統一

打通庫存、製造與現場服務,實現底層數據共享

報表增強

項目成本/利潤、CRM、行銷報表更深入

平台升級

Python 3.12、PostgreSQL 15、JSON-2 API 三大底層變更

二、AI 助手:從文案生成到業務操作

Odoo 20 把 AI 從「附加功能」升級為「跨模組的底層能力」。它不再是某個模組的彩蛋,而是出現在內容、網站、CRM 三條主線上的通用助手。

2.1 AI 內容創作(產品描述、SEO 文案)

在產品編輯頁面、行銷郵件編輯器、網站頁面 Builder 中,AI 助手可根據產品屬性、目標客群、語氣要求自動生成文案,並支援繁體中文輸出。這對 SKU 上千的電商、每週要發 EDM 的零售品牌,是實質的時間節省。

2.2 AI 業務記錄操作(自然語言 CRUD)

Odoo 20 的亮點在於,AI 助手不僅能讀,還能「寫」。它允許使用者透過自然語言進行業務資料操作(CRUD),並且完美繼承既有的系統權限(Access Rights)。這意味著:

  • 「顯示 ABC Ltd 所有待審批的報價單」→ AI 自動篩選並開啟列表

  • 「為這些客戶建立下週的跟進活動」→ AI 批次新增 calendar activity

  • 「把這些訂單的負責人改為 Peter」→ AI 批次更新欄位(仍受 ACL 限制)

⚠️ 顧問部署須知:AI 助手執行操作時仍走 ORM + record rules,建議在用戶培訓時明示「AI 不會繞過你的權限」,這對企業 IT 接受度是關鍵。

三、離線模式:前線團隊的可用性革命

Odoo 20 首次引入原生離線能力。對倉庫、現場服務、銷售外勤等網路不穩定場景,是期待已久的功能。

3.1 離線能做什麼

斷網環境下,用戶仍可:

  • 檢視、搜尋既有記錄

  • 建立、編輯記錄

  • 歸檔、取消歸檔、刪除

3.2 同步與衝突處理

網路恢復後,Odoo 自動把本地變更推送回伺服器。離線模式的技術挑戰在於數據衝突:Odoo 20 內建了衝突偵測機制,若多人在離線狀態下修改同一筆資料,系統復連後會主動攔截並提示人工審核,杜絕「靜默覆寫」的資料災難。

對開發者而言,這背後新增了離線同步佇列(sync queue)與 conflict resolver hook:

Python

from odoo import models, api

class SaleOrder(models.Model):
    _inherit = 'sale.order'

    @api.model
    def _resolve_offline_conflict(self, local_vals, server_vals):
        # 自訂衝突解決策略:優先保留較新的修改時間
        if local_vals.get('write_date', '') > server_vals.get('write_date', ''):
            return local_vals
        return server_vals

四、網站與電商:組合產品與 Builder 升級

4.1 組合產品(Combo Products)跨模組共享

過去,企業常面臨在電商、POS 和銷售模組重複建立套餐資料的痛點,現在 Odoo 20 把組合產品抽成共享模型:

渠道組合產品支援

Odoo eCommerce

網店商品頁直接顯示「套餐選項」

Odoo POS

收銀畫面可加購套裝配件

Odoo Sales

報價單、銷售訂單可選組合產品

4.2 更好的產品分類與 Builder 行動化

大型商品庫可分組為更小區塊,顧客瀏覽體驗改善。Website Builder 全面重設計,AI 輔助 SEO 與內容生成,並對行動裝置做了一輪 layout 優化。

五、庫存、製造與現場服務改進

5.1 庫存補貨(Reordering)強化

補貨規則現在支援更多觸發時機:除了最低庫存量,還可依「近 N 天平均銷量」、「供應商交期」、「促銷檔期」動態計算建議補貨量。對有多倉、跨公司的零售/分銷商特別實用。

5.2 倉庫單據改進

揀貨標籤、CMR 國際運輸單據重新設計,揀貨員與物流司機的工作流更順。對做跨境 B2B 配送的企業是直接受惠。

六、項目、CRM 與營銷增強

  • 項目成本與利潤分析:更細粒度的 project profitability report,可按任務、成本類型、人天拆分。

  • CRM 增強:與 AI 助手深度整合,自然語言分配線索、批次建立跟進活動。

  • 營銷自動化:活動管理、Marketing analytics 報表更直觀。

七、⚠️ 開發者與 IT 必讀:三大破壞性變更 (Breaking Changes)

如果你是顧問、開發者、系統管理員,這一段請仔細讀。Odoo 20 三項底層變更會直接影響升級決策。

7.1 Python 3.12 強制要求

Odoo 20 不再支援 Python 3.10/3.11,所有客製化模組 (Custom Modules)、第三方套件、Docker base image 必須驗證 3.12 相容性。

  • 客製化模組:用 python --version 確認;常見第三方套件如 reportlab、num2words 需升級到 3.12 相容版

  • 部署腳本:systemd unit、supervisor config、CI/CD pipeline 都要更新

  • Docker:用 odoo:20.0 官方 image 重建

7.2 PostgreSQL 15 強制要求

PostgreSQL 13/14 不再受支援。升級前必須:

  • 備份並在 staging 環境用 pg_upgrade 演練一次

  • 檢查所有 custom SQL views、functions 的相容性

  • BI 工具(Metabase、Superset 等)的 connector 版本

7.3 JSON-2 API:逐步淘汰 XML-RPC / JSON-RPC

Odoo 20 推出新的 JSON-2 API,未來將逐步取代舊的 XML-RPC 與 JSON-RPC。受影響的整合場景:

  • 電商平台(Shopify、WooCommerce)雙向同步

  • 行動 App、原生 iOS/Android 客戶端

  • 支付閘道(Stripe、PayPal、WeChat Pay)

  • 物流系統、倉儲 WMS、第三方 BI

JSON-2 vs 舊 API 對照

項目XML-RPC / JSON-RPC(舊)JSON-2(新)

資料格式

XML 或 JSON + RPC 封包

RESTful JSON,OpenAPI 描述

認證

DB selector + user/password

OAuth 2.0 + API key

批次操作

逐筆呼叫

支援 batch endpoint

廢止時程

v22 起 deprecate,v25 移除

v20 開始主推

JSON-2 呼叫範例(Python)

Python

import requests

API_BASE = "https://odoo.example.com/json/2"
TOKEN    = "your-api-key"

# 建立銷售訂單(批次 endpoint)
payload = {
    "model": "sale.order",
    "method": "create",
    "args": [{
        "partner_id": 42,
        "order_line": [
            (0, 0, {"product_id": 101, "product_uom_qty": 2}),
        ],
    }],
}

r = requests.post(
    f"{API_BASE}/batch",
    json=[payload],
    headers={"Authorization": f"Bearer {TOKEN}"},
    timeout=10,
)
r.raise_for_status()
print(r.json())  # → {"jsonrpc": "2.0", "id": ..., "result": [order_id]}

JSON-2 遷移 Checklist

  1. 列出所有與 Odoo 連接的外部系統(電商、支付、物流、行動 App、BI、Webhook)

  2. 逐一盤點每個連接使用的 API 類型(XML-RPC / JSON-RPC)

  3. 規劃遷移路徑:v20 先以 JSON-2 為主,舊 API 暫時保留

  4. 重測權限(JSON-2 強制走 OAuth,舊的 user/password 模式停用)

  5. 用 staging 環境批次跑資料傳輸測試

八、升級前準備 Checklist

📋 升級前必做(不跳步)

  • [ ] 伺服器檢查:確認 Python 3.12、PostgreSQL 15、所有第三方套件都已就位

  • [ ] 自訂模組檢查:用 grep -r "odoo>=19.0" 盤點依賴,逐一跑 pylint-odoo

  • [ ] 整合盤點:列舉所有連接 Odoo 的外部系統與 API 類型

  • [ ] 真實業務量級測試:用實際資料量(不要空 DB)跑 staging 升級

  • [ ] 團隊 UAT:業務方實際操作日常流程,確認 AI、離線等功能可用

  • [ ] 回滾方案:保留 v19 環境至少 1 個月,遇重大問題可即時回退

💡 經驗法則:v20 的三項底層變更(Python / PostgreSQL / JSON-2)疊加,破壞力比 v17→v18 大。不要跳級升級,建議每版本停 6 個月穩定期再升。

九、對不同角色的影響

角色主要影響行動建議

業務所有者 / 終端用戶

AI、離線、報表、組合產品等體驗提升

留意新功能是否取代現有客製方案

Odoo 顧問

部分既有客製可能因官方新功能而不再需要

每個舊項目重新評估「保留 vs 改用官方」

Odoo 開發者

Python 3.12、PostgreSQL 15、JSON-2、模組重審

先做 dry-run 升級,記錄所有 breaking change

系統管理員 / IT

伺服器、Docker、備份、CI/CD 全鏈路檢查

切勿盲目升級,務必執行完整的回歸測試 (Regression Test)

銷售 / 行銷

AI 自然語言操作 CRM、EDM AI 文案

安排 AI 助手培訓、明確權限邊界

倉庫 / 現場團隊

離線模式、改進的補貨與倉庫單據

PDA/平板實機測試離線同步場景

十、結語:將升級化為常態,掌握企業 IT 節奏

Odoo 20 的 AI 不是噱頭,離線模式不是 demo,JSON-2 API 更是一次要認真對待的平台換代。對多數企業來說,今年最務實的決策是:

  1. 先把 staging 環境升上 v20,盤點自家模組的破壞面

  2. 列出所有外部整合的 API 遷移清單

  3. 在 v21(2027)正式上線前完成所有準備

把每年的升級寫進 IT roadmap,遠比「撐到不能撐才升級」划算得多。

需要專業團隊協助 Odoo 20 升級評估?

還在猶豫是否升級 Odoo 20?擔心客製化模組失效或 API 串接中斷?ASTA Systems Ltd 是香港 Odoo 銀級夥伴(Odoo Silver Partner),專注為企業客戶提供 Odoo 版本升級、模組相容性審查、JSON-2 API 遷移與系統整合服務。從 staging 演練、生產升級到上線後維護,我們有完整方法論。

📧 免費升級評估報價 → info@astasys.com

網誌: 科技文章
Odoo 升級遷移實戰:v16→v17→v18 Breaking Changes、OpenUpgrade 與踩坑指南