New module makes Odoo websites readable for AI assistants
A new ownERP module prepares Odoo websites for ChatGPT, Perplexity, and Claude. A preview from the ongoing testing phase.
Ask ChatGPT about your own company once
If the answer is roughly right but the sources it names belong to someone else, you've seen the problem we built the new module for. Your customers are increasingly researching in the chat window instead of the results list. The system delivers a finished answer and names a handful of addresses alongside it.
Anyone not among them doesn't show up in this kind of research.
A name has become established for this: AI visibility, in technical jargon Generative Engine Optimization or GEO for short. It refers to the work of getting a language model to find, understand, and cite a website as a source.
For the website, this means it has gained a second readership that reads differently than a human. A language model doesn't skim a page or scroll to the interesting part. It receives a snippet, evaluates it, and decides from that whether to cite you. What sits in paragraph seven under a nicely worded subheading often never even gets through. For this readership, Odoo currently has no built-in tool.
What surprised us most during the testing phase
The most common reason a website never appears in AI answers is mundane: the crawler isn't allowed to read it. In the robots.txt there's a line that someone copied from a template years ago, and since then it has been blocking GPTBot, ClaudeBot, or PerplexityBot. As long as that remains the case, no other measure will have any effect.
The first button in the module is therefore a check, not a function. It reports which AI crawlers are currently being blocked.
After that, you decide for yourself who may do what. The module distinguishes three kinds of crawlers: those that build the index for AI answers and can cite you in the process, those that fetch a page at the moment someone has just asked, and those that exclusively collect material for future model training, without ever referring back to you. The third kind can be switched off without losing citability. That is exactly how it is set out of the box. In addition, there is the Content-Signal line following the convention published by Cloudflare, with which you express what may be done with your material.
Second version instead of hidden text
The obvious thought with machine-readable content is to give machines something of their own: invisible text, a keyword list, a special offer for crawlers. The thought is wrong and causes harm in two ways. AI answer engines discard content behind display:none. Anyone who delivers different content to crawlers than to humans is cloaking, and according to Google's spam policies, this leads to demotion in regular search.
The module instead delivers the same content a second time, in machine-readable form. Every page is also available as Markdown, at the same address with .md at the end or via the HTTP header Accept: text/markdown. That is not trickery, but standard HTTP since the nineties: nobody calls a REST interface disguised because it delivers JSON.
A dedicated page type for solution pages has the strongest effect. It enforces the structure these systems respond to: the question as the heading, the complete answer in no more than 200 words at the very top, followed by the steps and the typical follow-up questions. Odoo checks the word limit when saving; it is not a recommendation. An answer that a model first has to summarize loses the citation it was written for.
Where the module sits in the AI portfolio
It does not stand alone. All AI modules in ownERP pull credentials, models, and prompts from the same central configuration, so you store your provider once, not six times:
- AI Foundation manages this configuration and passes it on to all others.
- AI SEO Optimization writes meta titles, descriptions, and alt texts for images.
- AI Translation replaces Google Translate and the Odoo IAP translation in the editor with your own provider.
- AI Enrichment adds company data from website and legal notice, without Odoo IAP credits.
- Website Analytics counts which AI crawlers actually visit and how many visits land on your page from an AI answer.
The last line is the most important. Visibility in AI systems otherwise becomes a matter of faith, because nobody checks it. Only with Website Analytics next to it can you say whether the measure has done anything.
What really works and what doesn't
We state this openly in the included help, and it belongs here too: the individual building blocks have varying degrees of impact. The following assessment is based on vendor documentation and the technical literature on retrieval systems.
| Building block | Our assessment |
|---|---|
| Crawler block check | High impact. A blocked crawler reads nothing, no matter how good the page is. |
| Structured company data | Reliable for accurate rendering and for distinguishing companies with the same name. |
| Answer-first structure of solution pages | Well documented in the technical literature. Retrieval systems weight the beginning of a page heavily. |
| Markdown delivery | Mixed. Crawlers rarely fetch it on their own. The benefit arises when someone copies the address into a chat window or a coding assistant requests it. |
| Curated page overview (llms.txt) | No evidence. The llmstxt.org specification is gaining traction, but no major vendor has yet acknowledged reading it. |
Anyone selling you a guaranteed placement for AI visibility is selling you something no one can deliver. The biggest lever remains the content: a page that answers a real question early and completely. The module clears the technical obstacles out of the way and gives the editorial team a format that fits these systems.
Check your robots.txt before the module arrives
The test phase is still running in August 2026. After that, the module for Odoo 19 will appear in the ownERP Spezial package, in German, English, French, and Spanish.
You can take one step today without us: Open ihre-domain.de/robots.txt and check whether GPTBot, ClaudeBot, or PerplexityBot are blocked there. If so, you already know why you don't appear in any answer.