Módulos Odoo

Creating a module

From describing the need to a tested module: connecting the connector, describing, letting Claude write, deploying to a sandbox and fixing.

5 min de leituraAtualizado a 7 de agosto de 2026

Esta página ainda não está traduzida para o seu idioma: é apresentada em inglês.

This guide starts from a need expressed in plain language and stops at a module genuinely running on a test Odoo instance.

Connecting the connector

Aidoo Modules has its own MCP connector, distinct from the one that reaches your Odoo data.

Add the connector in Claude

Same as for Aidoo AI: Settings → Connectors → Add custom connector, with the Modules connector URL. Authentication runs through OAuth, no key to copy.

Authorize the workspace

You are redirected to Aidoo, you pick the workspace, you authorize. The connector then receives a key from the module-specific family, with no access whatsoever to your Odoo data.

Aidoo's My modules page: the shared sandbox with its state, then a module card with its technical name, Odoo edition and file count.
The My modules page: the shared sandbox on top, your projects below with their status.

Each project shows its status, its technical name, the Odoo edition and version it targets, and its file count. At the top sits the environment's shared sandbox: a single trial Odoo where every enabled module lives together.

Describing the need

This is the step that determines the quality of the result. Three things to spell out.

What it does, from the user's point of view. Not "add a many2one field", but "every order must be attached to a site, and we must be able to filter orders by site".

Where it shows up. In which view, at which point on the screen, with which columns in the list. Without that, the field will exist without being visible where you expect it.

The business rules. Mandatory or not, default value, who may change it, what happens when the record changes state.

Create a "Site management" module. It adds a Site model with a code, a name, a customer and a planned end date. Sales orders and invoices can be attached to a site; the field is visible in the list view and filterable. Add a tracking screen showing, per site, the total ordered and the total invoiced.

What Claude does

It reads your Odoo structure

The models involved, their real fields, their relations. That is why the generated module fits your existing customisations instead of starting from a stock Odoo.

It creates the skeleton

Manifest, directory tree, base files. The Odoo edition and version are inferred from your connection, you have nothing to specify.

It writes the files

Python models, XML views, access rights, demo data. You see each file as it goes and can ask for a correction at any point.

It deploys to a sandbox

An ephemeral Odoo instance is provisioned, your module is installed on it, and you receive a login URL.

Following the deployment

Installation takes a few minutes. Claude reads the logs and tells you where the provisioning stands, then whether the installation succeeded. On a Python or XML error, it reads the trace and fixes it on its own.

Testing for real

This is the step not to rush

A module that installs without error is not a module that does what you want. Open the sandbox, create records, follow your real flow end to end.

A module screen in Aidoo: the Test sandbox card with its buttons, the Media card, the file tree and the editor showing the manifest.
The module screen: the test sandbox on top, the files and their content below.

Everything starts from the Test sandbox card. "Open sandbox" signs you into the trial Odoo automatically, with no credentials to type. "Logs" follows the installation live, and "Update this module" reinstalls this module alone, leaving the environment's other modules untouched.

Below sits the file tree and its content: the manifest, the models, the views, the access rights. That is what Claude wrote, readable and editable by hand.

What to check:

  • the field appears where you need it, not only in the form
  • filters and grouping work in the list view
  • business rules fire at the right moment
  • nothing is broken in the neighbouring standard screens
  • access rights match your user profiles

When something is off, describe it plainly:

The site field does not appear in the invoice list view, and I would like to be able to group by site from the Group by menu.

Claude fixes and redeploys. Every change returns the project to draft: a fresh test is required before any production deployment.

The module icon

An Odoo module has an icon in the Apps menu. You can ask for one, chosen from a library of business icons with a background colour.

Put an orange construction-site icon on the module.

What it costs

Each sandbox deployment costs 25 credits, drawn from the pool shared with agents. Writing files and reading the schema cost nothing beyond the conversation itself.

In practice, a simple module takes two to four deployments to get right: budget around a hundred credits.

One sandbox at a time during the trial

The free trial allows a single concurrent sandbox and three module projects, with no production deployment. The Standard plan raises that to three sandboxes and unlimited projects.

Next step