| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
CRM (crm)
• Discuss (mail) • Calendar (calendar) • Contacts (contacts) |
| Lines of code | 1082 |
| Technical Name |
crm_ai_email_lead_parser |
| License | OPL-1 |
| Website | https://www.ahex.co |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
CRM (crm)
• Discuss (mail) • Calendar (calendar) • Contacts (contacts) |
| Lines of code | 1082 |
| Technical Name |
crm_ai_email_lead_parser |
| License | OPL-1 |
| Website | https://www.ahex.co |
AI Email Lead Parser for Odoo CRM
AI Email Lead Parser for Odoo CRM is an intelligent automation plugin that automatically converts incoming business emails into structured CRM leads using Artificial Intelligence. It reads emails from Gmail, Yahoo, and other email providers, analyses the content, extracts relevant business information, and creates accurate leads in Odoo CRM - eliminating manual data entry and saving valuable time for your sales team.
With AI-powered parsing and validation, this module ensures only high-quality, genuine enquiries are converted into leads while filtering spam and junk emails automatically.
Key Features
Automatic Lead Creation from Incoming Emails
Supports Gmail, Yahoo, and Other Email Providers via IMAP
AI-Based Email Content Analysis and Normalisation
Smart Lead Validation and Spam Filtering
AI-Powered Structured Data Extraction
Automatic Mapping to Odoo CRM Fields
Partnership Email Detection and Tagging
User-Configurable AI Classification Prompts
Works with Website Enquiries and Direct Sales Emails
Supports Three AI Providers: OpenAI, OpenRouter, and Google Gemini
Pay-As-You-Go AI Costs - Bring Your Own API Key
Improves Sales Productivity and Response Time
How It Works
Step 1: Connect your business email account (Gmail or Yahoo mail server).
Step 2: Incoming enquiry emails are automatically fetched by Odoo.
Step 3: The AI reads and analyses the email content.
Step 4: Important details such as name, phone number, company, job title, email address, website, and location are extracted.
Step 5: The data is mapped to the relevant Odoo CRM fields automatically.
Step 6: Valid leads are saved and ready for your sales team to action in Odoo CRM.
Step 7: Spam, newsletters, job applications, and irrelevant emails are filtered out and do not enter your pipeline.
Business Benefits
Reduce manual lead entry by 90% or more
Faster response to incoming enquiries
Improved data accuracy across your CRM
Better lead quality - only genuine enquiries enter your pipeline
Higher conversion rates from faster follow-up
Increased sales team efficiency
Cleaner CRM data management
Ideal For
Sales Teams
CRM Managers
Digital Marketing Teams
Lead Generation Agencies
B2B and B2C Businesses
Service Providers
ERP Implementers and Odoo Partners
Supported AI Providers
This plugin supports three major AI providers. You supply your own API key - there is no platform subscription or per-lead fee from us. You pay only what your AI provider charges.
OpenRouter (Recommended)
OpenRouter is a single API that gives you access to over 200 AI models from OpenAI, Anthropic, Google, Meta,
Mistral, and more - all under one API key and one billing account. It is the most flexible option and the
one the plugin is pre-configured to use by default.
With OpenRouter you are never locked into one model. You can switch between GPT-4o Mini, GPT-4o, Claude,
Gemini, Llama, and hundreds of others with a single setting change.
Pricing is pay-as-you-go with no monthly minimum. GPT-4o Mini costs approximately $0.15 per one million
input tokens, making the cost per email negligible even at high volume.
Website: openrouter.ai
OpenAI
If your team already has an OpenAI account or prefers to work directly with OpenAI's models, the plugin
connects natively to the OpenAI API. GPT-4o Mini is recommended for the best balance of speed, accuracy, and
cost.
Website: platform.openai.com
Google Gemini
Google Gemini is available through Google AI Studio and offers a generous free tier suitable for
low-to-medium email volumes. Gemini 1.5 Flash is fast and capable, making it an excellent option for
businesses that want to start with zero initial AI cost. The plugin includes automatic rate-limit handling
with built-in retry logic for Gemini.
Website: aistudio.google.com
Getting Your API Key
OpenRouter
- Go to openrouter.ai and create an account using your email, Google, or GitHub.
- Navigate to **Settings** and add credits. Even $5 is enough to process thousands of emails.
- Set a monthly spending limit on your key to prevent unexpected charges.
- Go to **Settings - API Keys - Create New Key**. Give it a name such as Odoo CRM. Copy the key - it
begins with
sk-or-v1-.
OpenAI
- Log in to platform.openai.com.
- Go to **Settings - API Keys - Create new secret key**.
- Copy the key. It begins with
sk-. Store it securely as it is shown only once. - Ensure your OpenAI account has a valid payment method and a usage limit configured.
Google Gemini
- Go to aistudio.google.com and sign in with your Google account.
- Click **Get API Key - Create API key**. Select or create a Google Cloud project.
- Copy the key. No billing is required for the free tier.
Recommended AI Models
OpenRouter
- openai/gpt-4o-mini
- openai/gpt-4o
- anthropic/claude-3-haiku
OpenAI
- gpt-4o-mini
- gpt-4o
Gemini
- gemini-1.5-flash
- gemini-1.5-pro
Tip: gpt-4o-mini is highly recommended for its excellent balance of speed, accuracy, and cost efficiency.
What Information Gets Extracted
The AI extracts every relevant piece of information it can find in the email body and writes it directly to your Odoo CRM lead record. All of the following fields are populated automatically, provided the information appears in the email.
- Contact Name: Full name of the person who sent the email
- Company Name: The sender's company or organisation
- Job Title: The sender's role (e.g., Procurement Manager, CEO)
- Email Address: Contact email address (may differ from From address)
- Phone Number: Any phone or mobile number mentioned in the email
- Website: Company or personal website URL
- Location Data: Street Address, City, ZIP/Postal Code, and Country
- Country Match: Automatically matched to Odoo's country list
- Lead Priority: Automatically assessed (Normal, Low, High, Very High)
- Partnership Flag: Marked if business collaboration or reseller enquiry
- Extra Information: Additional details stored as notes on the lead
The AI is strictly instructed not to guess or invent information. If a field is not present in the email, it is left blank. This ensures your CRM data is always accurate.
Email Classification
Before extracting contact data, the plugin classifies every email into one of three categories. This determines how the lead is tagged in Odoo and whether it enters your sales pipeline.
Lead: The sender wants to buy, try, or discuss purchasing your product or service. This includes demo requests, pricing enquiries, product questions, and purchase intent. The email is added to your CRM pipeline, fully populated, and ready for follow-up.
Partnership: The sender is proposing a business collaboration such as a reseller agreement, affiliate deal, joint venture, API integration, or co-marketing opportunity. The lead is created and tagged separately from regular sales leads.
Spam: Job applications, newsletters, promotional blasts, support tickets, phishing attempts, or any email without clear business intent. The lead is flagged and kept out of your active pipeline.
Custom Classification Rules
Every business defines leads differently. The plugin lets you write your own classification instructions in
plain English - tailored to your specific business, products, and customer types. The AI follows your rules
on every inbound email.
Your custom instructions are entered once in Odoo's Company Settings under AI Classification Prompt.
No technical knowledge is required. If you leave it blank, the plugin uses a sensible general-purpose
(Default) prompt automatically.
Requirements
- Odoo Version: Odoo 16, 17, 18, and 19 (Community or Enterprise)
- Odoo Modules: CRM and Mail modules must be installed and active
- Incoming Mail Server: A configured IMAP mailbox connected to Odoo
- AI Provider Account: An account with OpenRouter, OpenAI, or Google Gemini
- API Key: A valid API key from your chosen AI provider
- Internet Access: Your Odoo server must be able to make outbound HTTPS requests to the AI provider
Setup Guide
Step 1 - Install the Module
- Copy the module folder to your Odoo custom addons directory.
- In Odoo, go to Settings and activate Developer Mode.
- Go to Apps - Update Apps List and click Update.
- Search for our module and click Install.
Step 2 - Configure Your API Key
- Choose your AI provider: OpenRouter (recommended), OpenAI, or Google Gemini.
- Create your API key following the steps in the Getting Your API Key section above.
- In Odoo, go to Settings - Technical - Parameters - System Parameters.
- Create three new parameter records:
- Parameter 1 - Key:
lead_crm.ai_provider| Value: openrouter (or openai or gemini) - Parameter 2 - Key:
lead_crm.ai_api_key| Value: your API key from your provider - Parameter 3 - Key:
lead_crm.ai_model| Value: openai/gpt-4o-mini (see recommended models below)
Recommended Models
- OpenRouter:
openai/gpt-4o-mini(fast, accurate, very low cost - recommended) - OpenRouter premium:
openai/gpt-4o(higher accuracy for complex or long emails) - OpenAI:
gpt-4o-mini(native OpenAI access) - Google Gemini:
gemini-1.5-flash(fast, free-tier eligible)
Step 3 - Set Up Incoming Email System (Full Configuration)
3.1 Configure Alias Domain
Alias domain tells Odoo which domain it should accept emails for (catchall + routing).
Fields:
- Alias Domain: Your mail domain (e.g., yourcompany.com)
- Rule: Alias Domain = part after "@" in the email address
- Bounce Alias: Default: bounce
- Catchall Alias: Default: catchall (Used when no specific alias exists)
- Default From Alias: Example: notifications
3.2 Configure Email Aliases
Aliases route emails to specific Odoo records (CRM, Sales, Helpdesk, etc.).
Example - Sales Team Alias:
- Alias Name: sales
- Alias Domain: yourcompany.com (Resulting email: sales@yourcompany.com)
- Model: Lead/Opportunity (crm.lead)
- Record Thread ID: Leave empty (for new leads)
- Contact Security: Everyone (creates leads from any sender)
- Alias Defaults: Optional values (team, salesperson)
3.3 Configure Incoming Mail Server
- In Odoo, go to Settings - Technical - Email - Incoming Mail Servers and click New.
- Enter your mailbox details: server type (IMAP), server address (changes per provider), port 993 for SSL, username, and app password for your sales inbox.
| Gmail / Google Workspace | |
|---|---|
| Server Type | IMAP |
| Server Address | imap.gmail.com |
| Port | 993 |
| SSL/TLS | Yes |
| Username | Full email address |
| Password | App Password |
App Password: 2-Step Verification must be enabled. Go to Google App Passwords, select Mail, and generate a 16-character key.
| Yahoo Mail | |
|---|---|
| Server Type | IMAP |
| Server Address | imap.mail.yahoo.com |
| Port | 993 |
| SSL/TLS | Yes |
| Username | Full email address |
| Password | App Password |
App Password: Go to Yahoo Security, scroll to App passwords and generate a 16-character key for Odoo Mail.
- In the Actions section, set Create a new record with Model = CRM Lead.
- Click Test Connection, then Save.
Step 4 - Add a Custom Classification Prompt (Optional)
- In Odoo, go to Settings - Companies, select your company, and click Edit.
- Find the AI Classification Prompt field and enter your custom instructions in plain English.
- The prompt must instruct the AI to return one word: lead, partnership, or spam.
- Leave this field blank to use the built-in default prompt (recommended).
- Click Save. Your prompt takes effect immediately.
Step 5 - Enable and Run the Scheduled Action
After completing the configuration, ensure that the scheduled action responsible for processing incoming emails is active.
- Navigate to Settings > Technical > Scheduled Actions.
- Search for "CRM: Lead Assignment".
- Ensure the scheduled action is Active.
- Set the Execute Every interval (e.g., every 5 minutes).
- To test immediately, click Run Manually to trigger the process.
Step 6 - Configure Cron Job for Mail Fetch Service
-
Enable Developer Mode
- Go to Settings
- Scroll to the bottom and click Activate Developer Mode
-
Open Scheduled Actions
- Navigate to:
Settings â Technical â Automation â Scheduled Actions
- Navigate to:
-
Locate Fetchmail Cron Job
- In the list of scheduled actions, search for:
Mail: Fetchmail Service
- In the list of scheduled actions, search for:
-
Open the Scheduled Action
- Click on Mail: Fetchmail Service to open the configuration
-
Configure the Execution Interval
- Active: Enabled
- Execute Every: Set the interval (e.g., 5 Minutes / 10 Minutes)
- Next Execution Date: Adjust if required
-
Save the Configuration
- Click Save after updating the interval
-
Test the Cron Job (Optional)
- Click Run Manually to immediately trigger the job and verify that emails are fetched correctly
Step 7 - Test the Plugin
- Send a sample sales enquiry to your configured inbox. For example: Hi, I am interested in your product and would like to know the pricing. Please get in touch. - John Smith, Acme Corp.
- Wait up to 5 minutes for Odoo to fetch the email on its next polling cycle.
- Go to CRM - Leads and verify that a new lead has been created with all available contact fields populated.
AI Token Usage
Each incoming email triggers two AI calls: one for Classification and one for Data Extraction. On average, an email consumes 2,500 - 3,000 tokens. Actual costs vary based on email length, model complexity, and provider rates.
AI Cost Guide (Estimated)
Your only ongoing cost is what you pay directly to your AI provider. GPT-4o Mini via OpenRouter costs approximately $0.15 per million tokens.
| Emails Processed Per Month | Estimated Monthly Cost (GPT-4o Mini) |
|---|---|
| Up to 500 emails | Under $0.30 |
| 500 to 5,000 emails | $0.30 to $3.00 |
| 5,000 to 20,000 emails | $3.00 to $12.00 |
*Costs are paid directly to your provider; our plugin has zero hidden fees.
Frequently Asked Questions
Q: Do I need to sign up for a service from you?
A: No. You create your own account with OpenRouter, OpenAI, or Google and use your own API key. We
do
not charge any monthly fee or per-email fee for the plugin itself.
Q: Will my emails be stored by the AI provider?
A: Email content is sent to your chosen AI provider for processing. Each provider has its own data
retention policy. OpenRouter and OpenAI offer data processing agreements for business customers.
Google Gemini does not train on API data by default. We recommend reviewing your chosen provider's
privacy policy before deploying in a regulated industry.
Q: Can I use this without being technical?
A: Installation requires access to your Odoo server and the ability to install a module. Once
installed, the day-to-day usage - including writing your custom classification prompt - requires no
technical knowledge at all.
Q: What happens if the AI makes a mistake?
A: The AI is accurate for the vast majority of emails but it is not perfect. You can always edit any
field on a lead record manually. The original email is always preserved in the lead's message thread
so nothing is ever lost.
Q: Can I switch AI providers later?
A: Yes. You can switch between OpenRouter, OpenAI, and Google Gemini at any time by updating two
settings in Odoo's System Parameters. No reinstallation is required.
Q: What if an email has no contact information?
A: The AI only extracts information that is explicitly present in the email. If the email contains
no name, phone number, or address, those fields are simply left blank. The classification still runs
normally.
Q: Does this work with Odoo Community and Enterprise?
A: Yes. The plugin works with both Odoo Community Edition and Odoo Enterprise Edition, versions 16,
17, 18 and 19.
Q: What AI model should I use?
A: For most businesses, GPT-4o Mini via OpenRouter is the best choice. It is fast, highly accurate
for email classification and extraction tasks, and costs less than $0.001 per email. If you want
zero upfront cost, start with Google Gemini's free tier using Gemini 1.5 Flash.
Support
If you run into any issues during installation or setup, the following checks will resolve most problems:
- Verify that your API key is correct and has available credits at your provider's dashboard.
- Ensure your Odoo server can make outbound HTTPS connections to the AI provider's API on port 443.
- Confirm that your incoming mail server is connected in Odoo and the destination model is set to CRM Lead.
- Check that the CRM and Mail modules are both installed and active.
For purchase support, installation assistance, or customisation enquiries, please contact us through the channel where you purchased this plugin.
Connect With Us
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module