Integrating Business Central with Salesforce

Patterns for connecting Business Central to Salesforce — accounts and contacts, opportunities to orders, and the choice between iPaaS and direct integration.

Updated 2026-01-22

Plenty of mid-market companies run Salesforce for CRM and Business Central for ERP, and need them to talk. Microsoft doesn't ship a first-party connector for this pair (it ships one for Dynamics 365 Sales, naturally), so the integration is built — by partner, ISV, or in-house — using one of three patterns.

Pattern 1: iPaaS middleware. The most common approach. A platform like MuleSoft, Boomi, Azure Logic Apps, Tray.io, Workato, or Power Automate sits between the two systems and synchronises records. The middleware handles transformation, retry, error handling, and observability. iPaaS scales well, supports complex mappings, and is what Salesforce customers typically already have for other integrations.

Pattern 2: ISV connector from AppSource or AppExchange. Several ISVs publish packaged Business Central ↔ Salesforce connectors — typically pre-built mappings for Accounts/Contacts/Opportunities/Orders with a configuration UI. Faster to deploy than custom iPaaS, more rigid in shape. Suitable for standard integrations where the entity model matches both products without too much customisation.

Pattern 3: Direct API-to-API. Code that calls Salesforce's REST API and Business Central's v2.0 API directly, hosted in an Azure Function or similar. Cheapest to start, hardest to maintain — every change in either system risks breaking the integration. Reasonable only for the simplest, most-stable integrations.

The canonical mapping.

  • Salesforce AccountBC Customer / Vendor, matched on Tax ID or a custom external-ID field.
  • Salesforce ContactBC Contact.
  • Salesforce Opportunity (Closed Won)BC Sales Quote or Sales Order. Won opportunities push into BC; BC posts the invoice and pushes back the invoice number and status.
  • BC Invoice / PaymentSalesforce custom Invoice and Payment records, so sales reps see paid status.

Identity and ownership. Decide which system is the source of truth for each entity. Typically Salesforce owns leads/opportunities, BC owns inventory/finance, and customers are owned by Salesforce up to opportunity-closed-won, then BC takes over for the customer record's financial side.

Pricing and product catalog. Items live in BC; published to Salesforce via the connector as Products. Salesforce Price Books map to BC price lists. Keep the catalog one-way (BC → SF) to avoid sync conflicts on something as critical as pricing.

Inventory. Real-time inventory in Salesforce is rare and expensive. The pragmatic pattern: show last-known stock with a refresh timestamp; reserve inventory only at order-creation time in BC.

Operational reality. Two production systems with continuous sync is more demanding than either alone. Allow budget for ongoing maintenance, monitoring, and quarterly reconciliation. Build the integration tests before you build the integration.

Related guides