Skip to main content

Integrations · CRM

Odoo CRM AI for CRM, Sales, Invoicing and Live Chat

Odoo AI runs on ChatGPT or Gemini. We connect Claude to the same database through Odoo's MCP server or the JSON-2 API, so leads are read next to orders and invoices. Which writes need a salesperson's approval is up to you.

How does Odoo CRM AI work with Claude?

AILoopwise runs Odoo CRM AI on Claude in one of two ways: Odoo's own MCP server, documented from Odoo 20 at your database URL plus /mcp, or the JSON-2 API, which Odoo Online opens only on Custom plans. Claude reads crm.lead with the customer's sale.order and invoice history, drafts, and you decide which writes a salesperson approves.

Where things stand

  • As of 2026-11-04, Odoo's documentation reserves data access through the external API for Custom pricing plans; Standard and free plans have none.1
  • As of 2026-11-04, Odoo 20 documents an MCP server at /mcp, names Claude Code as a client, and exposes Create Records and Update Records only when someone ticks Available in MCP.2,3
  • As of 2026-11-04, Odoo 19's AI agents run on ChatGPT or Gemini, and the Odoo 20 release notes say all AI features now need IAP credits.6,7
  • As of 2026-11-04, Odoo schedules XML-RPC and JSON-RPC for removal in Odoo 22 (fall 2028), and on Odoo Online in winter 2027.1

What we work on in Odoo CRM

  • Odoo CRM

    Odoo's pipeline app: leads and opportunities share one model, crm.lead, with sales teams, stages, assignment rules and lost reasons, plus a win probability on each opportunity.

    Summarising mail sent to a team's alias onto the lead, and saying why a probability moved.

    Route: Odoo AI's Create Leads skill natively; Claude through Odoo's MCP server or the JSON-2 API.

    Limits: The scoring is a naive Bayes model; Odoo's docs describe a probability, not a written reason.8,9,13,6,20

  • Odoo Sales

    Quotations and sales orders in one model, sale.order, with pricelists, quotation templates and Sale Warnings on chosen products or customers. Once a quotation is confirmed it becomes a sales order that Invoicing bills.

    Turning an opportunity's notes into quotation lines from your templates and pricelist, and listing every line it could not match.

    Route: One JSON-2 call that creates the draft sale.order with its lines.

    Limits: We create drafts only; the salesperson sends and confirms.10,1,21

  • Odoo Invoicing

    Customer invoices are account.move records. Follow-up levels fire by overdue days and remind by email, WhatsApp, SMS or post; each customer carries a Follow-up Status.

    Showing what a customer owes, and since when, before anyone quotes again.

    Route: Read through a JSON-2 bot user whose rights cover invoices but not payments.

    Limits: Automatic follow-ups already remind the customer; our note never sends a second one.11,1,22

  • Odoo AI

    Odoo's AI app: Ask AI answers questions and drafts chatter replies; agents work through skills such as Create Leads. Odoo 19 runs them on ChatGPT or Gemini.

    Summaries, drafts and new leads for people already inside Odoo.

    Route: Native. Odoo 20 agents can also update records and be summoned by automated and scheduled actions.

    Limits: On Odoo 19 the standard Ask AI agent cannot change data; on Standard, installing the AI app triggers an upsell to Custom.5,6,7,4

  • Odoo Studio automation rules

    Rules that fire on a change such as 'Stage is set to' or on timing conditions such as 'After last update'. Its Send Webhook Notification action posts selected fields to a URL.

    Starting a Claude job the moment an opportunity reaches a stage, instead of polling the database.

    Route: Webhook to our service, results written back through JSON-2.

    Limits: Odoo says maintenance of Execute Code Python is not included in Standard or Custom plans.12

  • Odoo Live Chat

    The website chat window. Scripted chatbots run steps such as Create Lead and Forward to Operator; Odoo 20 adds an AI agent that can answer visitors, qualify the conversation and create the lead.

    Summarising the transcript onto the new crm.lead and proposing an owner.

    Route: Odoo's AI agent for the chat; Claude reads lead and transcript after Create Lead fires.

    Limits: A reply to a visitor is public: in our builds an operator sends it.18,4

  • Odoo WhatsApp

    Odoo's WhatsApp app sends pre-approved templates, such as a quotation from Sales, and opens a Discuss chat when the customer answers within 15 days.

    Drafting the next reply in Discuss from the lead, the quotation and the order history.

    Route: Claude drafts beside the chat; by default, a person sends from Odoo.

    Limits: Enterprise only, and it needs a WhatsApp Business Platform account, not the WhatsApp Business App.14

Where AI helps in Odoo CRM

  • Email alias and Live Chat leads into sales teams

    • crm.lead
    • email alias
    • sales team
    • res.partner
    When
    A message to a sales team's email alias creates a crm.lead, or a Live Chat chatbot runs its Create Lead step
    Reads
    the email in the chatter, any matching res.partner, its past sale.orders and each team's assignment domain
    AI
    summarises the request, links the existing customer and proposes a team and salesperson with one line of reasoning
    Result
    a chatter note and a proposed owner; nothing is converted or answered
    Approved by
    the sales team leader9,18,8,20,24
  • Record quality and Similar Leads

    • crm.lead
    • res.partner
    • Similar Leads
    When
    Weekly, or when the Similar Leads smart button appears on a new lead
    Reads
    the matching leads and opportunities, their contacts and empty Email or Phone fields
    AI
    groups true duplicates, notes that a merge keeps the record created first, and proposes which customer each lead links to
    Result
    one merge list per sales team; no record is merged
    Approved by
    the sales manager19,8
  • Quotation drafts from the pipeline

    • crm.lead
    • sale.order
    • pricelist
    • quotation template
    When
    An automation rule on 'Stage is set to' your quote stage sends a webhook
    Reads
    the opportunity's notes and emails, the customer's pricelist, the last sale.order's lines and any overdue account.move
    AI
    matches the request to products and quantities, lists unmatched lines and states what is overdue
    Result
    a draft sale.order created in one JSON-2 call, never sent
    Approved by
    the salesperson who owns the opportunity12,10,1,11,21,22
  • Follow-ups and next activities

    • crm.lead
    • mail.activity
    • chatter
    When
    A timing condition of 'After last update' finds an opportunity nobody has touched
    Reads
    the chatter thread, scheduled mail.activity entries and the stage
    AI
    drafts the follow-up message and proposes the next activity with a date, quoting the message it rests on
    Result
    a draft logged as a note and a proposed activity; no email goes out
    Approved by
    the salesperson12,5,24
  • Pipeline and lost-reason review

    • crm.lead
    • crm.lost.reason
    • stage
    When
    A scheduled run before the sales meeting
    Reads
    open opportunities with probability, stage and last activity, plus that period's lost ones with Lost Reason and Closing Note
    AI
    flags probabilities the activity contradicts and Closing Notes that disagree with the reason chosen
    Result
    one review list per salesperson; no opportunity is edited or reopened
    Approved by
    the sales manager8,13,23

How we connect

Three routes to AI in Odoo CRM. Your Odoo version, your plan and whether the work should start on a stage change decide which fits.

RouteWhat it isFits whenLimits
Built inOdoo AIAsk AI, agents with skills such as Create Leads, AI fields, Update with AI in automation rules, and an AI agent in Live Chat.people already in Odoo want answers and drafts on ChatGPT or Geministandard Ask AI cannot change data on Odoo 19; Odoo 20 bills AI through IAP credits; the app on Standard triggers an upsell to Custom.5,6,4,7,12
Vendor MCPOdoo MCP server (Odoo 20)Your database at /mcp. Claude Code or Claude Desktop signs in by OAuth or an API key, then searches and groups records; Create Records and Update Records stay hidden until exposed.a person on Odoo 20 asks Claude about pipeline, orders or invoices in a chatdocumented from Odoo 20 only; the page names no plan; it acts when someone asks, not on a stage change.2,3
API buildA build on JSON-2 and automation rulesAn automation rule sends a webhook on a stage change; our service calls Claude and writes back through /json/2/<model>/<method> as a bot user.the job starts on its own, applies your pricing or credit rules, or reaches a system outside OdooCustom plan on Odoo Online; API keys last at most three months.1,12

Odoo AI summarises chatter, drafts follow-ups and creates leads from a conversation, and its Odoo 20 agents can update records from scheduled actions. If ChatGPT or Gemini inside Odoo covers your jobs, keep it. For one person's questions, Claude Code on Odoo's MCP server often suffices with nothing to build. A Claude build earns its place where work starts on a stage change, follows your written rules on price or credit, or joins Odoo with a system outside it.

AILoopwise is Certified in the Claude Partner Network.

Is this a fit?

A good fit

  • Teams running Odoo CRM, Sales and Invoicing in one database with external API access, on Odoo Online a Custom plan
  • Salespeople who quote from past orders and want overdue invoices in view first
  • Sales managers who cannot explain a lead-scoring probability to the team
  • Admins with XML-RPC scripts that have to move to JSON-2 anyway

Not a fit

  • Odoo Online on a free or Standard plan: there is no external API to build on
  • One person's occasional questions on Odoo 20: Claude on Odoo's MCP server covers that without a project

Limits and data handling

  • Odoo recommends a dedicated bot user for integrations; every JSON-2 call is checked against that user's access rights, record rules and field access.1
  • Each JSON-2 call runs in its own SQL transaction and calls cannot be chained, so a quotation and its lines are written in one call.1
  • Odoo API keys cannot last longer than three months, so a running integration plans its key rotation.1
  • On Odoo's MCP server, Readonly Tool only lets a tool run without the user's approval; it does not hide a write tool.2

We agree with you, per project, where each part of the system runs and who can access the data, typically inside your own systems and accounts. When we use Claude through Anthropic's API, the model call runs at Anthropic and is governed by contract.

How a project runs

  1. 01

    Find the loop We sit with your team and list the work that comes back every week. Then we pick the loop that costs the most hours.

  2. 02

    Map it Every step, every tool, every decision: where the inquiry lands, who touches it, what they look up, where the time goes.

  3. 03

    Build the agents Each step gets an agent with the skills to do it inside your tools. One reads and sorts every inquiry, one logs it in the CRM, one pulls up the customer's history, one drafts the reply and the follow-ups.

  4. 04

    Add the checkers A second set of agents checks every result: wrong data, a duplicate, a missed follow-up. Anything unclear goes to a person.

  5. 05

    Close the loop The loop runs. Your team approves, handles the exceptions and talks to the customer.

In step 2 we check your Odoo version and plan, and set up a bot user whose rights cover only the models the build reads or writes.

Questions about Odoo CRM

How do I connect Claude to Odoo?
Two ways. With Odoo 20, add your database URL plus /mcp to Claude Code or Claude Desktop and sign in by OAuth or an API key. On Odoo 19 and later, a service can call the JSON-2 API with a bot user's key, which Odoo Online allows only on Custom plans.
Does Odoo have an MCP server?
Yes, from Odoo 20, released September 2026. Each database serves it at /mcp. By default it exposes Search, Read group, Get Fields, Get Models and an initial-context tool; Create Records and Update Records stay hidden until someone ticks Available in MCP on the server action. Odoo 19's documentation describes no MCP server from Odoo itself.
How do I use AI in Odoo 19?
Open Ask AI with Ctrl+K or the AI button: it answers questions, opens views, summarises a chatter thread and drafts a follow-up. Agents add skills such as Create Leads and run on ChatGPT or Gemini. Lead scoring is a separate statistical model. Bring in Claude when work should start on a pipeline event.
Which Odoo CRM automations can start an AI job?
Automation rules in Studio. A rule on 'Stage is set to' fires when an opportunity reaches a stage; 'After last update' fires when nobody has touched a record for a set time. A webhook action posts the selected fields to our service; Odoo's Update with AI fills a field from a prompt if the AI app is installed.
Can Claude change Odoo records without asking?
In our builds, not by default: Claude drafts and the salesperson approves. The bot user's access rights and record rules limit what any call can touch. On Odoo's MCP server, write tools stay hidden until exposed, and we tick Readonly Tool on a write tool only when you decide that step may run without approval, because that is what the box does.
Should I install an MCP module from the Odoo Apps Store?
Not without reading its code. Third-party modules on the Apps Store add an /mcp endpoint to Odoo 19 and earlier, and they decide what an AI client may read and write. Version 20 users should start with Odoo's own MCP server. Otherwise we review the module's code and the rights it grants before any install.
Should an Odoo CRM API integration use XML-RPC or JSON-2?
JSON-2. Odoo schedules /xmlrpc, /xmlrpc/2 and /jsonrpc for removal in Odoo 22, and on Odoo Online in winter 2027. JSON-2 takes a bearer API key and one POST per model and method, so old scripts need rewriting, not repointing. Keys last at most three months.
What does Odoo CRM AI cost?
Odoo sets its own prices and we do not quote them. The drivers are your plan, since external API access needs Custom on Odoo Online; IAP credits, which every Odoo 20 AI feature uses; Claude usage per event; and how many jobs we build and run for you.

Sources

  1. www.odoo.com/documentation/19.0/developer/reference/external_api.html (read 2026-11-04)
  2. www.odoo.com/documentation/20.0/applications/productivity/ai/mcp_server.html (read 2026-11-04)
  3. www.odoo.com/documentation/20.0/applications/productivity/ai/mcp_server/mcp_tools.html (read 2026-11-04)
  4. www.odoo.com/documentation/20.0/applications/productivity/ai.html (read 2026-11-04)
  5. www.odoo.com/documentation/19.0/applications/productivity/ai.html (read 2026-11-04)
  6. www.odoo.com/documentation/19.0/applications/productivity/ai/agents.html (read 2026-11-04)
  7. www.odoo.com/odoo-20-release-notes (read 2026-11-04)
  8. www.odoo.com/documentation/19.0/applications/sales/crm/track_leads/lead_scoring.html (read 2026-11-04)
  9. www.odoo.com/documentation/19.0/applications/sales/crm/acquire_leads/email_manual.html (read 2026-11-04)
  10. www.odoo.com/documentation/19.0/applications/sales/sales/sales_quotations/create_quotations.html (read 2026-11-04)
  11. www.odoo.com/documentation/19.0/applications/finance/accounting/payments/follow_up.html (read 2026-11-04)
  12. www.odoo.com/documentation/19.0/applications/studio/automated_actions.html (read 2026-11-04)
  13. www.odoo.com/documentation/19.0/applications/sales/crm/pipeline/lost_opportunities.html (read 2026-11-04)
  14. www.odoo.com/documentation/19.0/applications/productivity/whatsapp.html (read 2026-11-04)
  15. www.odoo.com/documentation/19.0/applications/general/integrations/mail_plugins/outlook.html (read 2026-11-04)
  16. www.odoo.com/documentation/20.0/legal/licenses.html (read 2026-11-04)
  17. www.odoo.com/documentation/20.0/legal/terms/partnership.html (read 2026-11-04)
  18. www.odoo.com/documentation/19.0/applications/websites/livechat/chatbots.html (read 2026-11-04)
  19. www.odoo.com/documentation/19.0/applications/sales/crm/acquire_leads/convert.html (read 2026-11-04)
  20. github.com/odoo/odoo/blob/19.0/addons/crm/models/crm_lead.py (read 2026-11-04)
  21. github.com/odoo/odoo/blob/19.0/addons/sale/models/sale_order.py (read 2026-11-04)
  22. github.com/odoo/odoo/blob/19.0/addons/account/models/account_move.py (read 2026-11-04)
  23. github.com/odoo/odoo/blob/19.0/addons/crm/models/crm_lost_reason.py (read 2026-11-04)
  24. github.com/odoo/odoo/blob/19.0/addons/mail/models/mail_activity.py (read 2026-11-04)
  25. apps.odoo.com/apps/modules/19.0/mcp_server_odoo (read 2026-11-04)

Last reviewed 2026-11-04

Odoo CRM is a trademark of Odoo S.A.. AILoopwise is an independent company and is not affiliated with or endorsed by Odoo S.A..

No company should leave its growth untapped.

See how much potential is in your organization.

We only take on companies where we see clear growth potential. In a 30-minute assessment we find out whether that applies to you. If it doesn't, we'll tell you.