Microsoft Dynamics 365 for finance and operations has a variety of integration options available to choose from. We can choose one of them for our integrations with external systems. We listed them below and their details.
1. Custom API Development Services
2. Consume External Web Service in D365 F&O
3. D365 Data Management Framework
a) D365 Data Entities
b) D365 Odata API
c) BYOD D365
d) Azure Data Lake D365 Finance and Operations
4. Business Events D365
5. Excel Data Connector Add-In
6. DLL Integration
In today's fast-paced and digitally driven business landscape, organizations strive to achieve seamless operations and enhanced productivity. One of the key enablers of such efficiency is the integration of core systems and processes. Microsoft Dynamics 365 Finance and Operations (D365 F&O) is a comprehensive enterprise resource planning (ERP) solution that supports and streamlines various business functions, including finance, supply chain management, human resources, and more.
Core integration with D365 Finance and Operations involves connecting this powerful ERP system with other essential business applications and technologies to create a unified and cohesive operational environment. This integration is crucial for ensuring data consistency, improving visibility across departments, and enabling real-time decision-making.
Image Caption: Core Integration in D365 Finance and Operations
Custom services are inbound API services. It is a most flexible and customizable way to request a D365 F&O to run a business logic and respond with desired response. We need to develop a service class, contract class and services in D365 F&O using X++ and Application explorer to build a service. Later we can construct the API URL with our server URL\Service\Service Method to be consumed by other applications.
For authentication, we need to register a new Client, secret id, and store it in our D365 F&O for creating tokens for each call. For testing this Custom API, we can configure the API in Postman tool and send request to get response.
a) var binding = new System.ServiceModel.BasicHttpBinding();
b) External services can be consumed in D365 using class libraries.
c) Below is a code sample to consume the external web services.
d) var endpointAddress = new EndpointAddress("http://www.WebService.com/D365.aspx");
c) ServiceLibrary.QuoteReference.StockQuoteSoapClient client = new ServiceLibrary.QuoteReference.StockQuoteSoapClient(binding, endpointAddress);
d) return client.GetQuote("MSFT");
Another way of consuming external service is using HTTP web request (POST, GET, PUSH). For this we need to build a httpwebrequest class library which consumes the services using HTTP request/response methods.
Data management framework in D365 F&O provides variety of integrations to import and export data in D365 F&O system. Below are the integrations available in DMF.
a) D365 Data Entities: A data entity is an abstraction from the physical implementation of database tables. For example, in normalized tables, a lot of the data for each customer might be stored in a customer table, and then the rest might be spread across a small set of related tables. In this case, the data entity for the customer concept appears as one de-normalized view, in which each row contains all the data from the customer table and its related tables. A data entity encapsulates a business concept into a format that makes development and integration easier. The abstracted nature of a data entity can simplify application development and customization. Later, the abstraction also insulates application code from the inevitable churn of the physical tables between versions.
b) D365 Odata API: OData is a standard protocol for creating and consuming data. The purpose of OData is to provide a protocol that is based on Representational State Transfer (REST) for create, read, update, and delete (CRUD) operations. OData applies web technologies such as HTTP and JavaScript Object Notation (JSON) to provide access to information from various programs. OData provides the following benefits:
1. It lets developers interact with data by using RESTful web services.
2. It provides a simple and uniform way to share data in a discoverable manner.
3. It enables broad integration across products.
4. It enables integration by using the HTTP protocol stack.
c) BYOD D365: BYOD enables you to push data from AxDB transitional Database to an external database like Azure SQL database hosted in same or other tenants. BYOD uses existing data entities available in ERP to push the data to external databases, which can be used with Dataverse, External Data Warehouses for PowerBI reporting etc.
d) Azure Data Lake D365 Finance and Operations: Export to Azure Data Lake lets you connect your finance and operations environment to a data lake to unlock insights that are hidden in your data.
When you enable the Export to Azure Data Lake add-in, you connect your finance and operations environment to a designated data lake. Authorized users can then copy data from your finance and operations environment to that data lake. Tools such as Power BI and Azure Synapse enable analytics, business intelligence, and machine learning scenarios for data in the data lake. When you select data in finance and operations apps, the system makes an initial copy of the data in the data lake. After that initial copy is made, the system keeps the data in the data lake fresh by continuously inserting, updating, and deleting data that changed. You don't have to manage exports or monitor the service, and there is no additional burden on your finance and operations workloads.
Data stored in the data lake is organized using Common Data Model. Common Data Model enhances the value of your data in the lake. For example, it provides additional metadata in a machine-readable JavaScript Object Notation (JSON) format, so that downstream tools can determine the semantics of the data. The additional metadata includes the table structure, descriptions, and data types.
Export to Azure Data Lake is a fully managed, scalable, and highly available service from Microsoft. It includes built-in disaster recovery.
Business events provide a mechanism that lets external systems receive notifications from finance and operations apps. In this way, business actions can be performed in response to business events. Business events occur when a business process is run. During a business process, users who participate in it perform business actions to complete the tasks that make up the business process.
A business action that a user performs can be either a workflow action or a non-workflow action. Approval of a purchase requisition is an example of a workflow action, whereas confirmation of a purchase order is an example of a non-workflow action. Both types of actions can generate business events that external systems can use in integration and notification scenarios.
Microsoft Excel can change and quickly analyse data. The Excel Data Connector app interacts with Excel workbooks and OData services created for publicly exposed data entities. The Excel Data Connector add-in enables Excel to become a seamless part of the user experience. The Excel Data Connector add-in is built by using the Office Web add-ins framework. The add-in runs in a task pane. Office Web Add-ins are web applications that run inside an embedded Internet Explorer browser window.
Excel > Office Web Add-in (JS + HTML) > JavaScript OData API (Olingo) > Authentication through Azure Active Directory (AAD) > AX OData services on the AOS > AX Entities > AX LINQ provider > AX Database
D365 supports customization by referring to external DLL methods. This can be achieved through adding your dll in your project reference and you can refer those DLL methods in your X++ customization.
Integrating D365 Finance and Operations with other business systems unlocks significant efficiency and productivity gains. Whether through custom APIs, web services, or data management, these integration options provide flexibility and scalability for your organization. Discover additional ways to enhance your platform with Microsoft Dynamic D365 by exploring our services.