Why Maintenance Management Matters in Bangladesh
Bangladesh's manufacturing sector runs on machinery that spans multiple decades. A Gazipur garments factory might have Japanese sewing machines from 2010 alongside Chinese cutting machines from 2018 and German finishing equipment from 2005. Each has different maintenance intervals, different spare parts suppliers, and different failure modes. Managing this heterogeneous fleet from a spreadsheet or a maintenance notebook is how companies end up with 4-hour breakdowns on the day before a shipment deadline.
The specific challenges that make maintenance management critical in Bangladesh:
- Power quality: Load shedding, voltage fluctuations, and sudden power cuts cause motor burnouts and electronic component failures at higher rates than in stable-grid environments. Preventive checks on electrical components become essential, not optional.
- Humidity and heat: Bangladesh's tropical climate accelerates corrosion, belt degradation, and lubricant breakdown. Maintenance intervals derived from manufacturer specifications (often written for European or Japanese climates) must be shortened by 15–30% in Dhaka's conditions.
- Spare parts lead times: For specialized machinery, spare parts must often be imported — 2–6 weeks from China, 4–8 weeks from Europe. A planned maintenance approach with parts pre-ordered is the only way to avoid catastrophic delays.
- Skilled technician shortage: Experienced maintenance technicians are scarce and expensive. Tracking their work in Odoo — which machines they maintain, what was done, how long it took — makes their expertise institutional rather than personal.
Every unplanned breakdown is a planned maintenance that did not happen. The economics of prevention versus cure in Bangladesh manufacturing are not even close.
Odoo Maintenance Module Overview
Odoo's Maintenance module (available in both Community and Enterprise, though Enterprise adds additional features) covers:
- Equipment catalog: Register every machine with make, model, serial number, location, work center assignment, and purchase details.
- Maintenance requests: Corrective requests (breakdown reports) and preventive requests (auto-generated on schedule).
- Maintenance teams: Assign technicians to teams; route requests to the appropriate team by equipment category or location.
- Work orders: Convert maintenance requests to work orders with time tracking, parts used, and completion sign-off.
- Preventive maintenance schedules: Time-based (every 30 days) or meter-based (every 500 machine-hours) automatic request generation.
- Reporting: MTBF (Mean Time Between Failures), MTTR (Mean Time To Repair), maintenance cost per machine, and maintenance schedule compliance.
Navigate to the Maintenance module from your Odoo main menu. If it is not visible, install it from Settings → Apps → search "Maintenance."
Step 1: Equipment Catalog Setup
Equipment → Create
Go to Maintenance → Equipments → New. For each machine, fill in:
- Name: Use a consistent naming convention — "Sewing Machine · Brother S-7200C · Line 3 · Pos 12". Vague names like "Machine 1" make it impossible to identify equipment on a maintenance request.
- Equipment Categories: Create categories that match your maintenance team structure. For a garments factory: Sewing Machines, Cutting Machines, Finishing Equipment, Generators, Air Compressors, HVAC. Categories allow reporting by equipment type and routing to the correct team.
- Maintenance Team: Assign the team responsible for this equipment. This auto-routes corrective requests to the correct team without a dispatcher step.
- Technician: Optionally assign a primary technician responsible for this machine. Useful for specialized equipment that only certain technicians handle.
- Work Center: Link to the corresponding Manufacturing work center — this connects maintenance downtime to production impact. When a machine is down, the associated work center shows as unavailable in manufacturing planning.
- Technical Details tab: Model number, serial number, manufacturer, vendor, warranty expiry date. These are critical for spare parts sourcing and warranty claims.
- Maintenance tab: Maintenance duration (expected hours for a standard maintenance activity), maintenance frequency (how often preventive maintenance is scheduled).
Establish and document a naming convention before data entry begins. Once equipment is named and attached to maintenance requests, renaming is cumbersome. Recommended Bangladesh factory format: "[Category Short Code] · [Make] · [Model] · [Location/Line] · [Position/ID]" — for example: "SEW · Brother · S-7200C · L3 · P12"
Step 2: Maintenance Teams & Technicians
Configuration → Maintenance Teams
Go to Maintenance → Configuration → Maintenance Teams → New. Create teams that match your maintenance organization:
- Mechanical Team: Handles sewing machines, mechanical systems, belts, bearings, gearboxes
- Electrical Team: Handles motors, control panels, lighting, power distribution
- Infrastructure Team: Handles generators, HVAC, compressors, building systems
- External Vendor: A team for maintenance activities handled by outside specialists — boiler maintenance, elevator servicing, fire suppression
Each team has a Team Leader and Team Members. The team leader receives email notifications for new maintenance requests assigned to their team. Add all maintenance technicians as members of their respective teams — they will see their assigned requests in their Odoo to-do queue.
Working Hours: Configure the team's working hours (6 AM – 6 PM for a standard Bangladesh factory shift, or 8 AM – 8 PM for extended shifts). This affects maintenance scheduling — preventive requests will not be scheduled outside working hours.
Step 3: Corrective Maintenance Requests
Corrective maintenance requests are how operators and supervisors report machine breakdowns. The workflow is simple: machine fails → operator creates a request → team leader sees it → assigns a technician → work is done → request is closed with notes.
Creating a corrective request: Maintenance → Maintenance Requests → New. Select the equipment (this auto-fills the maintenance team), describe the problem in the Request Name and Description fields, set Priority (1–3 stars), and save. The assigned team receives a notification.
Configuring the request stages: The default Kanban stages for maintenance requests are: New → In Progress → Repaired → Scrap. Customize these to match your workflow. A Bangladesh factory with a standard maintenance flow might use: Reported → Assessed → Parts Ordered → In Repair → Completed → Verified by Supervisor.
The biggest failure mode for corrective maintenance management is that operators do not create requests — they call the technician on WhatsApp instead. All informal reporting bypasses Odoo and leaves no record. Solve this by making mobile Odoo request creation part of operator induction training, and by placing QR codes on each machine that link directly to the new maintenance request form pre-filled with that machine's equipment ID. Print and laminate the QR codes.
Step 4: Preventive Maintenance Schedules
Equipment Record → Preventive Maintenance Tab
On each equipment record, go to the Maintenance tab and configure:
- Maintenance Duration: Expected time to complete the preventive maintenance activity (e.g., 2 hours for a standard sewing machine service)
- Maintenance Frequency: How often preventive maintenance should occur — in days (30 for monthly, 90 for quarterly) or in machine hours (if you have an hour meter)
- Next Maintenance Date: When the first preventive maintenance is scheduled. Odoo will auto-generate a maintenance request on this date, and automatically schedule the next one after completion.
When the preventive maintenance date arrives, Odoo automatically creates a maintenance request of type "Preventive" and assigns it to the equipment's maintenance team. The team leader is notified and assigns a technician.
Standard preventive maintenance schedule for a Bangladesh RMG factory:
| Equipment Type | Frequency | Key Activities | Bangladesh Adjustment |
|---|---|---|---|
| Industrial Sewing Machines | Monthly | Oil, tension check, needle bar timing, belt inspection | Shorter interval due to high utilization (2-shift operation) |
| Cutting Machines | Monthly | Blade condition, motor brushes, handle grip, cooling fan | Check cooling fan quarterly in hot months (March–October) |
| Air Compressors | Quarterly (300 hrs) | Air filter, oil level, belt tension, safety valve test | More frequent oil checks — heat accelerates oil degradation |
| Generators | 250 running hours | Oil change, air filter, fuel filter, coolant level, battery | Generators run significantly more in Bangladesh — budget 2× EU maintenance frequency |
| HVAC Units | Quarterly | Filter clean, coil clean, refrigerant check, drain clear | Clean drain lines monthly during monsoon season (June–September) |
| Overhead Cranes / Hoists | Monthly | Load test, wire rope inspection, brake check, limit switches | Safety-critical — log results for DIFE compliance |
Step 5: Spare Parts Inventory Integration
One of Odoo's most valuable maintenance features is the integration between maintenance requests and inventory. When a technician needs a spare part to complete a maintenance work order, they can request it from inventory directly within the maintenance request. This enables spare parts stock tracking, reorder triggers, and cost allocation to specific machines.
Configuration: In each Equipment record, the "Spare Parts" tab allows you to list the standard spare parts for that machine. When a preventive maintenance request is created, these parts can be automatically included as materials to be consumed. For parts that must be pre-ordered (imported components with 4–6 week lead times), Odoo can trigger a purchase order when parts stock falls below reorder minimum.
Spare parts warehouse location: Create a dedicated inventory location for spare parts: Inventory → Configuration → Locations → Create "SPR" (Spare Parts) as a child of your main warehouse. This keeps maintenance materials separate from production materials in stock reporting.
For Bangladesh factories importing spare parts from Germany, Japan, or China, the 4–8 week lead time means the reorder trigger must be set at 6–10 weeks of expected consumption, not 2–4 weeks. In Odoo: set the supplier lead time on the spare part product record to match reality (42–56 days for import parts). The reorder rule will then generate a purchase order in time to avoid stockout. A preventive maintenance request that cannot start because the part is on order defeats the purpose of preventive scheduling.
Step 6: Maintenance Work Orders
In Odoo Enterprise, maintenance requests can be converted to Work Orders with detailed time tracking and multi-technician assignment. Go to a maintenance request → Convert to Work Order → assign start time, duration, and technicians. Technicians log their time directly in the work order, which feeds into maintenance cost calculation.
The work order view shows the technician everything they need: equipment details, maintenance history (previous activities on this machine), parts to use, and checklist items. In Odoo 17 and 18, maintenance work orders can include a configurable checklist — useful for standardizing what "monthly sewing machine service" means across your maintenance team, regardless of which technician is doing it.
Maintenance Cost Tracking
Maintenance cost per machine, per category, and per period is calculated from three sources in Odoo:
- Labor: Technician time on work orders × their hourly cost rate
- Materials: Spare parts consumed from inventory × inventory cost
- External services: Vendor bills linked to the maintenance request
Access the cost report at Maintenance → Reporting → Maintenance Costs. Filter by date range, equipment, or maintenance team. This data is essential for the rebuild vs. replace decision: when a machine's annual maintenance cost exceeds 30–40% of its replacement cost, replacement is typically the better investment.
KPIs & Reporting
Access all these KPIs at Maintenance → Reporting. The MTBF and MTTR statistics are calculated automatically from your maintenance request data. Review these monthly in the factory management meeting — they tell you whether your maintenance program is actually working or just generating paperwork.
Bangladesh-Specific Considerations
Coordination with DIFE and factory safety: The Department of Inspection for Factories and Establishments (DIFE) requires maintenance records for certain equipment categories — pressure vessels, hoists, elevators, fire suppression systems. Odoo maintenance records, when printed or exported, satisfy these documentation requirements. File the annual equipment inspection reports in the maintenance request attachment field for each relevant machine.
Generator maintenance tracking: Bangladesh factories depend on generators far more than facilities in countries with reliable grid power. Generator maintenance must be tracked based on running hours, not calendar days, because running hours vary significantly with the load shedding schedule. If your generator has a digital hour meter, enter the reading manually in Odoo each month and update the preventive schedule accordingly. Enterprise users can automate this via IoT if the generator has a digital interface.
Monsoon season protocol: Create a recurring maintenance request category for "Monsoon Preparation" scheduled each May — checking drainage, anti-rust treatment on exposed metal, HVAC drain lines, roofing integrity, and generator enclosure waterproofing. These activities are not on standard OEM maintenance schedules but are essential in Bangladesh's climate.
For the manufacturing work center configuration that connects maintenance downtime to production planning, see the Odoo Manufacturing Routing guide for Bangladesh. And for the broader manufacturing module setup that provides the foundation for maintenance integration, the Odoo Manufacturing Module Setup guide covers the prerequisite configuration.
If your Bangladesh factory needs help configuring Odoo Maintenance from scratch — equipment catalog, preventive schedules, spare parts inventory, and management KPIs — I offer a focused maintenance module implementation engagement. Contact me to discuss →
Frequently asked questions
What is the difference between corrective and preventive maintenance in Odoo?
Corrective maintenance is reactive — a machine breaks down and someone creates a request to report it. Preventive maintenance is proactive — Odoo automatically generates requests on a calendar or hour-meter schedule before breakdown occurs. Both use the same Maintenance Request and Work Order flow. The module tracks them separately so you can see your corrective-to-preventive ratio — a key indicator of program maturity.
Can Odoo maintenance module integrate with IoT sensors in Bangladesh factories?
Yes, with an Odoo IoT Box (approximately BDT 15,000–25,000 per unit). Vibration sensors, temperature sensors, and cycle counters can trigger maintenance requests automatically when thresholds are exceeded. Most Bangladesh factories should implement conventional preventive scheduling first before adding IoT — the scheduling delivers 60–70% of the reliability benefit at a fraction of the cost.
How do I track maintenance costs in Odoo?
Costs are tracked at the maintenance request level from three sources: technician labor time logged against work orders, spare parts consumed from inventory (deducted automatically when the work order is completed), and vendor bills linked to external service requests. View totals at Maintenance → Reporting → Maintenance Costs. Use this for the rebuild vs. replace decision when annual maintenance costs approach 30–40% of machine replacement cost.
Does Odoo maintenance work for ISO 9001 certified Bangladesh factories?
Yes. Odoo Maintenance generates the documentation required for ISO 9001 Clause 7.1.3: equipment register with complete machine details, maintenance request history per machine with dates and technician records, and preventive maintenance schedule compliance reports. Export the maintenance history PDF before ISO audits. Many Bangladesh factories in RMG, pharma, and food processing use Odoo Maintenance specifically for ISO documentation compliance.