Microsoft Dynamics NAV and Airbase integration
Microsoft Dynamics NAV runs your core ERP and general ledger. Airbase manages your accounts payable, purchase orders, and spend oversight. Connecting the two keeps your vendor master, purchase orders, and GL entries synchronized across both systems. Purchase orders created in NAV flow into Airbase for approval and payment processing, and when Airbase approves and processes bills, the GL postings move back into NAV without re-keying. ml-connector bridges the different authentication methods and API contracts, handles NAV's webhook renewal cycle, and ensures every record carries a full audit trail.
What moves between them
Purchase orders and vendor master records flow from NAV into Airbase on a schedule or via NAV webhook notifications (with automatic renewal of the 3-day subscription). When Airbase approves a purchase request and processes a bill, ml-connector reads the bill record and the associated GL account mappings, then posts the GL entries into NAV's general ledger, allocated to the correct NAV GL accounts and dimensions. NAV GL accounts and Airbase GL accounts are mapped first so bill amounts always land on valid accounts. The flow is bidirectional: NAV is the source of truth for GL master data and purchase orders, while Airbase is the source of truth for bill approval, payment status, and spend oversight.
How ml-connector handles it
ml-connector stores the NAV OAuth 2.0 client credentials and Airbase API token encrypted, and manages the token refresh on each NAV call. Because NAV webhooks expire after 3 days, ml-connector tracks the subscription expiry and renews it before it lapses, falling back to polling if renewal fails. For Airbase, ml-connector uses the static bearer token on every request. Since NAV's purchase orders are not included in standard webhooks, ml-connector polls the NAV purchase order endpoint on a regular schedule to detect new or changed orders. When a bill is approved in Airbase, ml-connector retrieves the bill record via webhook or polling, maps the bill lines to NAV GL accounts and cost centers via the vendor and project dimensions already synchronized, and posts the GL entries into NAV using the journals endpoint. Every record carries a full audit trail, and failed GL postings are queued for replay. NAV on-premises deployments require the OData service to be enabled via the NAV Server Administration tool, and the OData port (7048 by default) must be open through the firewall.
A real-world example
A growing professional services firm uses Microsoft Dynamics NAV for its core ERP and general ledger, and Airbase for accounts payable and purchase order management across multiple cost centers and projects. Before the integration, the accounting team manually exported purchase orders from NAV and entered them into Airbase by hand, then when Airbase approved bills and generated GL entries, they had to re-enter those entries into NAV's general ledger, mapping each bill line to the correct project and cost center. This re-keying was error-prone and often delayed month-end close. With NAV and Airbase connected, each purchase order in NAV flows directly into Airbase, and when Airbase approves a bill, the GL entries automatically post into NAV's ledger with the correct cost center and project allocation. The accounting team now verifies the AP aging in Airbase and the GL balance in NAV, confident the two systems are in agreement, and month-end close no longer requires manual reconciliation of bills between systems.
What you can do
- Sync vendors and items from NAV to Airbase so spend management reflects the NAV master data.
- Replicate purchase orders from NAV into Airbase for approval and payment processing, with polling to detect new and changed orders.
- Post Airbase bills into NAV's general ledger after approval, allocated to the correct NAV GL accounts and cost centers.
- Renew NAV's webhook subscriptions automatically before the 3-day expiry to maintain continuous push notifications.
- Authenticate NAV via OAuth 2.0 and Airbase via static bearer token, with encrypted storage and a full audit trail on every record.
Questions
- Since NAV purchase orders are not in the standard webhook list, how does ml-connector keep them in sync with Airbase?
- ml-connector polls the NAV purchase order endpoint on a regular schedule to detect new and changed orders. This polling strategy ensures no order is missed while avoiding the need to push via a custom webhook subscription. Purchase order changes are batched and synchronized into Airbase on the polling interval.
- How does ml-connector handle NAV's 3-day webhook subscription expiry?
- ml-connector tracks the subscription creation time and renews the subscription before the 3-day window closes. If renewal fails, ml-connector falls back to polling until the subscription is re-established. This automatic renewal prevents push notifications from silently stopping.
- Which GL accounts and cost centers can Airbase bills post to in NAV?
- Airbase GL accounts and NAV GL accounts are mapped explicitly during setup. Airbase bills can only post to NAV GL accounts that exist in the mapping. The mapping also defines which NAV dimensions (such as cost center or project) are applied to each bill line, ensuring GL postings land on valid accounts and the allocation is correct for downstream reporting.
Related integrations
More Microsoft Dynamics NAV integrations
Other systems that connect to Airbase
Connect Microsoft Dynamics NAV and Airbase
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started