Microsoft Dynamics NAV and Deel integration
Microsoft Dynamics NAV runs your accounting and operations. Deel runs global payroll and workforce management. Connecting them keeps your general ledger and your employee data in agreement. Payroll runs flow from Deel into NAV with GL entries posted to the correct accounts and dimensions, worker changes keep headcount aligned, and invoices from Deel post into accounts payable without re-keying.
What moves between them
The main flow runs from Deel into Microsoft Dynamics NAV. After each payroll run, ml-connector reads Deel's payslip and invoice data and posts the labor cost journals into NAV's general ledger, mapped to the correct GL accounts and cost center dimensions in NAV. Worker records from Deel flow into NAV so employee headcount, status, and cost center assignments reflect Deel hires, terminations, and rehires. Deel's payment invoices are posted to NAV accounts payable with vendor names and amounts. Because NAV GL accounts are read-only, ml-connector never writes financial entries back into Deel.
How ml-connector handles it
ml-connector handles the different credential types on each side: OAuth 2.0 client credentials to authenticate against both NAV and Deel, storing both securely encrypted. Deel webhooks carry HMAC-SHA256 signatures that ml-connector verifies before processing employee and payroll events. Because NAV webhooks expire after 3 days, ml-connector monitors the subscription state and renews them before expiry, or can poll Deel data on a schedule tied to your payroll cycle instead. NAV requires both a tenant ID and company ID in the URL, and each customer provides their instance URL for on-premises deployments. When Deel's payslips and invoices arrive, ml-connector maps Deel's cost center and department codes to NAV's dimensions before posting, ensuring every payroll journal lands on a valid NAV GL account. Deel rate-limits with HTTP 429; ml-connector backs off with exponential jitter and retries. Every record carries a full audit trail and can be replayed if a downstream NAV call fails.
A real-world example
A mid-sized professional services firm runs Microsoft Dynamics NAV for accounting and operations, and uses Deel to manage contractors and employees across eight countries. Before the integration, the finance team received payroll invoices from Deel each month, manually mapped them to NAV cost centers and GL accounts, and re-entered the amounts into NAV's accounts payable. Employee status changes in Deel were not synced to NAV, making headcount reports unreliable at month-end close. With NAV and Deel connected, each payroll run's invoices post automatically to NAV with the correct dimensions, and employee hire and termination events flow into NAV in near real-time, so the general ledger and headcount are reconciled before close begins, and no manual invoice entry is needed.
What you can do
- Post Deel payroll invoices and labor cost data into Microsoft Dynamics NAV's general ledger, mapped to the correct GL accounts and cost center dimensions.
- Keep NAV employee headcount aligned with Deel hires, terminations, rehires, and status changes in real-time via webhooks.
- Map Deel cost center and department codes to NAV dimensions so invoices and payroll land on valid accounts.
- Authenticate Deel with OAuth 2.0 bearer tokens and HMAC-SHA256 webhook verification, and NAV with OAuth 2.0 client credentials.
- Monitor NAV webhook subscriptions and renew them before 3-day expiry, or poll on a schedule tied to your payroll calendar with retries and audit trails.
Questions
- Which direction does data move between Microsoft Dynamics NAV and Deel?
- The main flow is Deel into NAV. Payroll invoices, labor cost data, and worker records move from Deel into NAV, while cost center and department codes are mapped to NAV dimensions. Because NAV GL accounts are read-only, ml-connector does not write financial entries back into Deel.
- How does ml-connector handle Deel's webhook signature verification and NAV's 3-day subscription expiry?
- ml-connector verifies every Deel webhook using HMAC-SHA256 against the raw request body before parsing JSON, rejecting unsigned or tampered payloads. For NAV, ml-connector monitors webhook subscription timestamps and automatically renews them before the 3-day expiry window closes, preventing gaps in real-time sync. If webhooks are disabled, ml-connector can poll Deel and NAV on a schedule instead.
- What happens if Deel rate-limits or a payroll invoice fails to post into NAV?
- When Deel returns HTTP 429, ml-connector backs off with exponential jitter and retries the request. If a NAV GL posting fails, the record is queued for replay with its full audit trail, allowing a single retry to recover without losing data or creating duplicate entries in the general ledger.
Related integrations
More Microsoft Dynamics NAV integrations
Other systems that connect to Deel
Connect Microsoft Dynamics NAV and Deel
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started