Case study · Pipe manufacturing
Duke Pipes — a pipe-manufacturing ERP on Odoo 18
How TechUltra built a comprehensive Odoo 18 Enterprise ERP for Duke Pipes — a uPVC and HDPE pipe manufacturer in Palanpur, Gujarat — spanning category-driven quality control, capacity-aware manufacturing, dealer ordering with credit control, Indian statutory finance, and shift-aware HR and payroll on a single platform.
- Casing
- Column
- Pressure
- SWR / UDS
- Plumbing (ASTM)
- HDPE / Sprinkler
- Platform
- Odoo 18 Enterprise
- Industry
- Pipe & plastics manufacturing
- Location
- Palanpur, Gujarat, India
- Model
- Make-to-stock manufacturing + dealer & export sales
Last updated
Overview
What TechUltra delivered
A single Odoo 18 system spanning 13 connected functional areas — from the extrusion line through quality, sales, purchasing, inventory, maintenance, and finance to HR and payroll — reshaped around how a pipe factory actually operates rather than a generic ERP.
About Duke Pipes
Duke Pipes Private Limited has manufactured piping since 1998. Its range spans uPVC casing, column, pressure, SWR, and UDS pipes, ASTM plumbing pipe, and HDPE including sprinkler pipe — sold into residential, agricultural, and industrial applications across India and export markets.
Challenges to solve
Six problem areas shaped the build — from inspection formats that change with every pipe standard to Indian statutory finance and dispatch-time credit control.
-
Quality by pipe standard
Casing, pressure, plumbing, SWR/UDS, column, and HDPE pipes are each inspected against different tests and dimensions. A single generic pass/fail check can't model that — the inspection layout has to change with the product.
-
A real multi-shift plant
Rotating shifts, night shifts crossing midnight, biometric capture, overtime, and grace rules all have to feed attendance and payroll accurately — not simple check-in / check-out.
-
Dealer & export selling
Orders come through field sales and dealers, on account, with layered trade discounts — and export orders carry different approval rules from domestic ones.
-
Credit risk at dispatch
With dealer accounts, the moment to stop an over-limit or overdue shipment is at delivery validation, not after the invoice is raised.
-
Indian statutory finance
GST, TDS, MSME reporting, and a profit-and-loss statement the finance team can read in the familiar Tally format are non-negotiable.
-
Governance across documents
Sales, purchase, Bills of Materials, and maintenance all needed consistent, ordered approvals — and stock adjustments needed accountability.
TechUltra's solution approach
A governed Odoo 18 core shaped to pipe manufacturing — one approval engine underneath, and quality, sales, finance, and HR layered on top of it.
- A reusable approval engine as the governance backbone
- Category-driven quality control mapped to each pipe standard
- Capacity-aware, lot-wise manufacturing with traceability
- Dealer ordering plus dispatch-time credit control
- Indian statutory finance — GST, TDS, MSME, Tally-style P&L
- Shift-aware HR, attendance, and payroll
Architecture — layered on Odoo 18
- Governance & approvals One ordered-approval engine across documents
- Quality management Category-driven inspection per pipe standard
- Manufacturing & inventory Lot-wise production, traceability, delivery challans
- Sales, credit & dealer portal Layered discounts, dispatch credit gate, order-on-behalf
- Finance & India localization GST, TDS, MSME, Tally-style P&L
- HR, shift, attendance & payroll Shift master, attendance engine, gradation
- Odoo 18 Enterprise ERP foundation
One approval engine, many documents
Approval framework
One configurable engine, ordered approvers
-
Sales orders
Export + price / discount deviations
-
Purchase orders
Above a threshold amount
-
Bills of Materials
Approved before use
-
Maintenance
Requests + AMC cost overruns
-
Material & gate pass
Movement sign-off
Functional & technical scope
Thirteen connected functional areas run the plant end to end, with Indian statutory behaviour built in.
Capability matrix
| Domain | Capabilities |
|---|---|
| Manufacturing | Capacity checks at confirm, lot-wise production, bulk serials, rework cost, BoM approval |
| Quality | Category-driven QC (18+ formats), NCR / RCA / first-piece, controlled scrap, MOM |
| Sales & pricing | Six-component compound discounts, export & deviation approvals, sale-type numbering |
| Credit control | Per-customer credit master, dispatch-time overdue / over-limit block |
| B2B portal | Order-on-behalf for dealers, line discounts, grouped orders & invoices |
| Purchase & DC | Threshold approvals, vendor discounts into bills, delivery-challan register |
| Inventory | Mandatory adjustment reasons, restricted editor group, low-stock alerts |
| Maintenance & AMC | AMC value tracking, preventive maintenance, cost-overrun handling |
| Finance & India | Audit states, account mapping, asset register, overdue interest, MSME, Tally-style P&L |
| HR & attendance | Shift master, daily attendance engine, biometric / import / portal capture, week-offs |
| Payroll & gradation | Gross-based Indian payroll, monthly performance gradation |
| Reporting & automation | Production / QC / finance report families + seven scheduled jobs |
Technology foundation
- Odoo 18 Enterprise with an extensive custom application library
- A shared approval engine reused across sales, purchase, BoM, and maintenance
- Category-to-format quality routing with a single dynamic report engine
- Attendance captured from biometric devices, Excel import, or a self-service portal
- Indian localization — GST, TDS, MSME reporting, and a Tally-style P&L
- Recurring automation via daily and monthly scheduled jobs
Feature deep-dives
Twelve capability areas, each tied to a business problem and the work TechUltra delivered.
Approval Framework — the backbone
One reusable engine that defines who approves what, and in what order, across the business.
Business problem
- Standard Odoo has only app-specific approvals — no shared, sequential, multi-approver engine spanning documents
- Coding approvals separately per document type is inconsistent and hard to maintain
- Most governance features depend on a single, common approval mechanism
What TechUltra delivered
- A configurable approval engine with an ordered list of approvers per document type and, where relevant, per department
- Each consuming document copies the right approver sequence at request time, driven by to-do activities
- The next approver activates only after the previous one acts; the document's downstream action stays locked until all approve
- A gate-pass system for material, visitor, and vehicle movement reusing the same engine
| Capability | Role | Odoo area |
|---|---|---|
| Ordered multi-approver sign-off | Managers, admins | Cross-app |
| Reused across documents | Sales, purchase, production | Sales · Purchase · MRP |
| Activity-driven to-dos | Every approver | Discuss |
| Gate-pass movement control | Security, stores | Inventory |
Manufacturing Operations
Odoo manufacturing reshaped for pipe production — capacity, lots, serials, and rework.
Business problem
- Standard manufacturing produces a single finished quantity with no work-center capacity gate
- Pipe production needs lot-wise output with lot-origin traceability
- Serialized runs need many serial numbers generated at once
- Rework and its cost must be captured and reflected in product cost
What TechUltra delivered
- Work-center capacity validated at order confirmation
- Production recorded lot by lot, each lot carrying its origin for traceability
- A wizard that generates serial numbers in bulk for serialized orders
- Rework records raised from failed quality checks, with cost feeding the standard-price recompute; Bills of Materials approved before use
| Capability | Role | Odoo area |
|---|---|---|
| Capacity check at confirm | Production planning | Manufacturing |
| Lot-wise production & traceability | Shop floor, QC | Manufacturing · Inventory |
| Bulk serial generation | Production | Manufacturing |
| Rework cost capture | QC, costing | Manufacturing · Accounting |
Quality Management — category-driven
The flagship differentiator: the inspection format follows the product, automatically.
Business problem
- Each pipe standard (HDPE, casing, pressure, plumbing, SWR/UDS, columns) needs a different inspection layout
- Standard Odoo quality is pass/fail against generic quality points — no per-standard inspection templates
- Non-conformance, root-cause, first-piece approval, and rejection need to be managed in the same flow
What TechUltra delivered
- A mapping from each product category to the correct quality format, building the right inspection lines automatically when a check is raised
- Around 18 distinct inspection formats plus incoming raw-material inspection, each with its own test fields
- A single dynamic report engine that prints the standard-specific inspection document for the pipe type
- NCR, RCA, first-piece approval, goods rejection, and minutes-of-meeting documents with sign-off, plus scrap controlled against inspected quantity
| Capability | Role | Odoo area |
|---|---|---|
| Category → inspection format | Quality engineering | Quality |
| Standard-specific QC documents | Inspectors, QA | Quality · Reporting |
| NCR / RCA / rejection / MOM | QA, management | Quality |
| Controlled scrap from QC | QC, stores | Quality · Inventory |
Sales & Pricing
Quotation approval, layered discounts, and delivery numbering by sale type.
Business problem
- A single discount percentage per line doesn't reflect the trade's layered discount structure
- Export orders and price / discount deviations need approval before an order is confirmed
- Delivery documents must be numbered distinctly by selling type
What TechUltra delivered
- A six-component compound discount model (standard, trade, special, TOD, advertisement, promotional) flowing onto the sale line
- Sales approval required for export orders and for any change to a line's unit price or discount, blocking confirmation until approved
- Selling-type-driven delivery numbering with prefixes and financial-year logic
- A margin / value-addition report comparing cost against sale for confirmed orders
| Capability | Role | Odoo area |
|---|---|---|
| Six-tier compound discounts | Sales, pricing | Sales |
| Export & deviation approval | Sales management | Sales · Approvals |
| Sale-type delivery numbering | Dispatch | Inventory |
| Margin / value-addition report | Management | Reporting |
Customer Credit Control
Block deliveries to customers who are over their limit or overdue — at dispatch.
Business problem
- Standard Odoo shows a soft credit warning but doesn't hard-block dispatch on overdue logic
- Dealer accounts need a dedicated per-customer credit master
- The decision point is delivery validation, not invoicing
What TechUltra delivered
- A per-customer credit master with limit, payment term, and validity window, kept in sync with the partner
- A credit check at delivery validation that computes outstanding from unpaid posted invoices and blocks overdue or over-limit shipments
- Indian tax, GST, and TDS fields on the customer, with TDS defaults pre-filling the withholding step
- A daily job that resets expired credit records back to defaults
| Capability | Role | Odoo area |
|---|---|---|
| Per-customer credit master | Finance | Contacts · Accounting |
| Dispatch-time credit block | Dispatch, finance | Inventory · Accounting |
| Overdue & limit computation | Finance | Accounting |
| Nightly credit reset | System | Automation |
B2B Ordering Portal
A dealer-ordering portal where a salesperson orders on behalf of customers.
Business problem
- The standard webshop is self-service consumer checkout — the wrong model for dealer / field sales
- Orders are placed for a customer, not by them, with line-level discounts and instructions
- Online payment does not belong in a B2B account-based flow
What TechUltra delivered
- A portal-salesperson role linking a user to the customers they may order for
- Order-on-behalf: selecting a customer sets the order's partner, addresses, and pricelist
- Cart-level discount and instruction editing, with grouped views of orders and invoices
- Online payment removed from the portal, and salesperson-entered discounts preserved through price recomputation
| Capability | Role | Odoo area |
|---|---|---|
| Order-on-behalf of dealers | Field sales | Website · Sales |
| Line discounts & instructions | Sales | Sales |
| Grouped orders & invoices | Dealers, sales | Portal |
| Backend Sales integration | Sales, finance | Sales |
Purchase & Delivery Challan
Threshold approvals, vendor discounts that reach the bill, and a material-movement register.
Business problem
- Purchase discounts are percentage-only and don't carry to the vendor bill
- High-value purchase orders need approval above a configurable amount
- Returnable and non-returnable material movement needs a register with sign-off
What TechUltra delivered
- Purchase approval required above a configurable minimum amount, blocking confirmation until approved
- Percentage or fixed-amount vendor discounts carried into the vendor bill so costing stays accurate
- A Delivery Challan register — sequence-numbered, returnable / non-returnable, with sender, authoriser, and receiver signatures and a close step
- Cash rounding carried through to the bill
| Capability | Role | Odoo area |
|---|---|---|
| Threshold purchase approval | Purchasing, management | Purchase · Approvals |
| Vendor discounts into bills | Purchasing, finance | Purchase · Accounting |
| Delivery-challan register | Stores, dispatch | Inventory |
| Signature & close controls | Stores | Inventory |
Inventory Governance
Accountability on stock adjustments, plus low-stock alerting.
Business problem
- Standard adjustments let authorised users change counts with no mandatory reason
- There is no dedicated group controlling who may edit lot / serial and counted quantity
- No per-product minimum triggers a low-stock alert
What TechUltra delivered
- A mandatory reason on any non-zero adjustment, propagated onto the resulting stock moves
- A dedicated editor group controlling who may edit lot / serial and counted quantities
- Per-product minimum quantities with a daily job that rebuilds low-stock alerts and emails the configured users
| Capability | Role | Odoo area |
|---|---|---|
| Mandatory adjustment reason | Warehouse | Inventory |
| Restricted editor group | IT, audit | Security |
| Low-stock email alerts | Purchasing, stores | Inventory · Automation |
Maintenance & AMC
Annual maintenance contracts, preventive maintenance, and cost-overrun handling.
Business problem
- Standard maintenance has no AMC value tracking or approval workflow
- Preventive maintenance should carry equipment cost and partner automatically
- Cost beyond the AMC needs a controlled purchase path
What TechUltra delivered
- AMC details per work center / equipment with start / end dates and a computed remaining value, logged to the equipment history
- Preventive maintenance raised from the work center, auto-detecting the active AMC line
- Maintenance approval through the shared approval engine
- Cost above the AMC handled through the purchase flow, with spend deducted from the remaining AMC value on completion
| Capability | Role | Odoo area |
|---|---|---|
| AMC value tracking | Maintenance, finance | Maintenance |
| Preventive maintenance | Maintenance | Maintenance |
| Approval workflow | Managers | Maintenance · Approvals |
| Cost-overrun to purchase | Maintenance, purchasing | Maintenance · Purchase |
Finance & India Localization
Finance controls and Indian statutory support layered on Odoo Accounting.
Business problem
- Posted entries need an audit state with reviewer, date, and reason
- GL account selection on documents is error-prone by hand
- Indian statutory needs MSME reporting, overdue interest, and a Tally-format P&L the finance team can read
What TechUltra delivered
- An accounting-audit state on journal entries (pending / approved / rejected) gated to an auditor group, plus automatic GL account mapping onto document lines
- A capital-asset register with hierarchical codes, and a daily job that computes overdue interest into a draft interest invoice per customer
- MSME (Form 1) reporting classifying vendor bills against the 45-day credit period
- A Tally-style Indian P&L (opening / closing stock, gross profit), amount-in-words on documents, and debit-note terminology — the same P&L capability we now package as the Tally Style Indian Accounting app
| Capability | Role | Odoo area |
|---|---|---|
| Journal audit states | Auditors, finance | Accounting |
| Automatic GL account mapping | Finance | Accounting |
| Overdue-interest automation | Finance | Accounting · Automation |
| MSME & Tally-style P&L | Finance, compliance | Accounting · Reporting |
HR, Shift & Attendance
Real multi-shift operations — shift plans, a daily attendance engine, and flexible week-offs.
Business problem
- Standard attendance is check-in / check-out with no shift-aware daily summary
- Night shifts crossing midnight, grace, overtime, and gate-pass time all need to be computed
- Attendance arrives from biometric devices, spreadsheets, and self-service
What TechUltra delivered
- A shift master of rotating schedules, with a monthly job that generates the next month's plan and handles past-midnight shifts
- A daily attendance engine building a per-employee summary — planned vs actual, overtime, late / early against a configurable grace, and gate-pass time
- Attendance capture from biometric devices, Excel import, and an employee self-service portal, plus a monthly department-wise overtime summary with sign-off
- A flexible week-off wizard and an employee master extended with statutory IDs (with PAN / Aadhaar validation)
| Capability | Role | Odoo area |
|---|---|---|
| Rotating shift master | HR, production | Employees |
| Daily attendance summary | HR, payroll | Attendances |
| Multi-channel capture | HR, employees | Attendances |
| Overtime summary & week-offs | HR, managers | Employees |
Payroll & Performance Gradation
Localized Indian payroll with a monthly performance cycle feeding increment bands.
Business problem
- Salary components must be computed on a gross-based Indian structure with monthly adjustments
- Provident-fund handling and canteen / CTC fields are needed on the contract
- A monthly performance measure should map to increment bands
What TechUltra delivered
- A salary structure splitting the wage into Basic, HRA, TRA, Education, and Medical components, with PF handling and monthly per-employee adjustments
- Payroll structures and rules for the operation, including PF within a validity window
- A monthly gradation cycle that scores each employee from attendance and targets and maps the score to an increment percentage band
- Payslip PDFs delivered to employees by email (single or bulk)
| Capability | Role | Odoo area |
|---|---|---|
| Gross-based salary structure | Payroll | Payroll |
| Monthly salary adjustments | Payroll, HR | Payroll |
| Performance gradation | HR, management | Employees |
| Payslip email delivery | Payroll, employees | Payroll |
Operational transformation
A qualitative before-and-after. The "before" reflects the typical pre-platform pattern, not an audited baseline.
-
Before
One generic quality check for every pipe type
After
The right inspection format per pipe standard, built automatically
-
Before
Approvals coded per document, inconsistently
After
One ordered approval engine across sales, purchase, BoM, and maintenance
-
Before
Credit risk caught only after invoicing
After
Over-limit and overdue dispatch blocked at delivery validation
-
Before
Shifts, overtime, and payroll reconciled by hand
After
A shift-aware daily attendance engine feeding payroll
Business value
-
Quality by standard
Each pipe type is inspected and documented against its own format, without picking a template by hand.
-
Governance built in
Ordered approvals, dispatch credit gates, and adjustment reasons live in the system, not in policy documents.
-
Floor-to-finance traceability
Lot-by-lot production and serial tracking connect the extrusion line to the ledger.
-
Indian-statutory ready
GST, TDS, MSME reporting, and a Tally-style P&L keep the finance team in familiar terms.
-
Dealer-scale selling
Order-on-behalf and layered trade discounts fit distributor and field-sales operations.
-
Automation
Seven scheduled jobs keep credit, interest, attendance, shifts, and stock current.
Why Duke Pipes chose TechUltra
- Deep Odoo manufacturing customization across production, quality, and costing
- Domain fit for pipe, plastics, and extrusion operations
- Indian statutory and localization competence — GST, TDS, MSME, Tally-style P&L
- One engagement spanning manufacturing, quality, finance, HR, and payroll
- Honest scoping — a clear line between standard Odoo and custom work
- A structured application library the team can extend over time
Similar use cases
| Profile | Parallel from Duke Pipes |
|---|---|
| Pipe, plastics & extrusion manufacturers | Category-driven quality control |
| Multi-standard QC operations | Format-per-category inspection routing |
| Dealer / distributor-led sellers | Order-on-behalf B2B portal + credit gate |
| Indian manufacturers on Odoo | GST / TDS / MSME + Tally-style P&L |
| Multi-shift plants | Shift master + daily attendance engine |