Enterprise Structure: The Org Model

Before any transaction can exist, the ERP must know who the company is. The org structure is the skeleton: every document, balance, and stock quantity hangs off it. Getting it wrong is the most expensive mistake in an ERP implementation, because it cannot be changed after go-live without effectively re-implementing.

The universal concepts

Every ERP has these, under different names.

Concept What it is SAP Dynamics 365 F&O NetSuite Odoo
Group / Instance The whole installation Client (Mandant) Instance Account Database
Legal entity A company that files accounts and tax returns Company Code Legal Entity Subsidiary Company
Consolidation group Set of entities reported together Controlling Area / Group Consolidation company Parent subsidiary Company hierarchy
Operating unit Where sales happen Sales Organisation Sales unit / OMOP Subsidiary + Dept Sales Team
Purchasing unit Where buying happens Purchasing Organisation Purchase unit Subsidiary Purchase Team
Site / Plant Physical operating location Plant (Werk) Site Location Warehouse
Storage location Sub-area of a site Storage Location Warehouse Location/Bin Location (hierarchical)
Bin Physical slot Storage Bin (EWM) Location Bin Location
Cost object Where cost lands Cost Centre Cost Centre (dimension) Department Analytic Account
Profit object Where margin lands Profit Centre Business Unit Class Analytic Account
        LEGAL DIMENSION                    MANAGERIAL DIMENSION
     (what the law requires)             (what management wants)

        Group / Parent                       Business Segment
             │                                      │
      ┌──────┴──────┐                        ┌──────┴──────┐
   Company A     Company B                Division X    Division Y
   (files tax)   (files tax)                    │            │
        │             │                    Cost Centres  Cost Centres
    Ledger        Ledger                   Profit Centres
  • Legal: fixed by law, one balance sheet per legal entity, currency and GAAP dictated by jurisdiction.
  • Managerial: whatever the CFO wants, changes with reorgs, must be re-mappable without touching the legal books.

Design rule: never encode managerial structure into legal structure. If “Division” is a company code, every reorg becomes a migration project. Divisions belong in dimensions/cost centres/profit centres.

The pieces in detail

  • The level at which you produce a balance sheet and P&L.
  • Has: a currency (local/company-code currency), a chart of accounts, a fiscal year variant, a country, a tax registration.
  • One legal entity = one set of books. Documents post to exactly one.
  • Cross-entity transactions become intercompany postings — see Intercompany and Consolidation.

Plant / Site

  • A place where you make, store, or ship things.
  • Owns: inventory, MRP parameters, production capacity, purchasing defaults.
  • Assigned to exactly one legal entity (the entity that owns the stock).
  • A plant can be a factory, a warehouse, a shop, a service depot, a 3PL location.

Storage location / Warehouse

  • Subdivision of a plant where stock quantity is tracked.
  • Typical split: RAW (raw materials), WIP, FG (finished goods), QI (quality inspection), BLK (blocked), RET (returns).
  • Not all storage locations are valuated separately — that’s usually at plant/valuation-area level.

Sales organisation / distribution channel / division

The classic sales dimension triple:

  • Sales org — legal seller, owns terms and pricing responsibility
  • Distribution channel — retail vs wholesale vs online vs export
  • Division — product line grouping

Together they form the sales area, which drives pricing, output, and customer master extension.

Purchasing organisation / group

  • Purchasing org — negotiates and owns contracts
  • Purchasing group — the buyer or buying team (a person-level assignment used for workflow and reporting)

Cost centre

  • Where costs are collected. Departments, machines, teams.
  • Hierarchical, effective-dated, must be assigned to a legal entity.
  • Never earns revenue.

Profit centre / Business unit / Segment

  • Where responsibility for margin sits. Can produce a partial P&L.
  • Often maps to a product line or region.
  • Used for segment reporting (IFRS 8), which is a legal requirement for listed companies.

Controlling area / Cost accounting ledger

  • The scope inside which cost allocations can flow. Multiple legal entities can share one controlling area if they share a chart of accounts and currency setup — that enables cross-company cost allocation.

Worked example

A Bangladeshi garment manufacturer:

Group: Meridian Holdings
│
├── Company Code 1000 — Meridian Apparels Ltd (BDT, Bangladesh, VAT reg 1234)
│   ├── Plant DHK1 — Dhaka sewing factory
│   │   ├── SLoc RAW  — fabric & trims store
│   │   ├── SLoc WIP  — cutting/sewing floor
│   │   ├── SLoc FG   — finished goods
│   │   └── SLoc QI   — quality hold
│   ├── Plant CTG1 — Chattogram washing unit
│   ├── Sales Org 1000 — Export sales
│   │   ├── Dist. Channel 10 — Direct to brand
│   │   └── Dist. Channel 20 — Via buying house
│   └── Purchasing Org 1000
│
├── Company Code 2000 — Meridian Trading FZE (USD, UAE)
│   └── Plant DXB1 — Jebel Ali bonded warehouse
│
Cost centres:      CUT-01, SEW-01..12, WASH-01, QC-01, ADMIN, IT, HR
Profit centres:    PC-KNIT, PC-WOVEN, PC-DENIM

Note: a shipment from DHK1 to DXB1 crosses legal entities → intercompany sale, transfer price, two sets of books, elimination at consolidation.

Rules learned the hard way

  1. Fewer legal entities is always better. Each one costs audit fees, tax filings, intercompany reconciliation, and close effort. Don’t create one for a reporting need.
  2. One plant per physical location, not per business function. Two “plants” at the same address create phantom stock transfers.
  3. Storage locations are cheap; plants are expensive. Use storage locations for granularity.
  4. Cost centre codes should be meaningless or hierarchical, never semantic-overloaded. Codes like SEW-DHK-2024-NIGHT become garbage after one reorg.
  5. Never reuse a code. Retire and create new. Reused codes destroy historical reporting.
  6. Design for the next 5 years of acquisitions, because you will not get to redo this.

Impact on your code

Every custom table you create will need org fields. The near-universal minimum:

company_id      -- legal entity, mandatory, drives security and posting
site_id         -- plant/warehouse, where applicable
cost_center_id  -- for anything with cost
currency_code   -- transaction currency
posting_date    -- drives period determination

And every query you write must be filtered by the user’s authorised org scope. Org fields are the primary authorisation dimension in ERP security — see Security Model and RBAC.

Next