The inventory connector is used to get stock information from Microsoft Dynamics 365 for Finance and Operations and show it in Intershop Commerce Management (ICM).
This release note provides important product information, including version information and dependencies. It also outlines the basic setup and configuration steps.
|Intershop Commerce Management
|Intershop D365 Finance and Operations Inventory Connector
The D365 Finance and Operations Inventory Connector consists of the following microservices:
The source code can be downloaded from https://repository.intershop.de//mvn-inventoryconnector-releases/.
The connector works with standard, un-customized Microsoft Dynamics 365 for Finance and Operations.
The Inventory Connector consists of two microservices: One for cached inventory calls and one for uncached calls.
The cache retrieves inventory information from Dynamics 365 Finance and Operations (e.g., all 15 minutes). This data is used for storefront browsing and the checkout, because it is fast. However, when the order is created (i.e., the customer clicks "Submit Order"), the uncached inventory call is used. It retrieves the data directly from Dynamics 365 and is a bit slower. It prevents the creation of orders with products which just got out of stock. Additionally the inventory cache is updated with live data from uncached calls.
The inventory connector retrieves inventory information from the "on hand inventory" from Dynamics 365.
ICM makes a request in JSON format containing product SKU(s) and warehouse. The microservice returns a response for "on hand inventory" of the requested product(s).
The communication between ICM and the Microservice is synchronous.
Once the microservice receives a request from the ICM, the inventory amount will be returned from the caching microservice (e.g., for product lists and product details pages) or directly from MS Dynamics 365 via link (when creating an order).
The communication between the microservice and Microsoft Dynamics 365 for Finance and Operations is synchronous.
The inventory connector is implemented as microservice.
To familiarize yourself with the concepts, please refer to:
Setup instructions can be found at:
The following configuration data has to be provided to the Inventory Microservice. Currently the properties have to be specified in a file that is located within the Java classpath of the Microservice, see Cookbook - D365 Finance and Operations Inventory Connector.
The configuration for getting an access token from Azure Active Directory (AAD) is necessary for OData access to Microsoft Dynamics 365 for Finance and Operations:
# Azure Active Directory credentials intershop.inventory.azure.resource= intershop.inventory.azure.tenant= intershop.inventory.azure.clientID= intershop.inventory.azure.clientSecret= intershop.inventory.azure.token.requestURL= intershop.inventory.azure.token.minimumTTL=
Configuration for the number of threads used to process requests from ICM:
# Concurrency configuration #intershop.inventory.threadPool.size=
Only little configuration is needed for the Prefetcher Microservice. Once the Prefetcher is up and running in Eureka, the Inventory Microservice will detect it and will use its functionality and configuration.
Configuration for the Microsoft Dynamics 365 for Finance and Operations tenant (organization):
# Tenant configuration intershop.inventory.caching.routing.1.backend.tenant=
Configuration of how often the inventory in the cache is updated:
To connect the Inventory Microservice with the ICM, a managed inventory service must be configured.
The microservice allows configuration of one Dynamics 365 tenant. If this maps to one ICM sales channel, create the managed service at channel level.
If multiple sales channels (within one ICM organization) use inventory data from the same Dynamics 365 tenant, you can also create the managed service at organization level and enable sharing.
Create a service configuration (set technical configuration).
No known issues.