How to send a Windchill BOM to your ERP
how to send Windchill BOM to ERP
Also searched as
- Windchill ESI BOM release to SAP
- Windchill REST Services get part structure
- Windchill change notice to ERP integration
- Windchill to ERP part number sync
Short answer
Release the BOM from Windchill on an approved change, not on demand. Use PTC's Enterprise Systems Integration (ESI) for a managed release to SAP or Oracle-class ERPs, or build the feed on Windchill REST Services (OData) for other targets. Map part, structure, revision and effectivity explicitly, and make the ERP response visible back in Windchill.
Applies to: PTC Windchill 11.x to 13.x with Windchill ESI or Windchill REST Services; ERPs including SAP, Oracle, Infor, NetSuite and others via middleware. Exact option names vary by release.
Design the Windchill to ERP BOM release
- 1Define the trigger: release on a Change Notice reaching Implemented or Released state, so ERP only receives approved data.
- 2Decide the unit of release: parts and their structures affected by the change, with revision and effectivity dates.
- 3Choose the mechanism: ESI with a configured distribution target for a managed release, or Windchill REST Services (OData) read plus your own integration for custom targets.
- 4Document the field mapping: part number, name, unit of measure, make or buy, revision, BOM quantity, reference designators, find number, substitutes and effectivity.
- 5Handle master data ownership: which attributes Windchill sets (description, revision, BOM) and which the ERP owns (costing, planner, lead time, safety stock, MRP type).
- 6Send the data in a defined order: materials or items first, then BOM structures, then change or effectivity records.
- 7Capture the ERP's acknowledgement and write status back to Windchill, or at least to a monitoring view, so engineers see failures.
- 8Test with a part that has a multi-level BOM, a revision change, a phantom assembly, a substitute and a part that fails an ERP rule.
ESI versus REST Services
Windchill ESI (Enterprise Systems Integration) is the PTC-supplied way to publish parts, BOMs and changes to an enterprise system. It builds a release package from a change object, applies a mapping, delivers it to a target, and records the response. For SAP, PTC has supported connector options; for other ERPs, ESI can emit files or messages that middleware translates. Confirm current supported targets and versions with PTC.
Windchill REST Services expose Windchill data over OData, for example the part management domain for parts and their structures. You write the integration yourself: query released parts and structures, transform, and call the ERP's API. This gives more control and fits non-standard ERPs, but you own error handling, retries, and tracking what was already sent.
Either way, the trigger should be a workflow event on the change, not a nightly dump of everything. Full dumps hide intent, create large reconciliation problems and can overwrite ERP-owned fields.
GET /Windchill/servlet/odata/ProdMgmt/Parts?$filter=Number eq '100-2045'&$expand=PartUses # Exact domain, version and entity names depend on your Windchill release and WRS version
Mapping the things that go wrong
Revisions: Windchill uses revision and iteration (for example A.3), while many ERPs use a revision level or change number. Decide whether the ERP revision is only the major letter or a combined value, and keep the rule identical across all parts.
Effectivity: engineering change often has a date, a serial or a lot effectivity. Many ERPs handle date effectivity natively but serial effectivity differently, or not at all. Choose what the ERP can enforce and document the rest as a manual or MES-controlled step.
Units and structure: Windchill allows structures the ERP will not accept, such as the same child twice under a parent with different find numbers or quantities in different units. Validate before sending and return a readable error, not a failed IDoc or API call with a code.
Make or buy and phantom: the ERP needs to know whether a part is manufactured, purchased or a phantom assembly that explodes through. This is rarely stored cleanly in PLM, so define a source attribute and enforce it.
Closing the loop
The weakest point in most PLM to ERP projects is feedback. Engineers release a change and assume it landed. Capture the ERP response per part and per BOM, store it against the change, and give engineering a list of failed releases with the ERP's message.
Reconciliation should be routine. Compare, for released parts, the BOM component list and quantities in the ERP against Windchill at the effective revision. Differences caused by manual ERP edits or failed partial releases show up quickly with a simple scheduled query.
Consider what happens with prototypes and in-work changes. Keep these out of the ERP, or into a separate planning status, so production planners do not see unreleased designs.
Common pitfalls
- !Releasing on demand or nightly dumps instead of on an approved change, which overwrites ERP-owned planning data.
- !Sending BOMs before the component parts exist in the ERP.
- !Ignoring effectivity, so the ERP shows a new revision active before the shop is ready.
- !Letting Windchill overwrite ERP costing, MRP and purchasing attributes.
- !No acknowledgement path back to engineering, so failures are found by planners.
- !Treating the integration as a one-time project with no owner after go-live.
How an ERP-grounded AI assistant handles this
An assistant grounded in the ERP can compare what the ERP holds against an extract of the released Windchill structure and say which BOMs differ, which components are missing, and which open work orders still use a superseded revision. With ERPray it reads the live ERP read-only, shows its query and respects roles. It does not release changes; engineering approval and the release workflow remain in Windchill.
Frequently asked questions
Should I use Windchill ESI or build on REST Services?
Use ESI when your target is a supported ERP and you want a managed release with responses. Use REST Services when the ERP is not supported or you need custom transformation. REST gives flexibility but you build the retry, tracking and error feedback yourself.
Which system should own the part number?
Usually the PLM generates and owns the engineering part number, and the ERP receives it. The ERP can still own plant-level attributes. Avoid creating numbers in both systems, which causes duplicates and manual matching.
How do I stop PLM from overwriting ERP planning fields?
Define attribute ownership in the mapping and send only the PLM-owned fields on update. In the ERP interface, protect planner, lead time, safety stock and costing fields from update by the integration user. Test an update to prove it.
Do I need to send every part revision?
Not necessarily. Many plants send only revisions that change form, fit or function and that affect production. Decide with engineering and quality, document the rule, and make sure a revision that changes a BOM or routing always reaches the ERP.
Related
How to Sync the BOM Between PLM and ERP
Make PLM the system of record for the engineering BOM (EBOM) and ERP the system of record for the manufacturing BOM (MBOM), and push only released data from PLM to ERP on a change-release event. Never edit the same BOM structure in both systems, and treat every failed transfer as a visible work item, not a silent log line.
How-toECO and ECN Process Across PLM and ERP
An ECR requests a change, an ECO authorizes and defines it, and an ECN notifies the organization once it is released. PLM should run the workflow up to release, and ERP should receive the released result with an effectivity and a disposition for existing stock and open orders.
How-toTeamcenter to SAP BOM transfer: why releases fail and how to fix them
Most failed Teamcenter to SAP transfers come from order and master data problems: the BOM was sent before its materials existed, a unit of measure or plant is missing, the SAP change number or status does not allow the update, or a mapping produced a value SAP rejects. Read the SAP-side message first (IDoc status, application log, BAPI return), then correct the Teamcenter data or the mapping.
AdvancedISA-95 and B2MML: How to Integrate ERP with MES
ISA-95 defines the boundary between business systems (Level 4, the ERP) and manufacturing operations (Level 3, the MES) and the information that crosses it. B2MML is the XML implementation of those models. In practice you exchange a ProductionSchedule from ERP to MES, and ProductionPerformance, plus material and equipment information, back, mapping each element to your ERP's work order and confirmation APIs.
How-toHow to Send Production and Labor Reporting from MES to ERP
Treat the ERP work order as the system of record for cost and quantity, and the MES as the system of record for what physically happened. Send one confirmation message per operation (or per shift or lot) containing work order, operation sequence, good quantity, scrap quantity with reason, and labor start/stop per employee and work center, post it through the ERP's supported transaction API, and make the message idempotent so a retry never double-posts.
How-toHow to Calculate OEE from MES Data and ERP Standards
OEE equals Availability times Performance times Quality. Availability comes from MES run and stop events against planned production time, Performance compares actual output to the ideal cycle time (usually the routing standard from the ERP), and Quality is good units divided by total units. The numbers are only trustworthy if planned time, ideal cycle time and the good/scrap split are defined once and used consistently.
AI for ERPAI for SAP S/4HANA, Running On-Prem or in Your Private Cloud
Run AI on SAP S/4HANA without sending ERP data to a public API. On-prem and private-cloud architecture, CDS views, OData, and honest deployment trade-offs.
AI for ERPAI across Oracle Agile PLM and your ERP: engineering changes without the swivel chair
Ground AI on Agile PLM engineering change orders and BOMs alongside ERP, so engineers and planners get accurate ECO impact answers without swivel-chair lookups.
Stuck on PTC Windchill with any ERP?
Talk to engineers who work inside PTC Windchill with any ERP every week, and who build private AI that answers these questions from your own ERP data.