AI-powered Odoo implementation and support

Cut the cost of Odoo implementation and supportby up to 10x.

Most of an Odoo budget goes into working out how the system behaves before anyone can change anything. ERPeek reads your actual configuration, installed modules and custom addons, so your team and your Odoo partner start from an understood system and spend the budget on outcomes instead of discovery.

PPlan the projectCConfigure workflowsIImport your dataGGenerate documentationDDiagnose issues

No credit card required 1,000 free ERPeek Credits to start

Odoo 14.0Odoo 15.0Odoo 16.0Odoo 17.0Odoo 18.0Odoo 19.0Odoo 20.0

Community & Enterprise · Custom Addons

Example Conversations

Answers grounded in your Odoo

Scroll through examples of ERPeek answers, from BI dashboards to error diagnosis. Every answer cites the code and configuration behind it.

ERPeek
Odoo 16.0
What are our top 10 products by gross margin this quarter? Flag anything below 20% so I can talk to the purchasing team.

Gross Margin, Top 10 Products, Q1 2025

Here's your margin breakdown for the current quarter, pulled directly from your confirmed sales orders and product cost data. I've flagged 3 products that fall below your 20% threshold, these are worth reviewing with your purchasing team before the next order cycle.

#ProductRevenueMarginStatus
1Cloud Hosting Annual€284,10066.7%Healthy
2ERP Implementation Pack€201,50070.5%Healthy
3Industrial Sensors Kit€178,20035.0%Healthy
4Office Furniture Set€134,80025.0%Watch
5Aluminium Sheets 2mm€98,40017.0%Below 20%
6Motor Bearings Pack€87,20016.2%Below 20%
7Cardboard Packaging€54,60015.0%Below 20%

What's driving the low margins

  • Aluminium Sheets (17%), your supplier raised prices by 12% in October, but your pricelist for this category hasn't been updated since June. Adjusting the pricelist would bring the margin back to approximately 24%, which is above your threshold.
  • Motor Bearings (16.2%), you're currently purchasing from your secondary supplier at a higher cost. The primary supplier offers a 9% lower unit price. Switching back or renegotiating the secondary contract would resolve this.
  • Cardboard Packaging (15%), this is typically sold as a standalone line item, but most of your competitors bundle it into service contracts. If you include packaging in your service bundles, it removes the standalone margin pressure entirely.

Trend vs. last quarter

Compared to Q4 2024, your overall average margin dropped from 38.2% to 35.7%. The primary driver is the raw materials category, Aluminium and Bearings alone account for 80% of the decline. Services and software margins remain stable and strong.

Here it is as a shareable dashboard, with the underlying data as an Excel workbook and an editable Word copy for purchasing:

margin-dashboard.html
OpenExport
Revenue
€1.14M
Avg margin
35.7%
Below target
3
Top products by gross margin
ERP Implementation Pack
70%
Cloud Hosting Annual
67%
Industrial Sensors Kit
35%
Office Furniture Set
25%
Aluminium Sheets 2mm
17%
Q2-Margin-Report.xlsx
Spreadsheet • 1.2 MB
Download
Q2-Margin-Report.docx
Documentation • 248 KB
Download
Generate the quarter-over-quarter comparison reportDraft the email to the purchasing team
ERPeek
Odoo 18.0
hubspot-contacts-export.csv
25,412 rows · 8.2 MB
We're switching to Odoo from HubSpot (CRM), Asana (projects), and QuickBooks (accounting). 25k contacts, 3 years of invoices, 400 active projects. How do we approach this? I've attached our HubSpot contact export, can you start with those?
Agent activity
Reading uploaded file2.1s
Analyzing attachment, mapping 21 columns to res.partner4.8s
Querying live Odoo, checking existing contacts1.6s
Creating file, res_partner_import.csv3.2s
Proposing batch changes0.9s
5 tool calls · 12.6sView details

HubSpot contacts → your live Odoo, in one pass

Consolidating three separate tools into one unified system is exactly what Odoo excels at. The critical thing is importing in the right order, sales and project records reference contacts and products, so those must exist in Odoo first. Contacts are the correct starting point, and since you attached the export, I've already processed it.

What I did with your file

  1. Read all 25,412 rows from the HubSpot export and mapped every column to the corresponding res.partner field (18 mapped automatically, 3 via your custom field labels).
  2. Deduplicated on email, found 2,813 duplicates from contacts existing in multiple HubSpot lists, merged them keeping the most recent record.
  3. Converted to Odoo's import format, companies first, then contacts linked to their company, with country codes and tags normalized to your Odoo 18 configuration.

The rest of the migration, in order

  1. QuickBooks → Chart of Accounts & Products, import your account structure first, then products/services with their QB item codes. Tax mappings need manual review, QB stores tax as a flat amount per line while Odoo uses fiscal positions and tax groups. Rebuild the rules, don't import them.
  2. QuickBooks → 3 Years of Invoice History, ~420k invoice lines. Import as posted journal entries, do not trigger payment workflows or stock movements. Then post an opening-balance entry matching your QB trial balance on the cutover date, or your accounting will be off from Day 1.
  3. Asana → Projects & Tasks, 400 projects. Map Asana boards to Odoo project stages, match members by email. Budget extra time for attachments, they typically run 3-5x the task count in files.
  4. Validate & Reconcile, compare totals across all 3 source systems vs. Odoo before cutting over. Realistic timeline for this volume: 2 weeks of preparation, 1 week of test imports, then 3-4 days for the production run with all sources read-only.

Here's your converted, deduplicated import file:

res_partner_import.csv
Import File • 6.4 MB
Download

Your project has a live Odoo connection, so I can create these records directly. Nothing is written until you approve:

Batch Write Actions, Approval Required
Model:res.partnerCreateOperations:22,599

Create 4,510 companies and 18,089 contacts in your Odoo 18 database via the live API connection. 2,813 duplicates were merged during conversion. Every record is tagged 'HubSpot import' so the batch can be filtered or rolled back.

ApproveDenyAsk for modification

Nothing changes in Odoo until you approve. Every write is logged.

Import the QuickBooks invoice history nextShow me the 2,813 merged duplicates
ERPeek
Odoo 17.0
We sell products that are both manufactured and dropshipped depending on stock. When stock is available it still triggers a manufacturing order AND a dropship purchase. The routes seem to conflict, how do we fix this?

Route Conflict, Manufacture + Dropship

This is one of the most common, and most confusing, issues in Odoo inventory configuration. When multiple routes are assigned to a product, Odoo doesn't choose the "best" one. It evaluates all active routes simultaneously when a sale order is confirmed, which is why you're seeing both a manufacturing order and a dropship purchase created at the same time.

What's happening now

When a sale order is confirmed for your product, Odoo fires both the Manufacture and Dropship procurement rules at the same time. This creates a manufacturing order that consumes components from your stock AND a purchase order that ships directly from the supplier, double fulfillment, wrong costs, and a confused warehouse.

How to fix it

You need a single route with conditional logic, not two separate routes competing. Here's exactly what to change:

  1. Remove the Dropship route from the product form. Keep only "Manufacture" as the active route. This prevents both routes from firing simultaneously.
  2. Create a reordering rule on the product with minimum quantity = 0 and preferred route = Manufacture. When stock drops below minimum after a sale, Odoo will automatically create a manufacturing order to replenish.
  3. For dropship scenarios, create a separate product variant that uses only the Dropship route. Your sales team selects this variant when the customer explicitly requests direct delivery from the supplier.
  4. Link the operations together by setting procurement group propagation to "Fixed" on the manufacture route. This ensures the delivery order stays in "Waiting" status until the manufacturing order is completed.

I proposed the fix as a write action and you approved it:

Write Action, Approval RequiredExecuted
Model:product.templateUpdateIDs:412

Remove the Dropship route from the product, add a reordering rule (min 0, route Manufacture), and set procurement propagation to Fixed.

Verified on your live database: confirming a sale now creates a single delivery in Waiting, the reordering rule raises the manufacturing order, and the delivery flips to Ready when it completes. One path, correct costs, no double fulfillment.

Create the dropship variant for direct-delivery orders
ERPeek
Odoo 15.0
We want to go live with Manufacturing and Inventory in 3 months. We currently track everything in Excel. What's a realistic plan and what are the biggest risks?

MRP + Inventory Go-Live, 12 Weeks

Moving from Excel to Odoo Manufacturing is a significant step, but 3 months is realistic if you follow a structured approach. The biggest risk isn't the software, it's data quality and team adoption. Here's the full plan.

Implementation Roadmap

Phase 1: Foundation, Weeks 1-3 · Low effort Set up warehouses, stock locations, units of measure, and basic product categories. This is the skeleton everything else builds on.

Phase 2: Product Catalog & BoMs, Weeks 3-5 · Medium effort Import your product list from Excel, create Bills of Materials, and define reordering rules. This is the most data-intensive phase, budget all of Week 4-5 for BoM validation with your production team.

Phase 3: Manufacturing Configuration, Weeks 5-8 · Medium effort Configure work centers, define manufacturing operations and routings, set up the production scheduler. Test with 2-3 sample products end-to-end before proceeding.

Phase 4: User Acceptance Testing, Weeks 8-10 · Intensive Full simulation using real orders from your last month. Every warehouse user should process at least 20 orders in the test environment. Document every issue you find.

Phase 5: Go-Live, Weeks 11-12 · Critical Physical stock count (schedule on a weekend), cutover from Excel, and run both systems in parallel for at least 5 business days to catch discrepancies.

Top 3 risks for your situation

  • Bills of Materials accuracy, this is the #1 reason manufacturing go-lives fail. If your BoMs are wrong, every production order will consume the wrong quantities and your inventory will be off within days. Budget all of weeks 4-5 for BoM validation with your production manager physically in the room.
  • Opening stock count, your Odoo stock levels must match the physical warehouse on Day 1, or every subsequent transaction will compound the error. Schedule a full physical count during Week 10, ideally on a Saturday when the warehouse is quiet and nothing is being shipped.
  • Team adoption, warehouse staff moving from Excel to tablets/barcode scanners need hands-on training, not just a demo. Plan at least 2 dedicated training sessions per team, plus 1 week of floor support during go-live.

Here is the full plan as an editable Word document, with the phase timeline as an Excel workbook:

MRP-Go-Live-Plan.docx
Documentation • 320 KB
Download
MRP-Go-Live-Timeline.xlsx
Spreadsheet • 184 KB
Download
Analyze my Excel product list and map it to Odoo fieldsGenerate the Week 1 setup checklist
ERPeek
Odoo 14.0
We just took over this client from another implementation partner. They have 14 custom modules installed and absolutely no documentation. Can you give me a full picture of what's been customized and what each module does?
Agent activity
Listing custom modules0.7s
Module lookup, custom_sale_workflow1.3s
Reading source code, models/sale_order.py2.4s
Tracing inheritance chain, sale.order1.8s
Querying live Odoo, installed module versions1.1s
23 tool calls · 41sView details

Environment Audit, 14 Custom Modules

I've scanned the full environment, every installed custom module, its dependencies, what standard Odoo behavior it overrides, and the risk level if you need to modify or remove it. Here's the complete picture.

Module Inventory

ModuleAreaWhat it doesRisk
custom_sale_workflowSales3-level approval chain for quotes above €10k. Blocks confirmation until all approvers sign off.High
mrp_quality_extMRPAdds a mandatory QC checklist to production orders. Blocks completion if any check fails.Med
stock_barcode_customWHOverrides the barcode scanner workflow, adds batch picking organized by warehouse zone.High
hr_expense_rulesHRAuto-approves expenses under €50. Manager approval required above that threshold.Low
account_report_customAcct3 custom PDF report templates for invoices, credit notes, and pro-forma.Low

... and 9 more modules analyzed, full report available on request

Module Dependencies

The 2 high-risk modules sit at the top of the dependency chain:

  • custom_sale_workflow → sale_margin_ext → report_templates
  • stock_barcode_custom → mrp_quality_ext
  • hr_expense_rules, standalone, no dependencies

You cannot uninstall or modify a module without first understanding everything downstream of it.

Risk Summary

  • 2 high-risk modules, custom_sale_workflow and stock_barcode_custom heavily override core Odoo behavior. Any changes to these could break daily operations for the sales and warehouse teams. Understand them completely before touching anything.
  • 4 medium-risk modules, extend standard features with custom fields and modified views. Functional but will need updates if the client upgrades Odoo versions.
  • 8 low-risk modules, mostly report templates, small field additions, and UI tweaks. Safe to maintain as-is.
Sources23 code citations
Custom addons14Odoo Community6Customer data3
Explain custom_sale_workflow in detailWhat breaks if this client upgrades Odoo?

← Scroll to explore all 5 use cases →

Why ERPeek

The cost is in the digging, not in the people.

Odoo projects run long because nobody, on either side of the table, can see the whole system at once. ERPeek gives the company and its partner the same view of it.

Where the hours go today

Every project starts by rediscovering the system

Before anyone can change anything, someone has to work out how the current setup actually behaves. That discovery gets paid for again on every project, every ticket and every handover.

The answer exists, it is just not findable

The behaviour is already in the code and the configuration. Finding it means reading modules, chasing overrides and checking which version applies. The hours go into looking, not into deciding.

What gets learned never gets written down

The understanding earned during an implementation lives in one person’s head and in an old thread. Next quarter, or with the next team, it has to be earned all over again.

Where they go with ERPeek

Everyone works from the same answer

Your team, your integrator and your consultants ask in plain language and get the same answer, grounded in your actual Odoo configuration, with the source cited so anyone can check it.

Discovery takes minutes, not weeks

ERPeek indexes your modules, custom addons and overrides up front, so a project opens on a system that is already understood and the budget goes to the work you actually wanted.

The understanding stays written down

Any answer becomes a process guide you can export as DOCX or PDF, so what the project learns stays with the company instead of leaving with whoever worked it out.

Simple Setup

How It Works

Three steps, a few minutes, and your team and your Odoo partner both working from the same indexed system.

Step 01

Connect

Create your project, pick your Odoo version and distribution, and optionally connect your custom GitHub repositories and a database dump. Nothing to install on your side.

Step 02

Index

ERPeek indexes Community modules, Enterprise addons, and your custom code, so every answer reflects the Odoo you actually run instead of a generic one.

Step 03

Ask

Ask in plain language and get answers cited to your own configuration. Build the plan, generate the documentation, and keep the project moving between meetings.

Features

Where the time actually goes

Each of these removes a step that currently costs hours on every project: the investigation, the version check, the walkthrough of your own customizations, and the write-up afterwards.

Search

Answers in seconds, not next week

Hybrid code search combines structural indexing, semantic vectors, and an agentic search pass, so a question about your workflow is answered while you are still in the room asking it.

  • Structural index: modules, models, fields, and inheritance chains
  • Semantic vectors: find logic by meaning, not just keywords
  • Agentic search: multi-step reasoning for the questions that used to take a day of digging
"How does sale order confirmation work?"
Structural: sale_order.action_confirm()
Semantic: order state transitions
Agent: inheritance chain analysis
Intelligence

Scoped to the Odoo you actually run

Every answer is scoped to your exact version and distribution, so nobody loses a day acting on advice that was written for a different release. Version-scoped by default, not by luck.

  • Support for Odoo 14.0 through 20.0
  • Community and Enterprise distributions
  • Version-specific API and behavior, not a generic Odoo answer
v14.0
v15.0
v16.0
v17.0
v18.0
v19.0
v20.0

Each version has its own isolated index

Custom Code

Your customizations are part of the answer

ERPeek reads your custom modules and detects overrides automatically, so answers describe the system that was built for you, not a default Odoo demo database.

  • GitHub repository integration for custom addons
  • Automatic override detection
  • Source attribution: Community, Enterprise, or your own code
Communitysale/models/sale_order.py
Enterprisesale_subscription/models/sale_order.py
Custommy_addon/models/sale_order.py
Grounding

Documentation you can hand to your team

Every answer must be backed by code the agent actually read, and you can export the result. What starts as a question ends as a process guide your company keeps.

  • The agent searches and reads your actual Odoo source before answering
  • Citations link each claim to the file and lines behind it, so verification takes seconds
  • Export answers and guides as DOCX or PDF, and ungrounded answers are refused rather than guessed
Plan
Research
Verify
Deliver

Every answer flows through research, grounding, and citation checks

MCP Connector

Connect your Odoo to your AI

Already using Claude or another AI assistant? The ERPeek MCP connector brings your Odoo knowledge into the tools you already use.

  • Same cited answers from your real Odoo, inside your AI assistant
  • Changes stay gated: proposed, approved by you, logged
  • No app switching for your team, ERPeek follows them
Set up the MCP connector
Security

Your Odoo, your rules

Every live-Odoo operation passes through a dedicated security gateway that enforces your per-project policies before anything reaches your data.

Security gateway

Mandatory security checkpoint

The ERPeek MCP Gateway sits between the AI agent and your Odoo instance. Every request, read or write, is inspected, policy-checked, and logged before it reaches your data.

  • Per-project write policies: global read/write controls with per-model allowlists
  • Hard floor: dangerous operations (sudo, raw SQL, module uninstall) are always blocked
  • Credentials encrypted at rest (AES-256-GCM), never logged, never sent to the LLM
  • Health-checked every 5 minutes with fail-closed behavior: if the gateway is down, operations are refused
AI agent request
ERPeek MCP gateway
Policy check · credential injection · audit log
Allowed → Odoo
Blocked → denied

Every request is inspected before it reaches your Odoo

Pricing

Simple, Transparent Pricing

Subscribe monthly, cancel anytime. Every plan includes full access to ERPeek's AI-powered Odoo intelligence.

Starter

$20/mo

1,000 ERPeek Credits included

  • 1,000 ERPeek Credits/mo
  • All Odoo versions
  • Custom addon indexing
  • Cited, code-grounded answers
  • Buy extra credits anytime
Get started
Most Popular

Pro

$60/mo

5,000 ERPeek Credits included

  • 5,000 ERPeek Credits/mo
  • All Odoo versions
  • Custom addon indexing
  • Cited, code-grounded answers
  • Buy extra credits anytime
Get started

Enterprise

$200/mo

20,000 ERPeek Credits included

  • 20,000 ERPeek Credits/mo
  • All Odoo versions
  • Custom addon indexing
  • Cited, code-grounded answers
  • Buy extra credits anytime
Get started

One Odoo, understood by everyone who works on it

Companies running Odoo and the partners who implement it use ERPeek to plan the project, configure workflows, import data and answer questions from the real configuration, with documentation to keep afterwards. Get started today, no technical background required.

Start Free

No credit card required · 1,000 free ERPeek Credits to start