Skip to Content

Modernizing Pharmaceutical Sales Operation with Odoo 18 Enterprise

How a pharmaceutical company migrated 10 years of legacy CRM and sales data, automated complex sales workflows, and built a connected commercial operation on Odoo 18 Enterprise.

Project Snapshot

IndustryPharmaceutical & Life Sciences
ERPOdoo 18 Enterprise
Legacy ERPE-Magic
Legacy Data10+ years
Product Catalogue140,000+ SKUs
Sales Team40–50 salespeople
Overall Workforce350+ employees
OperationsDomestic + International
R&D Centres2
International Offices4
Current PhaseCRM, Sales, Data Migration & Reporting
Implementation ApproachPhased ERP Transformation


The Challenge

For a pharmaceutical company working across pharmaceutical reference standards, impurity standards, certified reference materials (CRMs), custom synthesis, analytical research, regulatory services and contract manufacturing, sales operations involve significantly more complexity than a conventional product-selling business.

The company manages a portfolio of more than 140,000 products, serves both domestic and international customers, and operates with a sales team of approximately 40–50 people.

For around a decade, the company had been using E-Magic as its legacy ERP.

Over those 10 years, the system accumulated more than 65 GB of data. As the volume of information grew, system performance became increasingly difficult to manage.

Routine operations that previously took around 15 seconds could take significantly longer depending on the amount of information involved, with some reports and data retrieval activities taking up to two minutes.

For a business where salespeople frequently need to search historical transactions, prepare quotations and respond to customer enquiries, waiting for information directly affects day-to-day productivity.

At the same time, the sales process itself had become highly specialized.

The company needed to manage:

  • Enquiries arriving through multiple channels
  • Product-specific salesperson expertise
  • Region-based assignment
  • Customer-specific pricing history
  • Complex pharmaceutical product nomenclature
  • Customer segmentation
  • Pricing approvals
  • Sales support workflows
  • Visibility from enquiry through final order

Simply moving the existing process into a new ERP would not address these requirements.

The objective was to rebuild the commercial workflow around the company's actual business rules while migrating the relevant legacy data into Odoo.


A Phased Approach to ERP Transformation

Rather than attempting to replace the entire legacy system in one step, the implementation is being carried out through a phased transformation.

The first phase focused on the commercial side of the business:

Phase 1 — CRM & Sales

Completed

  • CRM
  • Omnichannel enquiry management
  • Automated lead assignment
  • Sales workflows
  • Customer tiering
  • Historical pricing
  • Quotation management
  • Sales approvals
  • Sales support workflows
  • CRM and sales transactional data migration
  • Custom cross-functional reporting

Subsequent phases are being planned/implemented separately.

This case study focuses specifically on the completed CRM, Sales, Data Migration and Reporting scope.

1. Automating Pharmaceutical Enquiry Assignment


The Business Challenge

The company has approximately 40–50 salespeople, but not every salesperson handles every product.

Salespeople have different areas of product expertise, and enquiry allocation needs to take into account factors such as:

  • Product
  • Region
  • Salesperson specialization
  • Other business rules

At the same time, customer enquiries arrive through multiple email channels.

This creates a problem that is common in specialized B2B sales environments:

The first challenge isn't simply receiving the enquiry. It is getting the enquiry to the right person quickly.

Manual allocation creates unnecessary dependency on internal coordination and increases the risk of delays or incorrect assignment.

The Odoo Solution

We configured Odoo CRM to consolidate enquiries from multiple email channels into a centralized CRM workflow.

Custom assignment logic evaluates the incoming enquiry and automatically routes it according to the company's defined business rules, including product and regional requirements.

The result is a structured flow:

This allows the sales team to spend less time managing enquiry allocation and more time responding to customers.

Business Impact
  • Faster enquiry assignment
  • Reduced manual coordination
  • Clearer ownership of opportunities
  • Better alignment between products and salesperson expertise

2. Bringing Historical Pricing into the Quotation Process


The Business Challenge

For this business, preparing a quotation is not simply a matter of selecting a product and applying a standard price.

Salespeople often need to understand the customer's previous commercial relationship with the company.

Before determining a new price, they may need to consider:

  • Previous prices offered to the customer
  • Historical transactions
  • Product-specific pricing history
  • Customer buying patterns
  • Existing commercial terms

This information is particularly valuable when dealing with a large product portfolio and established customer relationships.

The Odoo Solution

We developed a customized quotation workflow that allows salespeople to access relevant historical transaction information while preparing a quotation.

Instead of leaving historical information buried inside previous transactions, the system brings the relevant context into the current quotation process.

The workflow also supports the required pricing approval process.

This allows the salesperson to make a more informed pricing decision without leaving the sales workflow.

Business Impact
  • Faster quotation preparation
  • Less manual searching through historical transactions
  • Better visibility into customer-specific pricing
  • More consistent pricing decisions
  • Structured pricing approvals

3. Customer Tiering for Smarter Sales Decisions


The Business Challenge

The company categorizes customers based on the annual value of their business.

Different customer segments therefore require different commercial treatment.

For example, the salesperson may need to consider the customer's tier when determining:

  • Pricing
  • Discounts
  • Sales priority
  • Delivery priority
  • Customer management approach

Previously, such information can easily remain dependent on individual salesperson knowledge.

The Odoo Solution

We incorporated customer tiering into the Odoo sales process.

Customers are classified into defined tiers based on their business value, allowing the sales workflow to use this information as part of commercial decision-making.

This turns customer segmentation from simply a classification exercise into an operational component of the sales process.

4. Managing a Complex Pharmaceutical Product Catalogue


The Business Challenge

The company manages more than 140,000 SKUs.

In a pharmaceutical environment, a product master is significantly more complex than a conventional catalogue.

Products need to be identified and managed using a structured nomenclature, while the product record may also contain information relating to:

  • Product classification
  • Chemical information
  • MSDS documentation
  • Hazardous-product information
  • Storage requirements
  • Shipping requirements
  • Pharmaceutical-specific attributes
  • Analytical information

The company also follows a structured product-code nomenclature.

An example of an existing product code is:

SD SUI 056560

The underlying logic involves multiple levels of product identification and classification.

The Odoo Solution

We developed a customized product-code generation mechanism based on the company's existing nomenclature rules.

Rather than depending on users to manually construct product codes, the system generates the appropriate code based on the configured business logic.

This provides a consistent approach to product identification while supporting the company's large and complex product catalogue.

Business Impact
  • More consistent product identification
  • Reduced manual code creation
  • Better product master governance
  • Scalable management of a 140,000+ SKU catalogue

5. Moving from Order Confirmation to the Right Fulfilment Decision


The Business Challenge

For this pharmaceutical business, confirming a sales order is only the beginning of the fulfilment process.

Once an order is confirmed, the business needs to determine how the product should be supplied.

If the required product is already available in stock, it can be fulfilled directly.

If it is not available, the business needs to determine whether it should:

  • Manufacture the product internally, or
  • Procure it from an external vendor.

This decision is influenced by multiple factors, particularly lead time and price competitiveness.

The team needs to compare how quickly the internal manufacturing team can produce the product against how quickly an external vendor can supply it, while also considering the commercial implications.

Previously, this decision involved coordination across different teams and access to information from different parts of the business.

The Odoo Solution

We developed a fulfilment decision workflow within Odoo to help the business evaluate the available options after a sales order is confirmed.

The workflow considers the relevant fulfilment conditions:

​

This allows the business to make the fulfilment decision using structured information rather than relying entirely on manual coordination.

The workflow also provides a connection between the Sales process and the downstream operational activities required to fulfil the order.

Business Impact
  • Faster fulfilment decisions
  • Better visibility of available fulfilment options
  • More informed make-vs-buy decisions
  • Better coordination between Sales, Manufacturing and Procurement
  • Improved production planning
  • Reduced dependence on manual follow-up

6. Creating a Sales-to-Support Workflow


The Business Challenge

Salespeople are supported by internal team members who help them with different operational and data-related activities.

A salesperson may therefore need to assign specific tasks to members of the support team while retaining ownership of the customer opportunity.

Without a structured workflow, this can result in communication gaps and unclear responsibility.

The Odoo Solution

We configured the CRM workflow so that:

Lead / Opportunity

↓

Salesperson

↓

Support Task Assignment

↓

Support Team Execution

↓

Salesperson Follow-up

This allows the salesperson to remain responsible for the opportunity while distributing operational tasks to the appropriate support team members.

7. Migrating 10 Years of CRM & Sales History


The Business Challenge

Replacing a legacy ERP creates a fundamental question:

How do you move years of commercial history into a new system without losing the information salespeople and management depend on?

The company had used E-Magic for approximately 10 years, with more than 65 GB of accumulated data.

The objective wasn't simply to start with a clean Odoo database.

Relevant historical CRM and sales transactional information needed to remain available after the transition.

The Migration Approach

The CRM and Sales phase included migration of the relevant historical transactional data from the legacy environment into Odoo.

The migration was designed around the new Odoo data structure and the requirements of the sales workflow.

This allowed the company to transition to Odoo without completely losing the historical context required for ongoing customer and commercial operations.

Business Impact

Sales teams can continue to access historical information within the new ERP environment rather than depending on the legacy system for previous transactions.

8. Connecting CRM and Sales Through Custom Reporting


The Business Challenge

Standard ERP reports are generally organized around individual modules.

But management often needs to answer questions that cross module boundaries:

  • Where did this opportunity originate?
  • What was initially quoted?
  • What was finally sold?
  • How long did the sales process take?
  • How did the opportunity move from CRM into Sales?

Looking at CRM and Sales independently doesn't provide the complete picture.

The Odoo Solution

We developed custom reporting that connects the commercial journey across CRM and Sales.

The reporting provides visibility across the workflow:

The reports can bring together information such as:

  • CRM information
  • Quotation value
  • Final sales order value
  • Process timelines
  • Relevant sales information

This gives management a connected view of the sales lifecycle rather than isolated module-level reporting.

Business Impact
  • Better order visibility
  • Easier management analysis
  • Improved traceability across CRM and Sales
  • Greater visibility into the movement from opportunity to revenue

Business Impact

The first phase of the transformation delivered improvements across the company's commercial operation.

Faster system response

Routine record creation and day-to-day operations now provide near-instant responses. Typical report generation and data retrieval takes approximately 4–5 seconds, compared with the previous 15 seconds to 2 minutes, depending on the operation.

Faster enquiry assignment

Automated routing helps direct enquiries to the appropriate salesperson based on product, region and other business rules.

Faster quotation preparation

Salespeople can access relevant historical pricing information within the quotation workflow.

Less manual data handling

Automated assignment, product-code generation and connected workflows reduce repetitive manual activities.

Better order visibility

Custom reporting connects CRM and Sales information, allowing management to trace the commercial journey from opportunity to sales order.

Better product master governance

The customized product nomenclature supports consistent identification across a catalogue of more than 140,000 SKUs.

A foundation for the wider ERP transformation

The completed CRM and Sales phase establishes the commercial foundation for subsequent phases of the company's Odoo transformation.


The Result

The first phase moved the company's core commercial operations from a decade-old legacy environment into Odoo 18 Enterprise, while preserving relevant historical CRM and sales information.

But the transformation was not simply about moving data from E-Magic into a new database.

The implementation translated the company's actual sales processes into system-driven workflows:

For a pharmaceutical business managing 140,000+ products, specialized sales teams and complex customer relationships, this created a more structured and responsive foundation for the company's ongoing ERP transformation.

And because the implementation is being delivered in phases, the CRM and Sales foundation can now serve as the starting point for the subsequent expansion of Odoo across the company's wider operations.

Building a Connected Customer Loyalty Ecosystem on Odoo