Skip to content
Back to case studies
Manufacturing PrecisionParts Manufacturing · July 20, 2024

Digital Transformation of a Manufacturing Company

How PrecisionParts Manufacturing reduced lead times by 40% with a custom Odoo ERP implementation.

40%
Production lead time reduction
72% → 95%
Inventory accuracy improvement
10 hours
Purchasing hours saved per week
85% → 97%
On-time delivery rate
Manufacturing facility

Problem

PrecisionParts Manufacturing is a 120-person company that produces custom metal parts for the aerospace and automotive industries. They were managing their entire production process with Excel spreadsheets and a legacy system that hadn’t been updated in 8 years.

The consequences were severe:

  • Inventory accuracy was at 72%, leading to stockouts and emergency purchases
  • Production lead times were unpredictable, causing missed delivery deadlines
  • No real-time visibility into production status or machine utilization
  • Manual purchasing consumed 10+ hours per week of the operations manager’s time
  • Quality control was paper-based, making traceability nearly impossible

The company knew they needed an ERP, but previous attempts to implement off-the-shelf solutions had failed because none of them matched their unique multi-stage manufacturing process.

Solution

I implemented Odoo 17 with three custom modules designed specifically for their manufacturing workflow.

Custom Manufacturing Module

The standard Odoo manufacturing module didn’t support their multi-stage quality control process. I built a custom module that:

  • Defines manufacturing orders with custom routing through 5 production stages
  • Requires quality control sign-off at each stage before the order can proceed
  • Tracks machine time and operator time at each stage
  • Generates a complete production history for each part, including who worked on it and when

Automated Procurement Module

The company’s purchasing process was entirely manual — the operations manager would check inventory levels every week and place orders. I built a custom module that:

  • Monitors real-time inventory levels across two warehouses
  • Triggers purchase orders automatically when stock falls below reorder points
  • Calculates reorder points dynamically based on lead times and seasonal demand patterns
  • Routes purchase orders for approval based on amount thresholds
  • Integrates with their top 15 suppliers via email automation

Production Dashboard

I built a real-time dashboard that shows:

  • Current status of all active manufacturing orders
  • Machine utilization rates across the factory floor
  • Bottleneck alerts when orders are stuck at a stage too long
  • Daily and weekly production targets vs. actuals

Architecture

Odoo 17 (Docker) → Custom Modules

  PostgreSQL ← Inventory & Production Data

  Production Dashboard (Real-time)

  Automated Procurement → Supplier Emails

  Quality Control → Digital Sign-off

The entire system runs on a single server with Docker containers, backed up nightly to offsite storage. Grafana provides additional monitoring of system health.

Technologies

  • Odoo 17: Core ERP platform
  • Python: Custom module development
  • PostgreSQL: Database
  • Docker: Containerization for easy deployment and scaling
  • Nginx: Reverse proxy and SSL termination
  • Grafana: System monitoring and alerting

Results

After 6 months of implementation and optimization:

  • 40% reduction in production lead times
  • 95% inventory accuracy (up from 72%)
  • 10 hours per week saved on purchasing
  • On-time delivery rate improved from 85% to 97%
  • Full traceability of every part through the production process

Lessons Learned

  1. Customization should be a last resort, not a first resort: We started with standard Odoo modules and only customized where the business process truly required it. This kept the implementation maintainable and upgrade-safe.
  2. Data migration is the hardest part: Cleaning 8 years of legacy data took longer than building the custom modules. We should have allocated more time for this.
  3. Train early and often: We started training the production team 2 weeks before go-live. That wasn’t enough. Training should start during the design phase so users feel ownership of the new system.
  4. Phased rollout beats big bang: We rolled out module by module — inventory first, then manufacturing, then procurement. This let users adapt gradually and caught issues early.
  5. Real-time dashboards change behavior: Just having visibility into production status changed how the team worked. Managers started addressing bottlenecks proactively instead of reactively.

Technologies used

Odoo 17 Python PostgreSQL Docker Nginx Grafana

Let's build something great together

Ready to automate your business processes and save hundreds of hours every month? Let's talk about your project.