Bình thường muốn lấy một con số trong ERP, bạn phải bấm qua vài màn hình, chọn kỳ, lọc tài khoản, xuất file, rồi mở Excel.
Chúng tôi gắn AI vào Odoo của dự án và gõ đúng một câu tiếng Việt: "Lập bảng cân đối kế toán."
AI tự vào hệ thống, đọc số dư từng tài khoản, dựng ra Bảng cân đối kế toán với Tổng tài sản bằng Tổng nguồn vốn bằng 2.751.000.000đ — cân chính xác. Không ai bấm chuột, không ai mở Excel.
Bài này nói về cách nó hoạt động, và quan trọng hơn: những chỗ không được để AI đụng vào.
Câu trả lời ngắn
Cầu nối giữa AI và Odoo là MCP — một giao thức chuẩn để AI đọc và ghi dữ liệu hệ thống một cách có kiểm soát. Odoo Community mở API hoàn toàn nên cắm vào được, miễn phí.
Nhưng phần quyết định không nằm ở việc cắm được hay không. Nó nằm ở guardrail đặt ở đâu: quyền của AI phải cưỡng chế bên trong Odoo, không phải ở lớp MCP server. Vì server MCP nào cũng đăng nhập bằng credentials — Odoo mới là nơi thực thi quyền cuối cùng.
Nguyên tắc xuyên suốt: đọc thoải mái, ghi phải duyệt.
MCP là gì trong ba câu
MCP là một chuẩn để mô tả các "công cụ" mà AI được phép gọi — kiểu như một danh sách nút bấm có tên và có mô tả rõ ràng. AI đọc danh sách đó, chọn nút phù hợp với câu hỏi của bạn, gọi nó, nhận kết quả về.
Điểm hay: nó là chuẩn mở, nên một MCP server viết cho Odoo dùng được với Claude, Cursor, VS Code hay bất kỳ client nào hỗ trợ. Điểm cần cẩn thận: danh sách nút bấm đó chính là bề mặt tấn công — mỗi tool bạn expose là một quyền bạn trao đi.
Nếu chưa quen khái niệm này, đọc MCP Protocol trong AI Training Series và AI Agent là gì trước.
Vì sao bản Community mới làm được chuyện này
Đây là chi tiết ít người biết nhưng quyết định luôn tính khả thi về chi phí.
Odoo Community expose External API cho mọi model — kể cả model tự viết trong module kế toán Việt Nam như báo cáo tài chính, sổ kế toán, tài sản cố định, tờ khai thuế. Không cần viết thêm endpoint nào, AI gọi được cả method custom kiểu "xuất báo cáo tài chính" hay "tính khấu hao".
Trên Odoo Online, quyền truy cập API ngoài chỉ có ở gói Custom, tức gói đắt nhất — khoảng 13,60 USD mỗi người mỗi tháng khi trả theo năm, theo trang giá hiển thị cho Việt Nam ngày 08/08/2026. Còn Community tự host thì API mở hoàn toàn, miễn phí.
Chi tiết mô hình chi phí ở bài so sánh Community và Enterprise.
ℹ️ Info: Lưu ý về phiên bản: XML-RPC và JSON-RPC bị đánh dấu deprecated từ Odoo 19 và dự kiến gỡ ở Odoo 22. Dự án nhắm Odoo 19 nên ưu tiên các giải pháp hỗ trợ JSON-2 API mới.
Thang bốn mức: AI làm được gì, xếp theo rủi ro
Đây là cách chúng tôi phân loại khi tư vấn. Đi từ trên xuống, không nhảy cóc.
🟢 Mức 1 — Tra cứu và lập báo cáo (chỉ đọc, làm ngay được)
An toàn tuyệt đối vì không ghi gì. Các câu hỏi thật:
- "Lập bảng cân đối kế toán quý này."
- "Doanh thu, lợi nhuận tháng 6 bao nhiêu?"
- "Khách nào đang nợ quá 90 ngày?"
- "Sổ cái tài khoản 156 có những phát sinh gì?"
- "Còn bao nhiêu tiền trong tài khoản ngân hàng?"
- "Danh sách tài sản cố định còn khấu hao và giá trị còn lại."
- "Thuế GTGT phải nộp kỳ này bao nhiêu?"
Lợi ích thấy ngay: chủ doanh nghiệp hỏi số bất cứ lúc nào, không chờ kế toán tổng hợp.
🟢 Mức 2 — Kiểm tra và cảnh báo (đọc rồi báo)
Đây mới là chỗ AI tạo ra giá trị mà con người khó thay thế — soát toàn bộ sổ trong vài giây:
- "Sổ sách có gì bất thường không?"
- "Có bút toán nào lệch, Nợ khác Có không?"
- "Hóa đơn nào chưa được ghi sổ?"
- "Đối chiếu số trên tờ khai thuế với số dư thực tế."
Một trợ lý hậu kiểm chạy mỗi tuần đáng giá hơn nhiều so với một trợ lý kéo báo cáo — vì báo cáo thì kế toán tự kéo được, còn soát chéo toàn bộ sổ thì không ai đủ thời gian làm thủ công.
🟡 Mức 3 — Nhập liệu và hạch toán (bắt buộc có bước duyệt)
- "Tạo bút toán chi tiền mặt 5 triệu cho văn phòng phẩm."
- "Nhập lô hóa đơn mua hàng này vào sổ."
- "Ghi nhận tài sản cố định mới kèm lịch khấu hao."
Ở mức này, AI soạn bút toán nháp, người duyệt rồi mới ghi sổ. Không có ngoại lệ.
🔵 Mức 4 — Tự động hóa định kỳ và tích hợp nâng cao
Tự trích khấu hao hằng tháng, tự xuất báo cáo cuối kỳ gửi qua Lark, nhắc hạn nộp tờ khai. Xa hơn: chụp ảnh hóa đơn để AI tạo bút toán bằng OCR, kết nối hóa đơn điện tử và POS.
Mức này chỉ nên làm khi quy trình kiểm soát ở ba mức trên đã chắc.
Bốn nguyên tắc an toàn
Bước 1: Đọc thoải mái, ghi phải duyệt
AI tra cứu tự do vì đọc không gây hại. Mọi thay đổi số liệu đều cần người xác nhận. Nghe hiển nhiên nhưng rất dễ bị nới lỏng khi đội ngũ quen tay và thấy AI làm đúng nhiều lần — đúng lúc đó là lúc nguy hiểm nhất.
Bước 2: AI có tài khoản riêng, quyền thấp
Không bao giờ dùng tài khoản admin cho AI. Tạo một user kỹ thuật riêng với API key riêng, quyền chỉ đủ cho việc cần làm. Nếu key rò rỉ, thiệt hại giới hạn trong phạm vi quyền đó.
Bước 3: Có nhật ký truy vết
Mọi thao tác AI thực hiện phải ghi lại được: làm gì, lúc nào, trên chứng từ nào. Khi có sai sót, đây là thứ duy nhất cho phép truy ngược.
Bước 4: Dữ liệu nằm trên máy chủ của doanh nghiệp
Với bản Community tự host, sổ sách không rời khỏi hạ tầng của bạn. Đây là lý do quan trọng với dữ liệu kế toán — thứ vừa nhạy cảm vừa có giá trị pháp lý.
Điểm kỹ thuật quan trọng nhất: guardrail đặt ở tầng nào
Đây là phần tôi muốn nhấn mạnh nhất, vì làm sai chỗ này thì ba nguyên tắc trên chỉ là khẩu hiệu.
Trên thị trường có module trả phí cung cấp "bảng điều khiển phân quyền cho AI" ngay trong Odoo — whitelist model, bật tắt riêng từng quyền tạo, đọc, sửa, xóa, chế độ chỉ đọc, hai nhóm quản trị và người dùng, nhật ký kiểm toán.
Đào ra thì nó không tự chế cơ chế mới — nó mượn lại chính bộ máy bảo mật sẵn có của Odoo rồi bọc một giao diện tick chọn:
| "Tính năng phân quyền AI" | Bản chất là gì trong Odoo |
|---|---|
| Whitelist model AI được thấy | ir.model.access — bảng quyền truy cập |
| Bật tắt riêng Create / Read / Update / Delete | Bốn cột quyền trong chính bảng đó |
| Chế độ chỉ đọc | Một nhóm chỉ có quyền đọc |
| Hai nhóm AI Admin và AI User | Nhóm người dùng tự định nghĩa |
| Giới hạn dòng: chỉ công ty mình, không sửa chứng từ đã ghi sổ | ir.rule — luật lọc theo từng dòng dữ liệu |
| Nhật ký AI làm gì | Chatter của chính user bot |
Nguyên tắc rút ra: đặt guardrail ở đúng tầng, tức là bên trong Odoo — đừng tin server MCP tự kiểm soát. Server MCP nào rồi cũng đăng nhập bằng credentials, nên Odoo mới là nơi cưỡng chế quyền cuối cùng.
Cách này có ba cái lợi. Portable: đổi sang server MCP nào cũng bị chặn như nhau. Đúng nghiệp vụ: quyền viết riêng cho model báo cáo Việt Nam thay vì whitelist chung chung. Không khóa vendor: không phụ thuộc một module trả phí cụ thể.
Cách chúng tôi làm
Thay vì mua module phân quyền có sẵn, dự án ship một module nhỏ tên l10n_vn_ai_access trong chính bộ addon. Trên form người dùng, ở mục Kế toán hiện đúng một dòng tự giải thích:
Quyền cho trợ lý AI (kế toán) — chọn AI được làm gì với dữ liệu kế toán.
| Chọn | AI làm được | AI bị chặn |
|---|---|---|
| (để trống) | — | Tất cả |
| Chỉ đọc — tra cứu và báo cáo | Kéo BCTC, sổ sách, công nợ, TSCĐ; tra số dư; phân tích | Mọi thao tác ghi |
| Tạo bút toán nháp | Toàn bộ quyền đọc, cộng tạo và sửa bút toán nháp | Ghi sổ, sửa hoặc xóa chứng từ đã ghi sổ, xóa bút toán |
Mặc định user AI ở mức "Chỉ đọc"; nâng lên "Tạo bút toán nháp" khi thật sự cần. Module đã cài và nâng cấp sạch trên Odoo 19, 6 trên 6 bài kiểm phân quyền đạt khi giả lập tài khoản bot.
Cách gắn: tạo user riêng, vào Account Security sinh API key mới, trỏ MCP server vào user đó — không dùng admin.
Về server MCP, hệ sinh thái đã có sẵn nhiều lựa chọn mã nguồn mở nên không phải viết từ đầu. Chúng tôi đã cài và chạy thử ba server khác nhau trên Odoo 19, đọc được dữ liệu kế toán thật từ cả ba. Hai hướng đáng bắt đầu:
- Server có sẵn nhiều tool nghiệp vụ (kế toán, báo cáo tuổi nợ, ghi an toàn theo cơ chế xem trước rồi mới thực thi) — cắm là chạy, không cần cài gì vào Odoo.
- Server tối giản cho phép gọi bất kỳ method nào — linh hoạt hơn khi cần gọi thẳng các method của module Việt Nam, nhưng phải tự siết quyền chặt.
Nếu muốn kiểm soát tối đa thì viết một MCP server mỏng chỉ expose đúng vài tool nghiệp vụ Việt Nam — tra sổ cái, xuất báo cáo tài chính, tính khấu hao. Bề mặt hẹp nhất, an toàn nhất.
Lộ trình bốn sóng
| Giai đoạn | Làm gì | Vì sao theo thứ tự này |
|---|---|---|
| Sóng 1 — ngay | Tra cứu, lập báo cáo, kiểm tra (chỉ đọc) | An toàn, lợi ích thấy ngay, không cần đổi quy trình |
| Sóng 2 | Trợ lý hỏi đáp cho cả team, tự xuất báo cáo định kỳ | Mở rộng người dùng khi đã tin tưởng |
| Sóng 3 | Nhập liệu có duyệt, tự khấu hao và khóa sổ | Chỉ khi quy trình kiểm soát đã chắc |
| Sóng 4 | OCR hóa đơn, tích hợp hóa đơn điện tử và POS | ROI cao nhưng cần hạ tầng |
Sai lầm phổ biến là nhảy thẳng vào sóng 3 vì nghe hấp dẫn nhất. Sóng 1 mới là chỗ chứng minh hệ thống chạy đúng mà không có rủi ro nào.
Nói thẳng về giới hạn
AI có thể trả lời sai. Nó lấy đúng số nhưng có thể hiểu sai câu hỏi — "doanh thu tháng 6" là theo ngày hóa đơn hay ngày ghi sổ, gồm hay không gồm thuế. Với dữ liệu kế toán, câu trả lời gần đúng còn nguy hiểm hơn không có câu trả lời. Cách giảm rủi ro: yêu cầu AI luôn nói rõ nó lấy số từ tài khoản nào, kỳ nào.
Đừng để AI ghi sổ. Ghi sổ là hành vi có hệ quả pháp lý, và nó phải gắn với một con người chịu trách nhiệm. AI soạn nháp là đủ giá trị rồi — phần tiết kiệm thời gian nằm ở khâu soạn, không phải khâu bấm nút.
Chi phí không bằng không. Mỗi câu hỏi là một lượt gọi mô hình, và các câu hỏi kéo nhiều dữ liệu thì tốn hơn. Không lớn ở quy mô một đội kế toán, nhưng nên biết trước.
Trạng thái thật: module phân quyền AI đã build và kiểm thử đạt trên Odoo 19; ba server MCP đã cài và đọc được dữ liệu kế toán thật. Phần chưa làm là đối chiếu chất lượng câu trả lời của AI trên sổ sách thật của một doanh nghiệp cụ thể — cũng như phần còn lại của bộ module, đây là việc chỉ làm được cùng khách hàng.
Bắt đầu từ đâu
Việc nhỏ nhất có giá trị ngay: dựng một tài khoản AI chỉ đọc, cho nó trả lời năm câu hỏi mà ban lãnh đạo hay hỏi kế toán nhất. Hai tuần là biết nó có tiết kiệm thời gian thật không.
Nếu số liệu đã chốt sổ cần đổ về nơi mọi người làm việc hằng ngày thay vì bắt sếp đăng nhập ERP, xem kiến trúc hai lớp LarkSuite và Odoo.
Đặt lịch pilot AI chỉ đọc — hai tuần, tài khoản quyền thấp, không đụng vào sổ.
Câu hỏi thường gặp
AI có đọc được dữ liệu kế toán trong Odoo không?
Có. Odoo Community expose External API cho mọi model kể cả model tự viết, nên AI kết nối qua MCP có thể tra số dư, kéo báo cáo tài chính, đọc sổ cái và công nợ. Trên thực tế đã chạy thử và AI dựng được Bảng cân đối kế toán cân chính xác từ một câu hỏi tiếng Việt.
MCP là gì và dùng để làm gì với ERP?
MCP là giao thức chuẩn mô tả các công cụ mà AI được phép gọi. Với ERP, nó cho phép AI truy vấn dữ liệu và thực hiện nghiệp vụ thông qua một danh sách công cụ có kiểm soát, thay vì truy cập tự do vào cơ sở dữ liệu. Vì là chuẩn mở nên một server viết cho Odoo dùng được với nhiều AI client khác nhau.
Có nên cho AI ghi sổ kế toán không?
Không nên. Ghi sổ có hệ quả pháp lý và phải gắn với một người chịu trách nhiệm. Mô hình an toàn là AI soạn bút toán nháp còn kế toán duyệt rồi mới ghi sổ. Phần tiết kiệm thời gian nằm ở khâu soạn chứ không phải khâu bấm nút xác nhận.
Làm sao giới hạn quyền của AI trong Odoo?
Đặt guardrail ở tầng Odoo chứ không phải tầng MCP server, vì server nào cũng đăng nhập bằng credentials nên Odoo mới là nơi cưỡng chế quyền cuối. Cụ thể: tạo user kỹ thuật riêng với API key riêng, dùng bảng quyền truy cập để whitelist model, dùng luật lọc theo dòng để chặn sửa chứng từ đã ghi sổ và chặn xem chéo công ty.
Dữ liệu kế toán có bị gửi ra ngoài khi dùng AI không?
Với bản Community tự host, dữ liệu nằm trên máy chủ của doanh nghiệp và AI truy cập qua API nội bộ. Tuy nhiên nội dung câu hỏi và phần dữ liệu AI đọc được vẫn đi qua mô hình ngôn ngữ, nên cần cân nhắc phạm vi dữ liệu cho phép truy cập và giới hạn quyền của tài khoản AI ngay từ đầu.
Cần bản Odoo nào để gắn AI vào?
Bản Community tự host là phù hợp nhất vì API mở hoàn toàn và miễn phí. Trên Odoo Online, quyền truy cập API ngoài chỉ có ở gói Custom là gói đắt nhất, nên chi phí tăng đáng kể nếu doanh nghiệp có nhiều người dùng.
Đọc tiếp trong series
- Đang chạy LarkSuite, thêm Odoo có phải bỏ Lark không?
- Phân quyền Odoo: record rule và tài khoản cho AI
- Odoo không phải phần mềm kế toán Việt Nam — và cách vá đúng
- Odoo Community hay Enterprise: bóc chi phí thật
Nền tảng về AI:
- MCP Protocol — AI Training Series
- AI Agent là gì — AI Training Series
- Tool Use — AI Training Series
- Vibe Engineering: hướng dẫn thực chiến
Nguồn tham khảo
- Model Context Protocol — spec chính thức: https://modelcontextprotocol.io/
- Odoo Developer Documentation — External API: https://www.odoo.com/documentation/19.0/developer/reference/external_api.html
- Odoo Developer Documentation — Security in Odoo: https://www.odoo.com/documentation/19.0/developer/reference/backend/security.html
- Odoo Pricing (điều khoản API ngoài): https://www.odoo.com/pricing
Bài viết hữu ích?
Chia sẻ để nhiều người biết đến!
>_ LLM-Friendly Copy
Copy as Markdown to use with ChatGPT, Claude, or other AI tools



