Hi everyone,
I am exploring the best approach to create Sales Orders (header + lines) in Dynamics 365 Finance & Operations from an external system integration.
So far I have tested the following options:
1. OData Using entities like SalesOrderHeadersV3 and SalesOrderLinesV3. This works, but requires multiple calls and handling the returned SalesOrderNumber before creating lines. Also, the sales order header charge needs to be handled via a custom field since the entity is not exposed via OData.
2. Data Management Framework (DMF) I also explored DMF. However:
- Header and lines use separate entities, which again requires handling the generated SalesOrderNumber.
- The composite entity approach requires XML payloads, which adds additional complexity for the integration.
Because of these limitations, I wanted to ask the community:
What is the recommended or best practice approach for creating Sales Orders (header + lines) from external systems in D365 FO integrations?
Specifically:
- Is OData generally the preferred approach for this scenario?
- Or is it better to implement a custom service / custom API that creates the order and lines in a single transaction?
I am trying to understand what approach is most commonly used in real-world integrations.
Thanks in advance for your guidance.

Report
All responses (
Answers (