Textile manufacturing looks simple from the outside; yarn goes in, fabric comes out. But anyone working inside a textile mill knows that the reality is very different. Warping, sizing and weaving each involve different machines, measurements, material consumption, production losses and quality checks. The input and output also don't always follow a straightforward quantity-to-quantity relationship. Yarn may be consumed in kilograms, while production is calculated using ends and length, and the final grey fabric is measured in metres.
This is where the real question begins for textile manufacturers evaluating a textile ERP: Can Odoo adapt to the way a textile mill actually operates?
The answer is yes, but not entirely out of the box. Odoo provides a strong foundation through Manufacturing, Inventory, Purchase and Quality. However, textile-specific requirements such as ends-wise calculations, wastage, unit conversions, consumption logic and machine-level production tracking may require Odoo customization. (If you're still comparing platforms, we've covered why Odoo is a strong ERP for the textile industry separately.)
In this article, we will look at the complete journey from yarn to grey fabric, stage by stage: what Odoo can manage with standard functionality, where customisation may be required, and how these challenges were addressed in the Rajeshwari Weavetex Odoo implementation.

Stage 1: Yarn Purchase & Incoming Quality Inspection
The process begins with yarn procurement, but for a textile mill, receiving yarn is more than simply adding quantity to inventory. The mill needs to know what was received, from whom, which lot it belongs to, and whether it is suitable for production.
Depending on the mill's requirements, yarn can be tracked by: yarn type and count, supplier, lot/batch number, quantity received, receipt date, storage location, quality status, and relevant quality parameters.
Odoo Purchase and Inventory can manage the purchase order, receipt, lot/batch tracking and subsequent stock movements. The Quality application can be used to define incoming inspection checks and record the inspection outcome before the yarn is released for production.
This creates the first traceability link in the manufacturing process: Supplier → Yarn Lot → Incoming Quality Check → Inventory → Production
For example, if a quality issue is later identified in a grey fabric roll, the business can trace the production history back to the yarn lot used, providing a clear starting point for investigation. This foundation becomes especially important as the material moves through warping, sizing and weaving, where traceability becomes increasingly difficult if each stage is maintained separately.
Stage 2: Warping, Where Yarn Becomes "Ends"
What happens: Yarn from cones is wound in parallel onto a warping beam, creating the long, uniform set of threads called "ends", which form the warp for weaving.
What Odoo tracks natively: Odoo Manufacturing (Odoo MRP) can manage the warping Work Order and BOM, including ends count and warping length. Inventory tracks yarn consumption and the resulting warped-beam stock.
Where customisation is required: Warping is an area where standard Odoo has limitations. The BOM needs to be calculated ends-wise against the target warping length, while Odoo does not provide native wastage calculation at the BOM level. Thread breaks, trimming and process loss therefore require custom logic to ensure accurate yarn consumption.
The bigger challenge is consumption logic and production routing. The customised route needs to automatically move yarn from stores to the production location when a warping Work Order is raised and trigger replenishment when available stock is insufficient. These textile-specific calculations require customisation.

Stage 3: Sizing, Strengthening the Warp
What happens: Warped yarn is coated with a sizing chemical, typically a starch or adhesive blend, to bind fibres, reduce hairiness and minimise thread breakage during weaving.
What Odoo tracks natively: Sizing can use the same BOM structure as warping (ends-wise and length-based) with additional tracking of chemical consumption per batch along with yarn input.
Where customisation is required: The same wastage-at-BOM-level limitation applies to sizing. Additional customisation is required to accurately track chemical consumption ratios and sizing cost per beam. Since sizing reuses the customised BOM, consumption and routing logic developed for warping, it generally requires an extension of the existing solution rather than a separate build.

Stage 4: Weaving, Where Yarn Becomes Fabric
What happens: Sized yarn is combined with weft yarn on the loom to produce grey fabric, typically measured in metres.
What Odoo tracks natively: Odoo can manage Work Orders per loom or loom-set, and basic shift-wise production output.
Where customisation is required: The key requirement is loom-level efficiency and downtime tracking. Standard Odoo records Work Order completion but does not capture detailed machine performance. For real-time efficiency, mills may require an IoT/sensor feed or barcode-based shift-reporting layer integrated with Odoo, along with warp and weft yarn consumption tracked against the BOM. This is usually the point where generic weaving mill software falls short and a connected textile ERP starts to pay off.

Stage 5: Grey Fabric Roll Creation
What happens: Once weaving is completed, the output becomes grey fabric. Instead of being managed as one bulk quantity, the fabric is typically produced, inspected and stored as individual rolls, for example GF-001 (102 metres), GF-002 (97 metres), GF-003 (105 metres). Each roll may carry information such as roll number, fabric type, production order, length, weight, production date, lot/batch, storage location and inspection status.
What Odoo tracks natively: Odoo manages manufacturing outputs, inventory quantities, lot/batch tracking and stock movements, providing the foundation for tracking grey fabric production.
Where customisation is required: The key requirement is roll-level tracking, where each fabric roll is maintained as a traceable production output with attributes such as length, weight, quality status and a direct link to the production order and consumed yarn lot.
Stage 6: Grey Fabric Inspection
What happens: After weaving, grey fabric undergoes quality inspection before being released for further processing, transfer or dispatch. Inspection parameters may vary based on fabric type, construction and customer requirements, including width, length, GSM, weight, appearance and weaving defects. For example, Roll GF-00125 may be inspected for length, width, GSM, appearance, stains and weaving defects.
What Odoo tracks natively: Odoo Quality manages quality checks, inspection points, measurements, pass/fail results and quality alerts as part of the production and inventory process.
Where customisation is required: The key requirement is to link inspection results directly to the individual fabric roll, with configurable inspection parameters, tolerances and customer-specific acceptance criteria.
Stage 7: Defect Recording & Fabric Disposition
What happens: Based on inspection results, each fabric roll is classified as Accepted, Rejected or Hold. A held roll may require further review for rework, downgrade, acceptance with deviation or rejection.
What Odoo tracks natively: Odoo can manage quality results, quality alerts and inventory movements/statuses associated with the inspection process.
Where customisation is required: The mill may require a specific roll-wise disposition workflow, including automatic movement to Hold/Rejected locations, downgrade handling and reclassification based on defect severity. This ensures that fabric which has not passed inspection is not incorrectly treated as available or saleable stock.
Stage 8: Grey Fabric Traceability Back to Yarn
What happens: If a quality issue is identified in a specific fabric roll, the mill needs to trace the complete production history: Customer / Dispatch → Fabric Roll → Inspection → Production Order → Weaving → Warping / Sizing → Yarn Lot → Supplier
The reverse trace is equally important: if a yarn lot is found to have a quality issue, the mill should be able to identify all production orders and fabric rolls where that yarn was consumed.
What Odoo tracks natively: Odoo provides lot/batch traceability across Purchase, Inventory and Manufacturing, creating the foundation for tracking material consumption and production outputs.
Where customisation is required: The key requirement is end-to-end roll-level traceability, linking each grey fabric roll to its production order and consumed yarn lots, with the ability to perform both backward and forward traceability.

Stage 9: Fabric Costing, From Process Data to Real Cost
What happens: Once yarn is consumed, chemicals used, wastage recorded and fabric produced, the mill needs one final number: what did this fabric actually cost to make? Today, most mills answer this with a spreadsheet: a hardcoded formula built by one person, updated manually every time a yarn rate or chemical price changes, and rarely audited. It works, until it doesn't. A stale rate, a missed wastage update, or a formula that doesn't account for a knotting loss can quietly misprice a quote.
What Odoo tracks natively: Odoo Manufacturing has a standard costing layer. It can compute cost from BOM components (material cost) plus operation cost (labour/machine time), using standard, average or FIFO costing methods. For a mill making one product from fixed-quantity inputs, this is enough.
Where customisation is required: Textile costing isn't a fixed-quantity BOM problem. It's a unit-conversion and multi-variable rollup problem. A real fabric cost needs to combine:
- Warp and weft yarn cost, converted from kilograms to ends/length/metre using the mill's own count-and-construction formulas
- Sizing chemical cost, apportioned per batch or per beam
- Wastage, applied separately at warping, sizing and weaving, not as one blanket percentage, since loss rates differ by stage
- Crimping and knotting, which increase actual yarn consumed beyond the theoretical length
- Process/operation cost (loom running cost, labour and power) apportioned per metre or per roll rather than per Work Order
None of this exists as a configurable formula in standard Odoo. It has to be built as a costing engine that sits on top of Manufacturing, pulls live rates and process data from each stage, and outputs a cost price per metre or per roll. Because Stage 5 already tracks fabric at roll level, this costing engine can attach a cost to each individual roll rather than only to a production batch.
One thing worth deciding early: do you need this as a live cost (recalculated automatically whenever rates change) or as a quoting simulator (a what-if before confirming a sale, using rates that haven't hit inventory yet)? These are different engineering problems. One is a recalculation trigger; the other is a separate model referencing live rates without writing them to production data.
Optional Stage: Finishing & Packing
(For mills that finish fabric in-house rather than dispatch as grey fabric)
What happens: Fabric undergoes calendering, compacting, and final chemical or mechanical finishing, followed by inspection, grading and packing for dispatch.
What Odoo tracks natively: Odoo manages Work Orders, finished-goods inventory by lot, grading and packing-list generation.
Where customisation is required: The key requirement is roll-level traceability back to the original yarn lot, especially for export mills requiring complete batch traceability for buyer audits.
What Odoo Manufacturing Handles vs. Where Odoo Customization Is Needed
| Textile Requirement | Odoo Foundation | Configuration / Customization |
| Yarn purchase | Purchase | Yarn specification and parameters |
| Yarn lot/batch tracking | Inventory | Yarn properties carry forward to lot |
| Incoming quality inspection | Quality | Configuration and design of QC worksheet |
| Warping production | Manufacturing | Consumption calculation based on EPI, RS, ends and more; creel and cone setups |
| Ends-wise calculation | BOM / Manufacturing | Customization may be required |
| Wastage calculation | BOM / Manufacturing | May require custom logic |
| Sizing production | Manufacturing | Chemical consumption calculator and pickup % |
| Chemical consumption | BOM / Inventory | Specific consumption logic and operation |
| Weaving work orders | Manufacturing | Loom and shopfloor setup |
| Loom-wise production | Work Centers / Manufacturing | May require enhancement |
| Machine efficiency & downtime | Manufacturing foundation | Custom reporting / IoT may be required |
| Grey fabric roll tracking | Inventory / Lots | Roll-specific workflow may require customization |
| Fabric inspection | Quality | Textile-specific parameters require configuration |
| Defect classification | Quality | Manage defect reasons and rework |
| Accepted / Rejected / Hold | Quality + Inventory | Workflow may require customization |
| Yarn-to-fabric traceability | Lots + Manufacturing | Depends on required traceability level |
The important point is that a successful textile ERP implementation should not try to force every requirement into standard functionality. The same pattern shows up outside textiles too: we saw it in batch- and formula-driven plants, which we covered in our guide to Odoo ERP for cosmetics manufacturers.

Rajeshwari Weavetex: From Manual Records to Real-Time Visibility
Before Odoo, Rajeshwari Weavetex managed production, purchasing and sales through pen-and-paper records and Excel. As operations grew, this created challenges in managing Purchase Orders, sales, production planning and real-time stock visibility. (We've written more about how weaving mills gain control and visibility with ERP for textile manufacturing.)
Rajeshwari purchases ready-made yarn and follows the process: Yarn Purchase → Incoming Quality Check → Warping → Sizing → Weaving → Inspection → Dispatch
One of the key technical challenges in this Odoo ERP implementation was unit conversion on production-wise items, particularly in warping. The warping BOM required ends-wise calculation against warping length, along with wastage. Since Odoo's standard BOM does not support wastage at this level, customisation was developed.
The solution also included custom consumption logic and production routing that automatically creates an inventory transfer to the production location when a warping order is raised. If available stock is insufficient, the system can automatically generate an RFQ for replenishment.
The same customised ends-wise BOM structure was extended to sizing to track chemical consumption per batch.
The result is a connected system with real-time dashboards and visibility across production, purchasing and inventory, replacing manual follow-ups and spreadsheet-based reporting with system-driven information.



