The system-of-record matrix
Every PLM says it integrates with your ERP. None of them say which system owns the part number when the two disagree. This is that answer, written down per object, per direction, per conflict rule — before the first connector was built.
What it is, and what it is not
The system-of-record matrix is a table with one row per object and four columns: which system masters it, which direction it moves, what triggers the move, and what happens when both systems hold different values. It is configuration, it is visible in the product, and it is published on this site per connector.
It is not an integration diagram. A diagram showing PLM and ERP with a two-headed arrow between them communicates nothing that matters, because the whole difficulty lives in the direction of that arrow field by field.
It is also not a one-time decision made during implementation and then forgotten. The matrix is the connector's configuration at run time. Change a row and the behaviour changes; there is no second copy of the intent living in someone's implementation notes.
The four columns, and why each exists
Master names the system of truth for that object. Exactly one, never both. An object with two masters is a data-loss incident waiting for a scheduling coincidence.
Direction says which way values move. It is not implied by the master: an ERP-mastered field still flows into Manufacturing PLM so engineers can see cost on a BOM, it flows read-only.
Trigger says when. On release, on a schedule, on demand, or on a webhook. “Continuously” is not a trigger — it is a way of avoiding the question, and it is how integrations end up firing during a month-end close.
Conflict rule says what happens when the two systems disagree despite all of the above. Somebody will edit the published BOM in the ERP; the question is only whether the system tells you, or overwrites it at 2am and lets you find out from a shortage report.
The failure it prevents
The classic failure looks like this. PLM publishes the released BOM to the ERP on Monday. On Wednesday a planner adds a packaging line directly in the ERP, because that is where packaging has always been maintained and nobody wrote down that it moved. On Friday, PLM republishes after a minor change and the packaging line disappears.
Nothing errored. Both systems did what they were configured to do. The line reappears the following week when someone re-adds it, disappears again, and after the third cycle the site stops trusting the integration and starts maintaining the ERP BOM by hand — which is the outcome the project existed to prevent.
A published matrix makes that conversation happen in week one, when it is a configuration decision, rather than in month four, when it is a rollback.
How it meets the rest of the product
Fields the matrix marks as ERP-mastered render read-only everywhere in Manufacturing PLM — greyed, labelled with the owning system, and not editable even by an administrator. The interface does not offer an action that the next sync will undo.
The audit trail records every sync as an attributed write, so “who changed this cost” has an answer that names a system and a run rather than trailing off. Reconciliation tasks appear in the same work queue as everything else, not in a separate integration console nobody opens.
Agents read the matrix too. The Cost Agent knows that cost is ERP-mastered and will not propose editing it; it proposes a change to the structure that drives the cost instead. An agent that did not know the ownership rules would cheerfully recommend impossible actions.
How it meets your ERP
The default matrix is the same across all six connectors, because the underlying question does not change between vendors. Item identity and the released BOM master in Manufacturing PLM. Cost, on-hand, lead time and the supplier record master in the ERP. CAD geometry masters in the CAD system. MBOM ownership is the one genuinely contested row, and it is decided per tenant rather than assumed.
What differs per connector is shape, not ownership: NetSuite takes a dated BOM revision, SAP S/4HANA takes an engineering change with a valid-from, Dynamics 365 Business Central takes a revision record, Epicor and Acumatica take their own equivalents. Each connector page publishes its own field map alongside the shared matrix.
Item identity matching is the row that causes the most work in practice, because the ERP will hold items Manufacturing PLM never created — purchased consumables, packaging, services. Matching runs on manufacturer part number first, internal number second, and unmatched items are surfaced for a human rather than merged on a fuzzy score.
Where the boundary is
Manufacturing PLM has no ERP functionality and is not trying to acquire any. No general ledger, no accounts payable or receivable, no invoices, no sales orders, no purchasing transactions, no inventory movements. Those belong to the ERP and the matrix exists to keep that line legible.
The matrix also does not resolve organisational disagreements. If engineering and operations both believe they own the MBOM, Manufacturing PLM will make the disagreement explicit and refuse to guess — which is useful, but it is not the same as settling it.
Facts
| Rows | One per object, not one per system |
| Masters | Exactly one per object — never both |
| PLM-mastered | Item identity · released BOM · change records |
| ERP-mastered | Cost · on-hand · lead time · supplier record |
| Contested | MBOM — decided per tenant, never assumed |
| Conflict | Reconciliation task, never a silent overwrite |
| Connectors | ViBe · NetSuite · Dynamics 365 · SAP · Epicor · Acumatica |
| Enforcement | ERP-mastered fields are read-only in the Manufacturing PLM UI |
Frequently asked
Who owns the part number, PLM or ERP?
Manufacturing PLM, by default. Engineering creates the part and the number travels outward on release. The ERP will still hold items Manufacturing PLM never created — packaging, consumables, services — and those keep their ERP identity; the matching rules decide which is which rather than merging everything into one namespace.
What happens if someone edits the BOM in the ERP?
The next sync raises a reconciliation task naming the object, the field, both values, and which system owns it under the matrix. It does not overwrite. A PLM that silently wins an argument with the ERP gets switched off within a quarter, and deservedly so.
Can the ERP master the BOM instead?
For the MBOM, yes — that row is genuinely contested and is set per tenant. For the released EBOM, no. Engineering change control is the whole point of the PLM, and an EBOM that can be edited outside the change process is not under change control in any meaningful sense.
Does cost come from the ERP or from Manufacturing PLM?
From the ERP, always. Manufacturing PLM displays it on the BOM and rolls it up through the resolved structure so engineers can see the cost impact of a design decision, but the field is read-only in the interface and labelled with its owning system. Nothing in Manufacturing PLM writes a cost.
How are items matched between the two systems?
Manufacturer part number first, internal part number second, then a configurable tie-break. Anything that does not match cleanly is surfaced as an unmatched item for a person to resolve. Fuzzy auto-merging is available in some tools and is how two distinct parts quietly become one.
Is the matrix the same for every ERP?
The ownership rules are, because the underlying question does not change between vendors. What differs is shape — NetSuite takes a dated BOM revision, SAP takes an engineering change with a valid-from. Each connector page publishes its own field map alongside the shared ownership matrix.
What if we do not have an ERP yet?
Manufacturing PLM runs standalone and the matrix has fewer rows in play. Cost and on-hand stay empty rather than wrong, and the connector can be configured later without restructuring anything — the ownership model was designed for the two-system case from the start.