Integration guides
Integrating Dynamics 365 with Azure, partner systems, and the web — patterns, messaging, APIs, identity, resilience, and the Azure services that carry the load.
Every Dynamics 365 estate integrates with something: an ERP across the CRM line, a bank, a web shop, a data lake, SAP, Salesforce, a legacy system with no API. This section is the architecture reference for that work — the patterns (outbox, saga, idempotency, CQRS, anti-corruption layers, polling versus push), the messaging and eventing options (Service Bus, Event Grid, webhooks, business events), and the API surfaces on each product.
The Azure services sub-section covers Functions, Logic Apps, Data Factory, Synapse Link, Fabric, and the virtual network data gateway. API and identity covers Graph, APIM in front of Dataverse, batch operations, and external identity. Resilience and ops covers retries, circuit breakers, observability, OpenTelemetry, and integration testing. Third-party systems covers the named integrations — SAP S/4HANA, Salesforce, NetSuite, HubSpot, Snowflake, Databricks, Shopify, Stripe, Twilio, and more.
Start with the CRM integration patterns overview and the Azure services overview, then the pattern that matches your reliability requirement. If your integration is F&O to Dataverse, dual-write in the Finance & SCM section is the starting point.
Start here
- 1Integration patterns for Dynamics 365 CRMThe standard integration patterns for CRM-side Dynamics 365 — webhooks, Dataverse plug-ins, Service Bus integration, virtual tables, and pull vs push.
- 2Integrating Dynamics 365 with Azure servicesHow Dynamics 365 plugs into Azure — Service Bus, Logic Apps, Functions, API Management, Event Grid, and the iPaaS patterns that actually work.
- 3Azure Service Bus integration with DataverseHow Dataverse publishes change events to Azure Service Bus — registration, message format, queues vs topics, and resilient consumer patterns.
- 4Webhooks vs events in DataverseHow Dataverse exposes change notifications — webhooks, service endpoints to Azure Service Bus / Event Hub / Event Grid.
- 5Idempotency in Dynamics 365 integrationsWhy integrations must be idempotent — patterns for safe retries, deduplication, correlation IDs.
- 6The outbox pattern with Service BusA resilient integration pattern for Dynamics 365 — combining an outbox table with Service Bus to deliver guaranteed-once messaging across systems.
- 7The Business Central API and OData servicesHow external systems talk to Business Central — the v2.0 REST API, OData web services, bound actions, and call limits.
- 8Microsoft Fabric and Dynamics 365How Microsoft Fabric and OneLake change Dynamics 365 analytics — Synapse Link, lakehouses, and the migration from Export to Data Lake.
- 9Azure Synapse Link for DataverseHow Synapse Link replicates Dataverse data to Azure Data Lake Storage continuously — architecture, configuration, query patterns.
- 10Integrating Dynamics 365 with SAP S/4HANA: two-tier ERP patternsHow Dynamics 365 Finance, Supply Chain, or Business Central coexists with SAP S/4HANA at group level — what to integrate, which SAP interfaces to use.
All Integrations guides
Architecture patterns →(14)
- Anti-corruption layers for Dynamics 365 integrationsHow anti-corruption layers protect Dynamics 365 from external system model leakage — translation patterns, when to apply ACL, and the maintenance discipline.Updated 2026-08-25
- API Gateway patterns for Dynamics 365How API gateways enhance Dynamics 365 integration architecture — Azure API Management, security, rate limiting, transformation.Updated 2026-08-25
- CQRS pattern for Dynamics 365How CQRS (Command Query Responsibility Segregation) applies to Dynamics 365 architectures — write vs read separation, projection patterns.Updated 2026-05-01
- Custom PCF controls vs embedded canvas apps in model-driven formsTwo ways to put custom UI on a Dynamics 365 form — a Power Apps component framework control or an embedded canvas app — and how to choose based on data access.Updated 2026-09-02
- Dataverse plug-ins vs Power Automate for integrations: when to use whichThe decision between a C# plug-in and a Power Automate flow for integration logic in Dataverse — transactions, latency, throughput, ownership.Updated 2026-09-02
- Event-driven architecture for Dynamics 365How to design event-driven integrations around Dynamics 365 — event sources, brokers, consumers, and the patterns that keep systems loosely coupled.Updated 2026-05-01
- Eventually consistent integrations with Dynamics 365How to design and operate eventually-consistent integrations — consistency vs availability trade-offs, conflict resolution, and the UX implications.Updated 2026-05-01
- Idempotency in Dynamics 365 integrationsWhy integrations must be idempotent — patterns for safe retries, deduplication, correlation IDs.Updated 2026-08-05
- Integrating Dynamics 365 with Zapier and Make: when to use them instead of Power AutomateWhere Zapier and Make (formerly Integromat) fit next to Power Automate for Dynamics 365 — the honest cases for each, the governance problems.Updated 2026-09-02
- Integration patterns for Dynamics 365 CRMThe standard integration patterns for CRM-side Dynamics 365 — webhooks, Dataverse plug-ins, Service Bus integration, virtual tables, and pull vs push.Updated 2026-05-01
- Polling vs push patterns for Dynamics 365 integrationsHow to choose between polling and push integration patterns for Dynamics 365 — trade-offs, performance, freshness, and when each fits.Updated 2026-05-01
- SOAP vs REST vs GraphQL for Dynamics 365How the three API styles compare for Dynamics 365 integrations — capabilities, when each fits, and the practical considerations for choosing.Updated 2026-05-01
- The outbox pattern with Service BusA resilient integration pattern for Dynamics 365 — combining an outbox table with Service Bus to deliver guaranteed-once messaging across systems.Updated 2026-05-05
- The saga pattern for cross-system Dynamics 365 transactionsHow to handle multi-system business transactions that need to be atomic across Dynamics 365 and external systems — orchestration vs choreography, compensation.Updated 2026-08-07
Azure services →(8)
- Azure Data Factory with Dynamics 365How to use Azure Data Factory for Dynamics 365 data integration — connectors, common patterns, performance tuning.Updated 2026-08-25
- Azure Functions for Dynamics 365 integrationsHow to use Azure Functions to extend and integrate Dynamics 365 — patterns, authentication, lifecycle, performance, and the trade-offs vs Power Automate.Updated 2026-08-25
- Azure Service Bus integration with DataverseHow Dataverse publishes change events to Azure Service Bus — registration, message format, queues vs topics, and resilient consumer patterns.Updated 2026-08-25
- Azure Synapse Link for DataverseHow Synapse Link replicates Dataverse data to Azure Data Lake Storage continuously — architecture, configuration, query patterns.Updated 2026-08-25
- Logic Apps Standard vs ConsumptionThe two Logic Apps hosting models — Standard (single-tenant) vs Consumption (multi-tenant) — and how to choose between them for Dynamics 365 integrations.Updated 2026-05-03
- Logic Apps with Dynamics 365How Azure Logic Apps complement Power Automate for Dynamics 365 integrations — when to choose which, hybrid patterns, and operational realities.Updated 2026-05-01
- Microsoft Fabric and Dynamics 365How Microsoft Fabric and OneLake change Dynamics 365 analytics — Synapse Link, lakehouses, and the migration from Export to Data Lake.Updated 2026-05-01
- Virtual network data gateway for Dynamics 365How the virtual network (VNet) data gateway enables Dynamics 365 and Power Platform to access data in private Azure VNets — architecture, configuration.Updated 2026-05-01
Eventing & messaging →(7)
- Business Central webhooks vs Azure Service Bus subscribersTwo ways for external systems to learn that something changed in Business Central — API webhook subscriptions or a Service Bus queue fed from AL.Updated 2026-09-02
- Change tracking and delta queries in DataverseHow Dataverse change tracking enables efficient incremental sync — enabling per table, using delta tokens, and integration patterns.Updated 2026-05-01
- Event Grid with DataverseHow Azure Event Grid integrates with Dataverse — schema, subscribers, when to use Event Grid vs Service Bus, and operational patterns.Updated 2026-05-01
- Message replay and poison queue handling for Dynamics 365 integrationsHow to design Dynamics 365 integrations that survive transient failures and handle poison messages — dead-letter queues, replay tooling, idempotency.Updated 2026-05-01
- MQTT and IoT integration with Dynamics 365How MQTT protocol fits IoT scenarios for Dynamics 365 — Azure IoT Hub, message routing, and the patterns for getting device telemetry into Dynamics workflows.Updated 2026-05-01
- Webhooks in Business CentralHow webhook subscriptions work in Business Central — subscribing, renewing, payloads, and the realities of consuming change notifications.Updated 2026-05-01
- Webhooks vs events in DataverseHow Dataverse exposes change notifications — webhooks, service endpoints to Azure Service Bus / Event Hub / Event Grid.Updated 2026-05-01
API & identity →(14)
- Azure API Management in front of DataverseHow API Management acts as a façade for Dynamics 365 APIs — rate limiting, authentication, transformation, observability, and developer portal.Updated 2026-08-25
- B2C authentication with Dynamics 365 — Entra External ID and beyondHow to authenticate external customers and partners against Dynamics 365 — Entra External ID (formerly Azure AD B2C), Power Pages authentication.Updated 2026-08-25
- Batch operations in the Dataverse Web APIHow to make multiple Dataverse Web API calls in one HTTP round-trip — $batch requests, change sets, and the performance gains at scale.Updated 2026-08-25
- Dataverse row-level security for Entra ID B2B guest usersHow to give partners, contractors, and customers direct Dynamics 365 access as Entra B2B guests without exposing more than their own rows — licensing.Updated 2026-09-02
- Entra External ID for customer accessHow Microsoft Entra External ID provides customer-grade identity for Power Pages portals and external Dynamics 365 access — sign-up flows, branding.Updated 2026-08-03
- FetchXML vs OData in DataverseTwo query languages for Dataverse — what each does, performance and capability differences, and when to choose which.Updated 2026-05-01
- GraphQL and Dynamics 365How GraphQL fits with Dynamics 365 — wrapping OData as GraphQL, third-party tooling, where GraphQL helps vs hurts, and the operational considerations.Updated 2026-05-01
- Integrating Copilot Studio agents with external APIsHow Copilot Studio agents call systems outside Microsoft — REST actions from OpenAPI, custom connectors, Power Automate flows, and MCP servers.Updated 2026-09-02
- Integrating Copilot Studio with MCP serversHow Model Context Protocol servers plug into Copilot Studio agents, what they change compared with hand-built actions.Updated 2026-09-02
- Integrating Dynamics 365 with custom mobile appsWhen the Power Apps mobile app and Field Service mobile are not enough — building a native or cross-platform app against Dataverse and Business Central.Updated 2026-09-02
- Microsoft Graph and DataverseHow Microsoft Graph connects Microsoft 365 data to Dynamics 365 — Graph connectors, indexing Dataverse content, and the Copilot enablement story.Updated 2026-05-01
- Microsoft Graph API with Business CentralHow Business Central exposes data through Microsoft Graph — the new unified API surface, what's available, authentication.Updated 2026-05-01
- Microsoft Graph connectors for Dynamics 365How Graph connectors index Dynamics 365 and Business Central data into Microsoft Search and Microsoft 365 Copilot — what they're for, how they work.Updated 2026-08-31
- Power Automate connectors for Dynamics 365The standard and premium Power Automate connectors for Dynamics 365 — what each one does, the differences, and the licensing implications.Updated 2026-05-01
Resilience & ops →(6)
- Circuit breakers in Dynamics 365 integrationsHow the circuit-breaker pattern protects Dynamics 365 integrations from cascading failures — implementation in Azure Functions, Logic Apps.Updated 2026-05-01
- Dual-write troubleshooting patternsThe failures that recur on every dual-write implementation between Finance and Operations and Dataverse — initial sync stalls, map errors, reference data gaps.Updated 2026-09-02
- Integration testing patterns for Dynamics 365How to test integrations for Dynamics 365 — unit, contract, integration, end-to-end tests, and the patterns that catch regressions before production.Updated 2026-05-01
- Observability for Dynamics 365 integrationsHow to build observability into Dynamics 365 integrations — logs, metrics, traces, correlation IDs.Updated 2026-05-01
- OpenTelemetry with Dynamics 365 integrationsHow OpenTelemetry standardises observability in Dynamics 365 architectures — instrumentation, exporters, distributed tracing.Updated 2026-05-01
- Retry policies with Azure services for Dynamics 365 integrationsHow to implement retry policies in Azure-based Dynamics 365 integrations — exponential backoff, idempotency, circuit-breaker integration.Updated 2026-05-01
Data movement →(14)
- Bring-your-own-storage patterns for DataverseWhat 'BYOS' actually means in the Dataverse world — customer-managed keys, your own data lake for Synapse Link, SharePoint and Azure Blob for files.Updated 2026-09-02
- Common Business Central ISV add-onsCategories of Business Central ISV add-ons that customers most often install — country localizations, document automation, EDI, banking.Updated 2026-05-01
- Data integration for real-time marketing in Customer Insights — JourneysHow real-time marketing journeys consume external data — trigger events, custom triggers from external sources.Updated 2026-05-01
- Data lake export for Dynamics 365 Finance and OperationsHow F&O publishes data to Azure Data Lake — Bring Your Own Database (BYOD) legacy pattern, Export to Data Lake, Synapse Link for F&O, and Fabric Link for D365.Updated 2026-05-01
- EDI with Business CentralHow EDI integration works with Business Central — direct EDI vendors, AppSource connectors, document mapping, and the trade partner setup.Updated 2026-05-01
- Integrating Business Central with Microsoft 365How Business Central plugs into Outlook, Teams, Excel, SharePoint, OneDrive, and the rest of Microsoft 365.Updated 2026-05-01
- Integrating Business Central with SalesforcePatterns for connecting Business Central to Salesforce — accounts and contacts, opportunities to orders, and the choice between iPaaS and direct integration.Updated 2026-05-01
- Integrating Business Central with ShopifyHow Microsoft's Shopify connector for Business Central works — items, orders, inventory sync, fulfilment, and the operational realities.Updated 2026-05-01
- Integrating Dataverse with Azure Cosmos DB: scale-out storage patternsWhen Dataverse is the wrong place for high-volume data, and how to pair it with Azure Cosmos DB — the offload pattern, virtual tables, event feeds.Updated 2026-09-02
- Integrating Dataverse with Microsoft Fabric: Link to Fabric for near-real-time analyticsHow Dataverse's Link to Microsoft Fabric works, how it differs from Synapse Link, what 'real-time' actually means.Updated 2026-09-02
- Integrating Dynamics 365 with Azure servicesHow Dynamics 365 plugs into Azure — Service Bus, Logic Apps, Functions, API Management, Event Grid, and the iPaaS patterns that actually work.Updated 2026-05-01
- Integrating Finance and Operations with DatabricksHow Dynamics 365 Finance and Supply Chain data reaches Azure Databricks — Synapse Link as the source, Delta Lake as the common format.Updated 2026-09-02
- Integrating Finance and Operations with SnowflakeThe realistic routes for landing Dynamics 365 Finance and Supply Chain data in Snowflake — Synapse Link and Fabric as the export layer.Updated 2026-09-02
- Microsoft Teams integration patterns with Dynamics 365How Dynamics 365 integrates with Microsoft Teams — collaboration on records, embedded apps, adaptive cards, Copilot, and meeting recording flows.Updated 2026-05-01
Third-party systems →(8)
- Integrating Dynamics 365 Sales with Salesforce: cutover and coexistence patternsHow to run Dynamics 365 Sales alongside Salesforce during a migration or a long-term split — sync patterns, system-of-record rules, and what breaks in practice.Updated 2026-09-02
- Integrating Dynamics 365 with DocuSign and Adobe Acrobat SignE-signature patterns for Dynamics 365 Sales, Customer Service, and Business Central — the vendor-built apps, the Power Automate route.Updated 2026-09-02
- Integrating Dynamics 365 with HubSpot: marketing sync patternsHow to run HubSpot for marketing alongside Dynamics 365 Sales — the native HubSpot sync, what it moves, where it stops.Updated 2026-09-02
- Integrating Dynamics 365 with Mailchimp and SendGridTwo different email problems — bulk marketing through Mailchimp and transactional email through SendGrid — and the patterns for each against Dynamics 365 Sales.Updated 2026-09-02
- Integrating Dynamics 365 with NetSuite during a migrationThe coexistence and data-extraction patterns for moving from NetSuite to Dynamics 365 — SuiteTalk, SuiteQL, saved searches, parallel running.Updated 2026-09-02
- Integrating Dynamics 365 with SAP S/4HANA: two-tier ERP patternsHow Dynamics 365 Finance, Supply Chain, or Business Central coexists with SAP S/4HANA at group level — what to integrate, which SAP interfaces to use.Updated 2026-09-02
- Integrating Dynamics 365 with Stripe and PayPalPayment integration patterns across Dynamics 365 — pay-by-link from Business Central and Sales, webhook-driven reconciliation, portal checkout.Updated 2026-09-02
- Integrating Dynamics 365 with Twilio for SMS and voiceWhen Twilio is the right choice next to Dynamics 365's own channels, and the patterns for outbound SMS, inbound replies, click-to-call.Updated 2026-09-02