📄 Download PDF
📄 Download PDF
IDEN
Maintenance Service on XERPIUM

XERPIUM MAINTENANCE

Service & Maintenance Rotating Equipment — Service Order, Work Order, Preventive Schedule, Checklist, Invoicing

18Core Models
6Cost Line Types
5Service Types
3AI Tools

Rotating Equipment Service & Maintenance Management

XERPIUM MAINTENANCE SERVICE is a core business module for rotating equipment service & maintenance companies (pumps, compressors, turbines, motors) — from inquiry, estimate, quotation, work order execution, checklist, to invoicing.

⚙
SO
Service Order
🛠
WO
Work Order
🔧
EQP
Equipment Registry
☰
CHK
Checklist Execution
📅
PM
Preventive Schedule
💰
INV
Auto Invoicing
⚡
AI
AI Tools Built-in
📊
BI
Dashboard Analytics

Service Order Management

From customer inquiry to quotation — with 6-line-type cost estimation, competitor tracking, and priority management.

Inquiry / Draft
→
Estimated
→
Quoted → SO
/
Cancelled
⚙

Service Order Fields

  • Service Order No — Auto-sequence, tracking enabled
  • Customer — res.partner (company only), contact person, phone
  • Equipment to Service — Many2many customer.equipment
  • Problem Description — Text description of the issue
  • Service Type — Maintenance, Repair, Overhaul, Installation, Inspection
  • Urgency — Routine, Urgent, Emergency
  • Priority — maintenance.priority (sequence + color)
  • Lead Source — Lead source tracking
  • Date Requested & Expected — Request date & estimated completion
💰

Cost Estimation (6 Line Types)

Line TypeDescription
MaterialSpare parts & consumables
Labour On-siteTechnician at customer site (man_power × days × rate)
Labour WorkshopTechnician in workshop (man_power × days × rate)
EquipmentSpecial tools & equipment rental
SubcontractorSub-contracted work
OverheadIndirect costs
⚠

Competitor Tracking

  • Competitor Name — Names of competitors also invited
  • Quoted Price — Competitor price quotes
  • Notes — Competitor strengths/weaknesses notes
  • Win/Loss Analysis — Quotation evaluation vs competitors
🔄

SO Actions & Wizards

  • Submit Estimate — Draft → Estimated (confirm wizard)
  • Create Quotation — Estimated → Quoted, auto-generate sale.order
  • Create Work Order — Quoted → WO (wizard: technician, schedule)
  • Reset to Draft — Revert to draft
  • Cancel — Cancel service order

Work Order Execution

Job execution with technician assignment, actual vs estimate cost tracking, checklist execution, and auto-invoicing.

Confirmed
→
In Progress
↔
On Hold
→
Completed
→
Invoiced
→
Closed
🛠

Work Order Fields

  • Work Order No — Auto-sequence, tracking
  • Service Order Link — origin_id ke maintenance.service.order
  • Sale Order — sale.order related from SO
  • Customer PO/SPK No — customer_po_ref from SO
  • Service Type — Related from SO (maintenance, repair, overhaul, installation, inspection)
  • Equipment — Related from SO (customer.equipment)
  • Technicians — hr.employee Many2many assignment
  • Schedule — date_scheduled, date_start, date_end, date_completed
📊

Actual vs Estimate (Variance Analysis)

  • Actual Materials — is_estimate=False, line_type=material
  • Actual Labour On-site — Actual man_power, days, hours
  • Actual Labour Workshop — Workshop actual
  • Actual Equipment — Equipment rental actual
  • Actual Subcontractor — Subcontractor actual
  • Actual Overhead — Overhead actual
  • estimate_line_id — Link actual to estimate line for variance
  • Total Estimate vs Total Actual — Auto-compute profit margin
📅

WO State Actions

  • Start Service — Confirmed → In Progress (set date_start)
  • Pause Service — In Progress → On Hold
  • Resume Service — On Hold → In Progress
  • Complete — In Progress → Completed (set date_completed)
  • Create Invoice — Completed → Invoiced (wizard)
  • Close — Invoiced → Closed
  • Cancel — Any state → Cancelled
💰

Invoicing

  • Create Invoice Wizard — Select journal, invoice amount, note
  • Auto-Line Items — Material, labour, subcontractor lines auto to invoice
  • Fallback Single Line — If there is no actual cost, a single line with invoice_amount
  • account.move — move_type=out_invoice, invoice_origin=WO name
  • Invoice Status — draft, partially_invoiced, invoiced
  • WO State → Invoiced — Auto-set after the invoice is created

Customer Equipment & Rotating Equipment Catalog

Customer equipment registry + rotating equipment type catalog with type, brand, model, specifications, and spare parts.

🔧

Customer Equipment

Per Customer Service History
  • Equipment Name & Code — Unit identification at customer
  • Customer — res.partner (company only)
  • Equipment Catalog Link — Link to rotating.equipment catalog
  • Type & Brand — Related from catalog entry
  • Serial Number — Unique serial per unit
  • Model / Type — Model variant
  • Location at Customer Site — Installation location
  • Installation Date & Warranty Expiry — Install date & warranty
  • Current Condition — Running, Stop, Needs Monitoring
  • Horsepower, RPM, Capacity — Technical specs per unit
  • Service Count — Auto-computed from work orders
  • Last Service Date — Auto-update from latest WO
⚙

Rotating Equipment Catalog

Master Data Spare Parts
  • Equipment Name & Code — Catalog entry
  • Equipment Type — Pump, Compressor, Turbine, Motor, dll
  • Brand — Manufacturer brand (Grundfos, Sulzer, Atlas Copco, dll)
  • Model — Model variant
  • Horsepower & RPM — Technical specifications
  • Capacity — Flow rate, pressure, output
  • Mounting Type — Horizontal, Vertical, Inline
  • Technical Specifications — Full spec text
  • Common Spare Parts — product.product Many2many
☰

Equipment Type

  • Type Name — Pump, Compressor, Turbine, Motor, Fan, Blower, Gearbox
  • Code — Short code for reference
  • Description — Equipment type description
  • Unique Name — SQL constraint name_uniq
  • Filter — Checklist templates can be filtered per type
🏭

Equipment Brand

  • Brand Name — Grundfos, Sulzer, KSB, Atlas Copco, Ingersoll Rand, Siemens, ABB
  • Code — Short code
  • Manufacturer — res.partner link (manufacturer/supplier)
  • Website — Official website
  • Unique Name — SQL constraint name_uniq

Checklist Template & Execution

Checklist templates per equipment type, field execution with measured value, pass/fail, photo evidence, and auto-computed overall pass.

Checklist Template
→
Assign to Work Order
→
Execute (Measure)
→
Pass
/
Fail → Notes + Photo

Checklist Template

  • Template Name — Template name (e.g. "Pump Inspection - Monthly")
  • Equipment Type Filter — Optional: filter per equipment type
  • Checklist Items — One2many checklist.line
  • Description — Template description

Checklist Line (Items)

  • Item Name — e.g. "Vibration level", "Temperature", "Oil pressure"
  • Expected Value / Range — Target value
  • Min & Max Acceptable — Acceptable range limit
  • UoM — Unit of measure (mm/s, °C, bar, rpm)
  • Critical Item — Boolean: item kritis (auto-fail if out of range)
  • Notes / Instructions — Measurement instructions
  • Sequence — Item order

Checklist Execution

  • Work Order Link — Bound to maintenance.work.order
  • Template — Select template at execution
  • Execution Date — Execution date
  • Executed By — res.users (technician)
  • All Passed — Auto-compute: all results pass = True
  • Notes — Execution notes

Checklist Line Result

  • Measured Value — Numeric value of measurement result
  • Measured Value (Text) — Text value (e.g. "OK", "Leak found")
  • Pass — Boolean: pass/fail per item
  • Photo — Image attachment (max 1920×1920)
  • Notes — Notes per item
  • Checklist Item Link — Reference ke template line

Preventive Maintenance Schedule

Preventive maintenance scheduling per equipment with intervals (days/months/operating hours), auto-generated work orders via cron, and overdue tracking.

📅

Schedule Configuration

  • Schedule Name — e.g. "Pump P-101 - Monthly Inspection"
  • Equipment — customer.equipment link
  • Customer — Related from equipment
  • Interval Type — Days, Months, Operating Hours
  • Interval Value — e.g. 30 days, 3 months, 500 hours
  • Service Type — Maintenance, Repair, Overhaul, Inspection
  • Next Service Date — Next service date
  • Last Service Date — Auto-update after service
  • Auto-Generate Work Order — Boolean: cron auto-create WO
⚡

Cron Auto-Generation

  • _cron_generate_work_orders() — Daily cron job
  • Overdue Detection — next_service_date ≤ today & auto_generate_wo
  • Auto-Create Service Order — Draft SO with auto description
  • Auto-Submit Estimate — SO goes straight to Estimated state
  • Next Date Recalculation — Auto-update next_service_date based on interval
  • Source Tag — "Preventive Maintenance Schedule"

Overdue Schedule Tracking

ScheduleCustomerDue DateStatus
Pump P-101 MonthlyPT. Manufaktur Jaya2026-06-15Overdue 21 days
Compressor C-203 QuarterlyPT. Energi Nusantara2026-06-28Overdue 8 days
Turbine T-005 AnnualPT. Power Generation2026-07-10Due in 4 days
Motor M-312 InspectionPT. Chemical Indo2026-07-25Scheduled

Dynamic Stage Workflow

xerpium_dynamic_stage_maintenance — Configurable stages for Service Order & Work Order with Python hooks, RBAC, and state sync.

Pipeline Workflow

Stage Enter
→
Python Hook
→
Server Action
→
RBAC Check
→
State Sync

Service Order Stages

StageSeqStateFlags
Draft10draftDefault
Estimated20estimated—
Quoted30quotedNo back
Cancelled40cancelledFold, no back

Work Order Stages

StageSeqStateFlags
Confirmed10confirmedDefault
In Progress20in_progress—
On Hold25on_holdAllow back
Completed30completed—
Invoiced40invoicedNo back
Closed50closedFold, no back
Cancelled60cancelledFold, no back

Stage Sync Hooks

Service Order Hooks:

  • action_submit_estimate() → _x_sync_stage_from_state()
  • action_create_quotation() → _x_sync_stage_from_state()
  • action_cancel() → _x_sync_stage_from_state()
  • action_reset_draft() → _x_sync_stage_from_state()

Work Order Hooks:

  • action_start_service() → sync
  • action_pause/resume_service() → sync
  • action_complete() → sync
  • action_create_invoice() → sync
  • action_close() → sync
  • action_cancel() → sync

AI Tools — Maintenance with Natural Language

3 AI tools for maintenance: equipment lookup, work order status, schedule check — fully integrated with the XERPIUM AI Assistant.

🔍

Equipment Lookup

  • Tool: llm.tool.maintenance_equipment_lookup
  • Parameters: customer_name, equipment_type
  • Returns: name, code, customer, type, brand, model, serial, location, condition, last_service
  • Limit: 50 records
⚙

Work Order Status

  • Tool: llm.tool.maintenance_work_order_status
  • Parameters: customer_name, state
  • Returns: name, customer, service_type, state, scheduled, total_cost, invoice_status
  • Limit: 50 records
📅

Schedule Check

  • Tool: llm.tool.maintenance_schedule_check
  • Parameters: customer_name, overdue_only
  • Returns: schedule, customer, next_service_date, overdue status
  • Overdue Filter: next_service_date ≤ today
U
What pump-type equipment does PT. Manufaktur Jaya have?
AI
equipment_lookup
3 pump units found at PT. Manufaktur Jaya:
1. Pump P-101 — Grundfos CR32, SN: GR-2023-001, Running
2. Pump P-205 — Sulzer S40, SN: SZ-2022-014, Needs Monitoring
3. Pump P-308 — KSB Etabloc, SN: KS-2024-002, Stop
U
Check overdue maintenance schedules only

Dashboard Maintenance Service

vit_dashboard_maintenance_service — 4 ORM sources + 4 SQL sources, KPI tiles, charts, 5-minute auto-refresh.

8
Data Sources
KPI
Tiles + Charts
300s
Auto Refresh
AI
Auto-Generate

Data Sources (ORM)

SourceModel
Service Ordersmaintenance.service.order
Work Ordersmaintenance.work.order
Customer Equipmentmaintenance.customer.equipment
Schedulesmaintenance.schedule

Data Sources (SQL)

SourceQuery
Monthly RevenueInvoice sum by month (12 periods)
WO by TypeCount by service_type
Top CustomersRevenue & order count per customer
Overdue SchedulesSchedules past next_service_date

KPI Tiles Dashboard

Total Work Orders Completed WO Monthly Revenue WO by Service Type Top Customers Overdue Schedules Equipment Condition Emergency WO

Cross-Module Integration

Maintenance Service fully integrated with Sales, Accounting, Inventory, HR, and Analytic.

📄

Maintenance ↔ Sales

  • SO: action_create_quotation → automatic sale.order
  • Customer PO/SPK ref from SO to WO
  • Quotation line items from estimate lines
💰

Maintenance ↔ Accounting

  • Create Invoice Wizard → account.move (out_invoice)
  • Auto-line: material, labour, subcontractor
  • account.move inherit: maintenance_work_order_id field
  • Invoice status tracking on WO
📦

Maintenance ↔ Inventory

  • Material lines → product.product (spare parts)
  • Rotating equipment catalog → common spare parts
  • Stock reservation for WO materials
👥

Maintenance ↔ HR

  • Technician assignment: hr.employee Many2many
  • Labour lines: employee_id, man_power, days, hours
  • Workforce scheduling & dispatch
📊

Maintenance ↔ Analytic

  • Cost center tracking per WO
  • Variance: estimate vs actual per line
  • Profitability analysis per service order
📈

Maintenance ↔ Purchase

  • Material requirement → purchase request
  • Subcontractor → PO for sub-contracted work
  • Spare part procurement

Why XERPIUM Maintenance Service?

Aspect Competitor ERP XERPIUM Maintenance
LicensePer-user/per-app feeSaaS / On Premise
Service OrderBasic work order✓ Inquiry → Estimate → Quotation
Cost EstimationMaterial + Labour only✓ 6 line types (material, onsite/workshop labour, equipment, subcontractor, overhead)
Variance Analysis✗ Not available✓ Estimate vs Actual per line
Equipment RegistryBasic✓ Customer equipment + catalog + type + brand
Rotating Equipment✗ Not available✓ Pump, Compressor, Turbine, Motor — HP, RPM, capacity, mounting
Checklist TemplateEnterprise only✓ Template per equipment type + min/max range + critical items
Checklist Execution✗ Not available✓ Measured value, pass/fail, photo evidence, auto-all-pass
Preventive ScheduleBasic reminder✓ Days/Months/Hours interval + cron auto-generate WO
Competitor Tracking✗ Not available✓ Competitor name, quoted price, win/loss
Priority Management✗ Not available✓ Priority with sequence + color
Dynamic Stage✗ Not available✓ Configurable per SO & WO with RBAC
Auto InvoicingManual✓ Wizard: auto-line from actual costs
AI Tools✗ Not available✓ 3 tools: equipment, WO status, schedule
DashboardLimited✓ 8 data sources, KPI tiles, auto-refresh
Multi-CompanyEnterprise only✓ Included

XERPIUM Industry Portfolio

IndustryModuleDashboardReport
Inventory & WMS275+✓✓
Manufacturing230+✓✓
Purchase105✓✓
HR & Payroll29✓✓
Aerospace10✓✓
Accounting9✓✓
University9✓✓
Distribution8✓✓
Koperasi8✓✓
Retail & POS7+✓✓
Gold Mining & Refinery7✓✓
Aviation6✓✓
Coal Mining6✓✓
Hospital & Pharmacy6✓✓
Hajj & Umrah Travel6✓✓
Logistics5✓✓
Hotel & Property5✓✓
Beauty Clinic5✓✓
Maintenance Service4✓✓
Rental4✓✓
Livestock4✓✓
Fishery4✓✓
Software House4✓✓
Event Organizer4✓✓
Satellite City2✓✓
Education Foundation2✓✓
Food & Beverage1✓✓
Civil Construction1✓✓
Garment1✓✓
Agriculture1✓✓
Theme Park1✓✓
Data Center / IT1✓✓
Palm Oil1✓✓
Feedmill1✓✓
Building Management1✓✓
Auditor1✓✓
Try nowContact