📄 Odoo Module Interconnection Map

Odoo Module Interconnection Map

Version: 1.0 | Date: 2026-02-13 | TerraSync full product lifecycle reference.

The Big Picture

PURCHASE → INVENTORY → SALES → DELIVERY → CUSTOMER
              |           |        |          |
          stock.lot   sale.order  stock.picking
              |           |        |
         EQUIPMENT ← PROJECT ← SUBSCRIPTION
              |        |          |
        MAINTENANCE  FIELD SVC  INVOICING
              |        |
         HELPDESK ← REPAIR → PARTS CONSUMED

Flow 1: Product Becomes Inventory

Purchase Order → Receipt (stock.picking) → Serial Number (stock.lot) → Product available.

Flow 2A: Direct Sale

Sale Order → Delivery → Assign serial → Validate → Invoice. Then create maintenance.equipment.

Flow 2B: SYNC Sale (Lease-to-Own)

  1. Sale order: is_subscription=True, plan_id=Monthly
  2. Line 1: SYNC Plan service (monthly) | Line 2: Equipment at $0
  3. Equity fields: x_equipment_value, x_equity_rate, x_contract_months
  4. Confirm → subscription active, delivery order created
  5. Deliver to SYNC Deployed (loc 23), assign serial
  6. Create maintenance.equipment record
  7. Monthly invoicing automatic

Flow 3: Customer Reports Issue

Helpdesk Ticket can create:

  • Repair Order with parts consumption
  • Field Service Task in FSM project
  • Maintenance Request linked to equipment

Flow 4: Maintenance

Preventive: Equipment schedule auto-creates requests. Corrective: From helpdesk.

maintenance.equipment is the central hub linking serial, customer, sale order, product, history.

Flow 5: Loaner Swap

See SYNC Loaner Swap SOP article. Loaner Pool ↔ SYNC Deployed ↔ Service/Repair.

Flow 6: Ownership Transfer (Month 36)

Path A: Customer owns — equipment to Partners/Customers, subscription closed.

Path B: Upgrade — old unit returned (30% trade-in credit), new SYNC subscription.

Master Relationship Map

By Customer

Sale Orders → Equipment → Tickets → Projects → Invoices → Deliveries

By Serial Number

Product → Location → Equipment Record → Sale Order → Repair History

By Subscription

Customer → Service Lines → Equipment Lines → Equity → Project → Invoices

Module Matrix

ModulePurposeKey Models
SalesQuotes & orderssale.order
SubscriptionsRecurring billingsale.order (is_subscription)
RentalEquipment rentalrent_ok products
InventoryStock managementstock.picking, stock.move, stock.lot
PurchaseVendor orderspurchase.order
HelpdeskCustomer supporthelpdesk.ticket
RepairEquipment repairrepair.order
MaintenanceEquipment trackingmaintenance.equipment
Field ServiceOn-site workproject.task (is_fsm)
InvoicingBillingaccount.move

Known Gaps

  1. 7/8 SYNC products missing service_tracking (no auto project creation)
  2. Equipment not auto-created on SYNC sale (needs server action)
  3. Helpdesk x_equipment_id may not be on ticket form view
  4. No repair cost rollup per subscription
  5. Serial-to-customer linkage goes through equipment record (by design)