Skip to main content

Microsoft Dynamics 365 Add/Update Product Inventory TO iPaaS

Transfer MSD265 product inventory to iPaaS.com

Updated yesterday

Microsoft Dynamics 365 Add/Update Product Inventory TO iPaaS

Overview

Product Inventory can be transferred to iPaaS.com through manual sync and polling. This integration supports syncing of Product Inventory data to iPaaS.com using the Microsoft Dynamics 365 Product Inventory ID.

Before You Begin

Ensure the following prerequisites are in place before configuring this integration.

Microsoft Dynamics 365 Requirements

  • Products must exist with valid Item IDs

  • Locations must be configured with valid Location Codes

  • Web Services must be enabled for Items By Location

iPaaS.com Requirements

  • Products must exist in iPaaS.com before inventory can be transferred

  • Inventory locations must exist in iPaaS.com and be linked to corresponding Microsoft Dynamics 365 locations using external IDs

  • API credentials with create/update permissions for Inventory API

ID Format

When performing a manual sync, enter the correct Microsoft Dynamics 365 item ID in a concatenated format with "location_code|item_id".

  • Example: MAIN|6fbc9163-0295-ef11-8a6d-6045bdc8dfe6

Mapping Collection Status

  • Status: Enabled

  • Trigger Events: Product Inventory Create, Product Inventory Update

Supported Child Collections

This integration does not support any child collections.

System Caveats

Microsoft Dynamics 365 Caveats

  • Location Code Required: Inventory is tracked by location. Each inventory record requires a valid location code.

iPaaS.com Caveats

  • Product Must Exist: The parent product must exist in iPaaS.com before inventory can be transferred. If the product does not exist, the transfer will fail.

  • Location Linking: Inventory locations must be linked between Microsoft Dynamics 365 and iPaaS.com before inventory transfers. If a linked location is not found, the system will automatically attempt to create the link before transferring inventory.

Integration Caveats

  • Location Resolution: Location codes are converted to Location IDs, then to iPaaS.com Location IDs through a two-step resolution process.

Setup Requirements

iPaaS.com Configuration

  • Inventory locations must exist in iPaaS.com and be linked to the corresponding Microsoft Dynamics 365 locations using external IDs before inventory can transfer.

  • If a linked location is not found, the location will automatically attempt to create the link before transferring inventory.

Microsoft Dynamics 365 Configuration

  • Web Services must be enabled for Customer Price Groups, Item Card, Items, Item Categories, and Items By Location.

Authentication and Security

Microsoft Dynamics 365 API credentials are required for accessing the Items By Location API. Ensure credentials are stored securely within the iPaaS.com credential manager.

Integration Flow

The integration processes Microsoft Dynamics 365 Product Inventory records as follows:

  1. Inventory is updated in Microsoft Dynamics 365.

  2. Polling or manual sync triggers the transfer.

  3. iPaaS.com authenticates with the Microsoft Dynamics 365 API.

  4. Product ID is converted to iPaaS.com Product ID.

  5. Location Code is converted to Location ID, then to iPaaS.com Location ID.

  6. Inventory quantities are mapped (QtyAvailable, QtyOnHand).

  7. An inventory record is created or updated in iPaaS.com.

  8. Transfer status and any errors are logged.

Mappings

Parent: Dynamics Add Product Inventory TO iPaaS - Standalone

Description

This mapping collection transfers Microsoft Dynamics 365 inventory data to iPaaS.com, resolving product and location references to iPaaS.com internal IDs.

Mapping Type

Source (Dynamics 365)

Destination (iPaaS.com)

Description

Dynamic Formula

return await GetSpaceportIdAsync(Id.Split("|")[1], "Product", SpaceportSystemId);

ParentId

(Required) Converts Microsoft Dynamics 365 Product ID to iPaaS.com Product ID.

Dynamic Formula

var externalId = await ConvertLocationCodeToLocationId(LocationCode); if(!string.IsNullOrEmpty(externalId)) return await ConvertLocationIdToiPaaS.comId(externalId);

LocationId

(Required) Converts Location Code to Dynamics 365 Location ID, then to iPaaS.com Location ID.

Field

RemainingQuantity

QtyAvailable

(Required) Maps remaining quantity to available quantity.

Field

RemainingQuantity

QtyOnHand

(Required) Maps remaining quantity to on-hand quantity.

Error Handling

Product Not Found

Product does not exist in iPaaS.com.

  • Description: The parent product must exist in iPaaS.com before inventory can be transferred.

  • Resolution: Ensure the product is transferred to iPaaS.com before syncing inventory.

Location Not Found

Location cannot be resolved.

  • Description: The location code cannot be converted to a valid iPaaS.com Location ID.

  • Resolution: Ensure the location exists in both Microsoft Dynamics 365 and iPaaS.com, and that they are properly linked.

Invalid Product ID Format

Product ID format is incorrect.

  • Description: The ID must be in the format "location_code|item_id".

  • Resolution: Ensure the ID follows the correct concatenated format.

Validation and Testing

Before deploying this integration, verify the following configuration items and run the test scenarios to confirm proper operation.

Validation Rules

  • ParentId (Product): Must be present in iPaaS.com.

  • LocationId: Must map correctly to an iPaaS.com location.

Validation Checklist

  1. The product exists in iPaaS.com before transferring the inventory.

  2. LocationId maps correctly to iPaaS.com location.

  3. Location linkage is established between systems.

Test Scenarios

Scenario 1: Valid Product Inventory

Product exists in iPaaS.com. Inventory should be successfully created with correct quantities.

Scenario 2: Invalid Product (Failure Case)

Attempt to sync inventory for a product that doesn't exist in iPaaS.com. Exception should be thrown.

Scenario 3: Multiple Locations

Sync inventory for a product across multiple locations. Inventory updates should be applied per location correctly.

Additional Notes

  • Products must exist in iPaaS.com before inventory can be transferred.

  • Location linking must be established before inventory transfers.

  • The RemainingQuantity field is mapped to both QtyAvailable and QtyOnHand.

  • Both polling and manual sync are supported for this integration.

  • The ID format for manual sync is "location_code|item_id".

Did this answer your question?