ml-connector
Microsoft Dynamics NAVAnaplan

Microsoft Dynamics NAV and Anaplan integration

Microsoft Dynamics NAV drives transactional ERP operations - GL entries, vendors, purchases, and sales. Anaplan drives budgeting, forecasting, and connected planning. Connecting the two puts your planning models on a foundation of current transactional data from NAV so that budgets and forecasts stay grounded in reality. GL balances, vendor lists, and product dimensions flow from NAV into Anaplan planning models on a schedule you control, keeping your forecast baseline aligned with actual spend and asset positions.

How Microsoft Dynamics NAV works

Microsoft Dynamics NAV (cloud as Dynamics 365 Business Central online, or on-premises) exposes vendors, customers, purchase orders, purchase invoices, sales invoices, sales orders, GL accounts, GL entries, dimensions, items, employees, and journals through OData v4 REST APIs (primary) or legacy SOAP web services. Authentication uses OAuth 2.0 client credentials via Microsoft Entra ID or basic auth with a web service access key. NAV supports webhooks (3-day expiry with ~30 second batching and per-entity refresh limits) or polling. GL accounts and entries are immutable once posted. On-premises installations require firewall access to the OData port (default 7048) and administrator setup of the NAV Server to enable API services.

How Anaplan works

Anaplan is a cloud planning platform that models financial budgets, workforce plans, supply chain demand, and sales forecasts as workspaces containing models, which contain modules (like sheets) and lists (dimensions). Data flows into Anaplan via REST API using basic authentication (username and password), certificate-based authentication, or OAuth2 with a 35-minute token expiry. Anaplan offers polling only; there are no outbound webhooks. All transactional data must map into planning list items or module line items since Anaplan has no native invoice, vendor, or GL account resources. The tenant-wide rate limit is 600 requests per minute; exceeding this returns HTTP 429 and triggers backoff. Bulk import and export actions must be pre-created in the model; the API cannot create new actions.

What moves between them

The primary flow runs from Dynamics NAV into Anaplan. GL entries post at month-end or as configured and are pulled into Anaplan planning models as line items in budget and actuals modules, mapped to the matching GL accounts and cost centers already defined in Anaplan. Vendor master data, item master data, and dimension hierarchies flow the same direction to seed Anaplan planning lists. Purchase order details can also populate a supply chain planning module. Anaplan planning data, budgets, and forecasts remain in Anaplan and do not write back to NAV, since Anaplan is read-mostly on the ERP side.

How ml-connector handles it

ml-connector stores NAV OAuth 2.0 credentials and Anaplan basic or certificate authentication encrypted and polls NAV OData endpoints on a weekly or monthly schedule tied to your GL posting cycle. Because NAV webhooks expire after 3 days and Anaplan has no webhook ingestion, polling is the reliable pattern for this pair. Dimensions are mapped first so that every GL line item in Anaplan references a valid cost center, profit center, or other dimension that already exists in the planning model. ml-connector handles Anaplan's 600 request per minute rate limit by batching reads and backing off on HTTP 429 responses, and it tracks token expiry on both sides so credential renewal does not cause outages. Every record carries a full audit trail and can be replayed if a downstream Anaplan load fails.

A real-world example

A regional manufacturing business runs Dynamics NAV for ERP and Anaplan for annual budgeting and rolling forecasts by plant and cost center. Before the integration, the finance team exported GL balances and vendor spending from NAV every month, manually loaded them into Anaplan as actuals, and then reconciled the budget variance reports. With NAV and Anaplan connected, GL entries and vendor data load into Anaplan automatically on a monthly cadence, actuals are always current, and the forecast variance analysis starts with reliable baseline numbers. Planning cycles move faster because the manual export and load step is gone.

What you can do

  • Poll Dynamics NAV GL entries, vendors, items, and dimensions on a schedule aligned with your GL posting cycle.
  • Load NAV transactional data into Anaplan planning models as list items and module line items, mapped to the planning dimension structure.
  • Authenticate NAV via OAuth 2.0 or basic auth and Anaplan via basic auth or certificate-based authentication.
  • Handle Anaplan's 600 requests per minute rate limit with backoff and retry, and NAV's webhook expiry with polling-based refresh.
  • Maintain a full audit trail on every record pulled from NAV and loaded into Anaplan for compliance and troubleshooting.

Questions

Which direction does data move between Dynamics NAV and Anaplan?
The flow is from Dynamics NAV into Anaplan. GL entries, vendors, items, and dimensions are pulled from NAV and loaded into Anaplan planning models as line items. Planning data such as budgets and forecasts remain in Anaplan and do not write back to NAV. GL accounts in NAV are immutable once posted, so ml-connector treats Anaplan as read-mostly on the ERP side.
How does the integration handle Anaplan's rate limits and NAV's webhook expiry?
Anaplan enforces a 600 request per minute limit tenant-wide; ml-connector batches reads and backs off with exponential retry on HTTP 429. NAV webhooks expire after 3 days, so rather than chase subscription renewal, ml-connector uses polling on a predictable weekly or monthly schedule tied to your GL posting cycle, which is more reliable for planning data that does not need real-time velocity.
What authentication setup is required on each side?
Dynamics NAV requires OAuth 2.0 client credentials configured in Microsoft Entra ID (recommended) or basic auth with a web service access key. Anaplan requires basic authentication (username and password) or certificate-based authentication. ml-connector stores both credential sets encrypted and handles token refresh automatically, with alerts if a credential is about to expire.

Related integrations

Connect Microsoft Dynamics NAV and Anaplan

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started