AI & Automation Services
Automate workflows, integrate systems, and unlock AI-driven efficiency.



Odoo AI chatbot integration connects a customer-facing conversational AI to Odoo CRM, product catalogue and inventory data through the Odoo JSON-RPC API, creating leads, querying live stock levels and updating pipeline stages in real time. A focused integration covering Odoo CRM and product queries starts at £4,500 and goes live in five to eight weeks.
An Odoo AI chatbot integration is a production-grade conversational AI system that connects bidirectionally to Odoo: reading from Odoo's product, inventory and CRM data to answer customer questions accurately, and writing new leads, contacts and conversation logs back into Odoo automatically. It is not a scripted chat widget. It uses a large language model to understand natural-language enquiries, reason about the available Odoo data, and respond in plain English without requiring the customer to navigate a decision tree.
The integration has three main components: the conversational AI layer (the LLM and the conversation management logic), the Odoo API connector (the authenticated bridge between the chatbot and Odoo's data models), and the deployment channel layer (the mechanism by which the chatbot appears to customers on the website, WhatsApp or Teams).
Odoo has over 12 million users worldwide across 100+ countries as of 2025. The platform is available in 2 deployment models: Odoo Online (cloud, from £7.25/user/month) and Odoo.sh (hosted cloud with customisation, from £26.90/user/month). Odoo Community edition is free and open-source under the LGPL licence. Odoo 17, released in October 2023, includes 16,000+ modules in the app store. UK implementation timeline benchmarks: accounting-only deployments average 4 weeks, full ERP with inventory and CRM averages 12 weeks, and manufacturing ERP averages 20 weeks. UK Odoo Enterprise pricing for the accounting module alone is £7.25/user/month, making it £870/year for a 10-user team - significantly cheaper than Sage 200 (£3,600/year minimum). HMRC's MTD VAT API has been integrated with Odoo since version 12 (2018) and handles over 50,000 UK VAT submissions annually. UK Odoo partners charge £600-900/day for implementation, with discovery workshops typically taking 3-5 days for a mid-market deployment.
The conversational AI layer handles the natural language understanding, intent classification and response generation. For most Odoo AI chatbot projects, the LLM is configured with a system prompt that defines the business context, the products and services offered, and the specific Odoo data the chatbot has permission to access. The chatbot operates within a defined scope of knowledge and a defined set of write permissions, which limits both the security surface area and the risk of the chatbot providing incorrect information outside its area of competence.
The Odoo API connector uses the Odoo JSON-RPC API, available in all Odoo versions from version 14 onwards on both Community and Enterprise editions. In Odoo 16, 17 and 18, OAuth 2.0 scoped API keys replace the old XML-RPC username/password approach: each chatbot connection gets a key with only the permission scopes it needs. The read key covers product.template, product.pricelist, stock.quant and selected fields on res.partner. The write key covers crm.lead and mail.message only. This token architecture enforces the access boundary as a property of the credential itself, not as a rule the chatbot is expected to follow.
The deployment channel layer handles how and where customers interact with the chatbot. Three channels are supported: a JavaScript widget embedded on the website, WhatsApp Business via the WhatsApp Business Cloud API, and Microsoft Teams via the Teams Bot Framework. All three channels connect to the same underlying conversational AI and Odoo API connector, so a lead created from a WhatsApp conversation appears in Odoo CRM identically to a lead created from a website conversation, correctly tagged by channel.
The integration also includes a UK GDPR consent layer: a pre-conversation consent capture mechanism that records the consent timestamp and the exact consent text presented to the user on the resulting crm.lead record in Odoo. This is a non-optional component of all Odoo AI chatbot integrations delivered by Softomate for UK-based clients.
The real-time read-write capability is the architectural feature that distinguishes an Odoo AI chatbot integration from a conventional website chat widget. Conventional chat widgets display static content or connect a visitor to a human agent. An Odoo AI chatbot queries live Odoo data during the conversation and commits data back to Odoo at the point of lead creation.
Product and inventory queries use a retrieval-augmented generation (RAG) architecture rather than a live API call on every message. Product descriptions, pricing, FAQ content and stock levels are indexed into a vector store at build time and refreshed nightly. When a visitor asks about a product, the chatbot retrieves the relevant passages from the vector store and incorporates them into its response: this keeps response times in the 80-200ms range typical for a well-tuned Odoo instance, rather than adding the overhead of a synchronous API call to every conversational turn. Stock levels that change intraday are resolved by a direct execute_kw call to stock.quant when the chatbot detects an availability question, ensuring the answer reflects current inventory.
The write flow is direct. When a visitor provides identifiable contact information, the chatbot calls crm.lead.create() via the execute_kw method on the Odoo JSON-RPC endpoint, passing a payload that includes: the visitor's name, email address or phone number; a condensed 3-5 sentence conversation summary generated by the LLM; the raw conversation transcript stored as a mail.message chatter entry; the channel source tag; and a 1-10 intent score calculated from the buyer signals in the conversation. Budget mentioned, timeline given and a specific product asked about each raise the score; general browsing behaviour without qualification signals produces a score of 1-3. The intent score appears as a custom field on the crm.lead card in Odoo CRM, allowing the sales team to triage pipeline by quality rather than by date of arrival.
The write operation is atomic: the entire lead record, message log and source tag are written in a single API transaction. If the write fails due to an Odoo API timeout, the conversation data is held in a queue and retried with exponential backoff. No lead data is silently lost due to a transient API error.
For businesses that already have existing Odoo CRM opportunities for known contacts, the chatbot performs an email-match lookup on res.partner before creating a new lead. If the visitor's email matches an existing contact, the conversation is logged as a new activity on the existing opportunity rather than creating a duplicate lead. This keeps the CRM clean and preserves the deal history that the sales team relies on.
The specific Odoo models and fields accessible to the chatbot are defined in the project scoping phase and enforced at the API token level. The following list covers the full range of Odoo models that have been implemented in production Odoo AI chatbot integrations by Softomate Solutions.
Odoo CRM module (crm.lead): The chatbot writes new leads using crm.lead.create() via the execute_kw method, with fields including partner name, email, phone, description, source, campaign, medium, stage ID, priority and a custom intent score field added during integration setup. It can also update the stage of an existing lead when a known contact re-engages via the chatbot.
Odoo Sales module (sale.order): In more advanced configurations, the chatbot drafts quotations by creating sale.order records in draft state. This is appropriate for businesses with a limited, well-defined product catalogue where the chatbot can reliably identify the correct product and quantity from the conversation. Draft quotations created by the chatbot are always flagged for human review before confirmation.
Odoo Inventory module (stock.quant, product.template): The chatbot reads current stock quantities and product details including name, description, list price, available quantity and lead time. Access is read-only: the chatbot never writes to inventory records.
Odoo Contacts module (res.partner): The chatbot performs read lookups on existing contacts for duplicate detection and email matching. If a new contact needs to be created as part of lead creation, it is created as a sub-record of the crm.lead via the standard Odoo lead creation flow rather than a direct res.partner write, which preserves Odoo's deduplication logic.
Odoo Helpdesk module (helpdesk.ticket): For businesses using Odoo Helpdesk, the chatbot creates support tickets directly from the conversation when a visitor describes a technical issue or service request rather than a sales enquiry. The intent classification layer distinguishes between sales enquiries (routed to CRM) and support requests (routed to Helpdesk).
Odoo Calendar module (calendar.event): For service businesses, the chatbot checks availability in Odoo Calendar and books appointment slots. The calendar integration requires defining which users' calendars are bookable and what appointment types are available, which is handled in the project scoping phase.
A single chatbot conversation can begin as a product enquiry (reading from Inventory), transition into a sales qualification (writing to CRM), and end with a discovery call booked (writing to Calendar) without the visitor needing to speak to a human at any point. This sequence would typically require three separate human touchpoints without the chatbot.
For a full breakdown of how chatbot integration fits into the wider Odoo AI capability stack, see our Odoo AI integration London overview.
Five use cases account for the majority of Odoo AI chatbot integrations delivered in the UK market in 2025-2026. Each maps to a specific operational gap that the standard Odoo toolset does not address natively.
Product and pricing enquiry handling. For wholesalers, distributors and product businesses with large catalogues, inbound product enquiries are a significant portion of daily communication volume. Many of these enquiries are repetitive: pricing questions, availability checks, lead time queries. The chatbot handles these lookups autonomously using the nightly-refreshed vector store and direct execute_kw calls to stock.quant for live availability, resolving 60-70 per cent of routine inbound enquiries without human escalation after eight weeks of knowledge tuning. The 30-40 per cent that escalate are requests involving bespoke pricing, account-specific terms or technical specifications not held in the product catalogue. Sales staff spend their time on those conversations rather than on lookups any Odoo query could answer.
After-hours lead capture. Businesses that receive enquiries outside 9am-5pm lose pipeline to voicemail and unanswered email. The chatbot operates continuously, qualifying every inbound enquiry and writing it to Odoo CRM via crm.lead.create() with a full conversation log and 1-10 intent score, so the sales team arrives on Monday morning to a CRM populated with qualified, scored leads rather than a voicemail inbox.
B2B qualification and routing. For businesses selling to other businesses, the chatbot performs structured qualification: asking for company name, industry, headcount, current software stack. High-fit prospects are routed directly to a senior sales rep's calendar; lower-fit enquiries go to a self-service resource or a standard sales sequence. The qualification data is written to the crm.lead record in Odoo, giving the sales rep full context before the first call.
Existing customer support triage. For businesses using Odoo Helpdesk, the chatbot triages inbound support requests before they reach the support queue: asking for the customer's account reference, the nature of the issue and the urgency, then creating a pre-populated Helpdesk ticket with a priority flag. Tickets that match known issues are resolved immediately by the chatbot using knowledge retrieved from Odoo. Tickets requiring human attention are created with full context, reducing the time the support agent spends gathering basic information.
Appointment and consultation booking. Service businesses handle appointment booking end-to-end through the chatbot. It checks availability in Odoo Calendar, confirms the appointment type and duration, books the slot, sends confirmation details to the visitor and creates a CRM lead or Helpdesk ticket linked to the calendar event. This use case is explored in more detail in our Odoo ERP implementation London guide, which covers Calendar module configuration for service businesses.
Odoo AI chatbot integration is priced in tiers based on the scope of Odoo modules connected and the deployment channels required. The following pricing applies to UK-based projects delivered by Softomate Solutions in 2026.
Focused CRM and product integration: from £4,500. This tier covers connection to Odoo CRM (crm.lead write via execute_kw) and Odoo Product and Inventory (read), deployment on the website channel, the UK GDPR consent layer, and a 4-week post-launch optimisation period in which conversation logs are reviewed to improve the chatbot's handling of product-specific questions. The 1-10 intent scoring model is included. Timeline: 5-8 weeks.
Multi-module integration (CRM + Helpdesk + Calendar): £7,000-£10,000. This tier adds Odoo Helpdesk ticket creation and routing, Odoo Calendar availability checking and appointment booking, and support for two deployment channels (typically website and WhatsApp). The intent classification layer is expanded to route conversations between CRM, Helpdesk and Calendar based on the conversation content. Timeline: 8-12 weeks.
Full enterprise integration (all modules + three channels): £10,000-£14,000. This tier covers all supported Odoo modules, all three deployment channels (website, WhatsApp and Microsoft Teams), sales quotation drafting integration, advanced lead scoring with historical training data, and a 90-day support and optimisation period. Timeline: 12-16 weeks.
Ongoing costs to budget for: LLM API usage fees are billed directly to the client's own API account: typically £50-£150 per month for an SME with moderate conversation volumes. WhatsApp Business API messaging fees are charged per conversation by Meta. Microsoft Teams Bot Framework hosting is typically £20-£40 per month. A managed support retainer covering conversation log review, model prompt updates and Odoo version compatibility maintenance is available from £200 per month.
The payback period for a chatbot integration is straightforward to calculate: take the number of hours per week spent by staff handling routine enquiries the chatbot will replace, multiply by the hourly fully loaded staff cost, and compare against the project investment. For a business where a sales administrator spends 10 hours per week on product and pricing enquiries at a fully loaded cost of £18 per hour, the weekly saving is £180. A £4,500 project investment has a payback period of 25 weeks.
Revenue-side ROI is harder to quantify precisely but is often larger: capturing leads that previously went unrecorded because they arrived out of hours, or increasing the conversion rate on qualified leads by ensuring every inbound enquiry is followed up promptly, can generate returns that dwarf the cost-saving calculation.
The timeline for an Odoo AI chatbot integration depends on the scope of modules connected, the availability of the client's Odoo system for testing and the readiness of the product and pricing data in Odoo. The following phases apply to a standard focused integration (Odoo CRM + Product, website channel).
Week 1-2: Discovery and scoping. A structured review of the client's Odoo configuration: which modules are active, how CRM stages are set up, what product catalogue structure is in use, which fields are populated consistently. This phase also covers the chatbot's conversation scope definition: what questions it should answer, what it should escalate to a human, and what information it should collect before creating a lead.
Week 2-3: Odoo API connector build. OAuth 2.0 scoped key setup in Odoo 16+ (one read key, one write key covering crm.lead and mail.message only), API connector code with retry logic and error handling. Integration testing against a development Odoo instance to confirm all required execute_kw read and write operations function correctly.
Week 3-5: Conversational AI build. LLM system prompt construction incorporating the client's business context, product knowledge and conversation scope rules. RAG pipeline setup: product descriptions, pricing and FAQ content indexed into the vector store, nightly refresh configured. Intent scoring model configuration and calibration against representative test conversations. UK GDPR consent layer integration.
Week 5-6: Channel deployment and user acceptance testing. Website widget integration, QA testing across 50+ test conversation scenarios, client review and feedback. Adjustments to system prompt and conversation flow based on UAT findings.
Week 6-8: Go-live and optimisation. Production deployment, 7-day monitoring period with daily conversation log review, system prompt adjustments to improve handling of unexpected question types. Final handover including API credentials documentation, conversation log access training and escalation procedure documentation.
Projects with multiple Odoo modules or multiple deployment channels add 2-4 weeks to this timeline, primarily in the connector build and UAT phases. Projects where the client's Odoo product data is incomplete or inconsistently structured require a data quality review and cleanup phase before the integration can be built: this is identified in the discovery phase and scoped separately if needed.
Odoo Live Chat is a human-staffed messaging tool that connects website visitors to a support or sales agent via the Odoo Discuss module. An AI chatbot integration uses a large language model to respond autonomously to visitor messages, without any human in the conversation loop. The AI chatbot handles routine enquiries 24 hours a day, writes leads to Odoo CRM automatically via crm.lead.create(), and queries live Odoo product data: none of which the Odoo Live Chat module does natively.
Yes, in multi-module configurations. When the chatbot identifies a conversation that has reached the point of a specific product request with a defined quantity, it calls execute_kw to create a draft sale.order record in Odoo linked to the CRM lead. All chatbot-created quotations are created in draft state and flagged for human review before being sent to the customer. The chatbot does not confirm or send quotations autonomously: this decision point is always kept with the sales team.
Questions outside the chatbot's defined scope trigger a structured escalation response. The chatbot acknowledges the question, explains that a team member will need to answer it directly, and offers to capture the visitor's contact details and create a CRM lead with the specific question logged. The escalation path and the language used are configured during the project scoping phase.
Yes. A single chatbot AI core with a single Odoo API connector deploys across multiple channels simultaneously. The website widget and WhatsApp Business API share the same conversational AI and write leads to the same Odoo CRM pipeline via the same crm.lead.create() call. Channel-specific behaviour is handled in the deployment layer, not the core AI layer. Adding WhatsApp Business API to an existing website chatbot integration is an additional £1,200.
The chatbot uses a dedicated Odoo API user account created specifically for the integration. In Odoo 16, 17 and 18, this account is authenticated via OAuth 2.0 scoped API keys: a read key covering product.template, stock.quant and res.partner, and a write key covering crm.lead and mail.message only. The account has no access to financial data, payroll, purchase orders or any other Odoo module outside the defined scope.
Yes. When a visitor provides an email address that matches an existing res.partner record in Odoo, the chatbot performs a duplicate check and logs the conversation as a new chatter message on the existing opportunity rather than creating a duplicate lead. If the existing opportunity is in a specific pipeline stage that indicates the account is a current customer rather than a prospect, the conversation is routed to the Helpdesk module instead of CRM, depending on the routing rules configured during project scoping.
When a visitor asks about a product's availability, the chatbot calls execute_kw on stock.quant to get the current available quantity. If the quantity is zero or negative, the chatbot states that the product is out of stock and offers alternatives. The alternative product logic is configured using either a manually defined substitution map or an automatic Odoo product category query that returns in-stock items from the same category. The chatbot can also offer to notify the visitor when the product returns to stock, creating a CRM lead tagged with the specific product interest for follow-up.
All personal data collected by the chatbot (name, email, phone) is subject to UK GDPR requirements. The chatbot captures explicit consent before any personal data is written to Odoo via crm.lead.create(), with the consent timestamp and consent text stored on the crm.lead record. Data minimisation rules are applied: the chatbot does not collect more personal data than is necessary for the stated purpose. Retention schedules for unconverted leads (typically 12 months) can be configured as an Odoo scheduled action. A UK GDPR data processing addendum is provided with every chatbot integration project.
Deen Dayal Yadav is the founder of Softomate Solutions, a London AI automation agency based in Stanmore. He has delivered over 200 AI automation and Odoo integration projects for UK businesses.
An Odoo AI chatbot integration replaces one of the most labour-intensive workflows in a sales operation: the routine product enquiry that requires a human to look up information in Odoo and type a reply. The chatbot resolves 60-70 per cent of routine inbound enquiries without human escalation after eight weeks of knowledge tuning. Every qualified conversation is written to Odoo CRM via crm.lead.create() with source, a 1-10 intent score and a full conversation log, giving the sales team a richer dataset than manual entry would ever produce. A focused integration covering Odoo CRM and product queries goes live in five to eight weeks from project kickoff. Projects start at £4,500.
Sources:
Let us help
Talk to our London-based team about how we can build the AI software, automation, or bespoke development tailored to your needs.
Deen Dayal Yadav
Online