Dynamics 365 Intelligent Order Management Power Automate flows

This article provides a list of the flows that are available as part of Microsoft Dynamics 365 Intelligent Order Management. You can use these flows to build your own custom providers or solutions.

Mapping flows

Create account mapping

The Create account mapping flow lets you create a customer account mapping that uses the specified external field name and external field value for the lookup to map back to an account ID.

Parameter Description Required
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
Account ID The account ID to return when a match is found. True
External Field Name The name of the field to check for the value in the external data source. True
External Field Value The field value to match in the external data source. True

The mapping returns the account ID, whether it's just created or it already exists.

Note

This value is the ID of the mapping, not the account.

Create contact mapping

The Create contact mapping flow lets you create a customer contact mapping that uses the specified external field name and external field value for the lookup to map back to a contact ID.

Parameter Description Required
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
Contact ID The contact ID to return when a match is found. True
External Field Name The name of the field to check for the value in the external data source. True
External Field Value The field value to match in the external data source. True

The mapping returns the contact ID, whether it's just created or it already exists.

Note

This value is the ID of the mapping, not the contact.

Create fulfillment order mapping

The Create fulfillment order mapping flow lets you create a fulfillment order mapping that uses the specified external field name and external field value for the lookup to map back to a fulfillment order ID.

Parameter Description Required
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
Fulfillment Order ID The fulfillment order ID to return when a match is found. True
External Field Name The name of the field to check for the value in the external data source. True
External Field Value The field value to match in the external data source. True

The mapping returns the fulfillment order mapping ID, whether it's just created or it already exists.

Note

This value is the ID of the mapping, not the fulfillment order.

Create fulfillment order product mapping

The Create fulfillment order product mapping flow lets you create a fulfillment order product mapping that uses the specified external field name and external field value for the lookup to map back to a fulfillment order product ID.

Parameter Description Required
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
Fulfillment Order Product ID The fulfillment order product ID to return when a match is found. True
External Field Name The name of the field to check for the value in the external data source. True
External Field Value The field value to match in the external data source. True

The mapping returns the fulfillment order product mapping ID, whether it's just created or it already exists.

Note

This value is the ID of the mapping, not the fulfillment order product.

Create order mapping

The Create order mapping flow lets you create an order mapping that uses the specified external field name and external field value for the lookup to map back to an order.

Parameter Description Required
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
Order ID The order ID to return when a match is found. True
External Field Name The name of the field to check for the value in the external data source. True
External Field Value The field value to match in the external data source. True

The mapping returns the order mapping ID, whether it's just created or it already exists.

Note

This value is the ID of the mapping, not the order.

Get external mapping

The Get external mapping flow returns the external field value that maps to the internal field value for a specific table and external field name.

Parameter Description Required
Mapping Table The mapping table to look up for the external value. True
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
Internal Record Value The value that's used internally to match. True
External Field Name The name of the field to check for the value in the external data source. True

The mapping returns the record if a matching table, internal record value, and external field name exist for the specified provider or mapping group.

Get internal mapping

The Get internal mapping flow returns the internal field value that maps to the external field value for a specific table and external field name.

Parameter Description Required
Mapping Table The mapping table to look up for the external value. True
Provider ID The provider ID that the mapping is for. True
Mapping Group ID The mapping group ID that the mapping is for. True
External Field Name The name of the field to check for the value in the external data source. True
External Field Value The value that's used externally to match. True

The mapping returns the record if a matching table, external field value, and external field name exist for the specified provider or mapping group.

Fulfillment flows

Create fulfillment tracking

The Create fulfillment tracking flow creates a record in the tracking table to associate a tracking number with a fulfillment order or fulfillment return order, and other details.

Parameter Description Required
Tracking Number The tracking number to set for the record. True
CarrierRecordId A matching record from the Shipping Carrier table. True
CarrierServiceId A matching record from the Carrier Service table. True
FulfillmentOrderRecordId The fulfillment order record to set the tracking number on. False
FulfillmentLineRecordId The fulfillment order line record to set the tracking number on. False
ShipmentId The associated shipment ID, if it's available. False
ShipmentCost The associated shipment cost, if it's available. False
InsuranceCost The associated insurance cost, if it's available. False
Tax The associated tax, if it's available. False
SurchargeFee The associated surcharge fee, if it's available. False
FulfillmentReturnOrderRecordId The fulfillment return order record to set the tracking number on. False

Note

Either a FulfillmentOrderRecordId value or a FulfillmentReturnOrderRecordId value is required.

The flow returns the tracking number ID from the Fulfillment Trackings table.

Fulfillment line and aggregated order events

The Fulfillment line and aggregated order events flow raises a business event on a fulfillment order line. When this event is raised, a check is done to verify that all lines have the same status. If they have the same status, the specified fulfillment order–level business event is raised at the header level.

Parameter Description Required
FulfillmentLineBusinessEventDefinitionId The business event to raise on the line entity. True
FulfillmentLineRecordId The fulfillment order line to raise the initial business event for. True
FulfillmentOrderBusinessEventDefinitionId The business event to raise on the fulfillment order if all lines have the same status. True
FulfillmentOrderRecordId The fulfillment order to raise the business event for. True
Payload The optional JavaScript Object Notation (JSON) payload to pass together with the business event. False

The flow returns IsSuccessful true if the business event was successfully raised.

Customer account and contact flows

Create or update an account

The Create or update an account flow creates or updates an existing account, based on the specified JSON payload.

Parameter Description Required
Payload The JSON representation of the account. True
Account ID The ID of the account to update. False

Note

The Account table has specific fields that are required in the JSON payload. To see what fields are required, go to Dataverse > Tables > All, find your table, and select Columns. Use the Required field to determine what's required.

The flow returns the ID of the created or updated account.

Create or update a contact

The Create or update a contact flow creates or updates an existing contact, based on the specified JSON payload.

Parameter Description Required
Payload The JSON representation of the contact. True
Contact ID The ID of the account to update. False

Note

The Contact table has specific fields that are required in the JSON payload. To see what fields are required, go to Dataverse > Tables > All, find your table, and select Columns. Use the Required field to determine what's required.

The flow returns the ID of the created or updated contact.

Order flows and Order product flows

Sales order creation

The Sales order creation flow creates a sales order, based on the specified JSON payload.

Parameter Description Required
Payload The JSON representation of the sales order and lines. True
ProviderId The ID of the calling provider. False

Note

Both the Order table and the Order Line table have specific fields that are required in the JSON payload. To see what fields are required, go to Dataverse > Tables > All, find your table, and select Columns. Use the Required field to determine what's required.

The flow returns the ID of the created sales order.

Raise lines and Aggregated order events

The Raise lines and Aggregated order events flow raises a business event on a sales order line. When this event is raised, a check is done to verify that all lines have the same status. If they have the same status, the specified order-level business event is raised at the header level.

Parameter Description Required
LineBusinessEventId The business event to raise on the line entity. True
LineRecordId The order line to raise the initial business event for. True
OrderBusinessEventId The business event to raise on the order if all lines have the same status. True
OrderRecordId The order to raise the business event for. True
Payload The optional JSON payload to pass together with the business event. False

The flow returns IsSuccessful true if the business event was successfully raised.

Raise sales order lines business event

The Raise sales order lines business event flow raises a business event for all lines on a sales order.

Parameter Description Required
SalesOrderId The order record for which a business event should be raised for each line. True
BusinessEventId The order line business event to raise for each line. True

The flow returns IsSuccessful true if the business event was successfully raised.

Unit conversion

The Unit conversion flow converts a quantity from one unit to another by using the unit conversions that are set up for a product.

Parameter Description Required
Quantity The quantity to convert. True
From unit The unit to convert from. True
To unit The unit to convert to. True

The flow returns the unit conversion, if a conversion exists.

Miscellaneous flows

Provider transformer

The Provider transformer flow applies a Power Query transformation that's defined on a provider, and then returns the transformed data. This flow looks up an active provider instance by ID, and checks for a transformation that has a matching source object name and destination object name.

If the type of transformation is a Dataverse entity, a record ID is required. The record ID that's provided is looked up for the entity that's defined on the transformation. If a record is found, it's used for the transformation.

If the type of transformation is JsonPayload, a value is required for the Payload parameter.

Parameter Description Required
Provider ID Any valid globally unique identifier (GUID). True
Source Object Name The source object name to look up in provider transformations. True
Destination Object Name The destination object name to look up in provider transformations. True
Payload The JSON payload to transform if the transformation type is JsonPayload. False
Record ID The record to look up for the entity that's associated with the transformation. False

Note

Either a Payload value or a Record ID value is required.

The Provider ID value is a GUID and is replaced when a provider is activated. You can enter any GUID for this parameter.

If the flow is successful, it returns a JSON representation of the transformed record.

Raise a business event

The Raise a business event flow raises a business event for the specified entity record and delivers an optional payload.

Parameter Description Required
BusinessEventDefinitionId The GUID of an existing business event. True
EntityRecordId The record ID of the entity that's associated with the business event. True
Payload An optional payload to deliver together with the business event. False

Note

The EntityRecordId value can be a comma-delimited list of record IDs. If a delimited list is provided, a business event is raised for each record.

The flow returns IsSuccessful true if the business event was successfully raised.