Microsoft Dynamics NAV and Dayforce integration
Microsoft Dynamics NAV runs finance and operations for small and mid-size businesses. Dayforce runs payroll and HR. Connecting the two keeps your workforce and general ledger aligned. Employee records from Dayforce keep NAV headcount current, and the labor cost journals Dayforce generates after each payroll run post into NAV's general ledger without manual re-keying. ml-connector bridges the very different authentication and polling models on each side.
What moves between them
The main flow runs from Dayforce into Microsoft Dynamics NAV. After each payroll run, ml-connector polls Dayforce for payroll cost allocations and employee records using the update date range query parameters. Labor cost journals are posted into NAV's general ledger and mapped to matching NAV GL accounts and dimensions. Employee records sync in the same direction so NAV headcount reflects Dayforce hires, terminations, and status changes. Because Dayforce is poll-only and has no webhook support, ml-connector refreshes the hourly OAuth bearer token on a schedule tied to your payroll calendar.
How ml-connector handles it
ml-connector stores both credential sets encrypted and refreshes the Dayforce bearer token before the one-hour expiry window, then queries changed employees and payroll allocations using the update date range filters. On the NAV side, it accepts the full tenant URL per customer and validates GL account and dimension paths against that instance. Because NAV webhooks expire after three days and require renewal, ml-connector polls Dayforce on a predictable schedule instead of managing subscription lifecycle. Cost centers and GL dimensions are mapped first, so every payroll journal line references a GL account and dimension that already exists in NAV. Dayforce tokens are refreshed proactively to avoid interruption, and the client-specific base URL is refreshed daily to minimize redirect overhead. Every record carries a full audit trail and can be replayed if a downstream NAV entry fails.
A real-world example
A mid-sized healthcare group runs Microsoft Dynamics NAV for billing, revenue cycle, and finance across three clinics, and uses Dayforce for payroll and HR across all locations. Before the integration, the accounting team extracted payroll registers from Dayforce every pay period and manually entered labor totals into NAV by hand, then spent several days in month-end close matching payroll headcount to the labor accounts in the ledger. With NAV and Dayforce connected, each payroll run's labor cost journals flow into NAV automatically, allocated to the correct clinic cost center and GL account, and employee records keep the two systems synchronized. Month-end close starts with payroll accounts reconciled, and the manual re-keying step is eliminated.
What you can do
- Post Dayforce payroll cost journals into Microsoft Dynamics NAV's general ledger after every pay run, allocated to the correct GL accounts and dimensions.
- Keep NAV employee records synchronized with Dayforce hires, terminations, and status changes.
- Query Dayforce for changed records within a date range on a payroll calendar schedule, with proactive token refresh before hourly expiry.
- Manage Dayforce client-specific URLs and OAuth 2.0 Resource Owner Password Credentials authentication, with daily URL refresh to minimize redirects.
- Maintain a full audit trail on every payroll and employee record, with the ability to replay failed entries into NAV.
Questions
- Which direction does data move between Microsoft Dynamics NAV and Dayforce?
- The main flow is from Dayforce into NAV. Employee records and payroll cost journals move from Dayforce into NAV, mapped to NAV GL accounts and dimensions. NAV GL entries are read-only, so ml-connector does not write financial data back into Dayforce.
- How does ml-connector handle Dayforce's one-hour token expiry and lack of webhooks?
- ml-connector refreshes the OAuth 2.0 bearer token proactively before the one-hour window expires, so tokens never expire mid-call. It polls Dayforce on a schedule tied to your payroll calendar using the update date range query parameters, eliminating the need to manage webhook subscriptions.
- How does the integration work with Microsoft Dynamics NAV's tenant-specific URLs and webhook expiry?
- ml-connector accepts the full NAV instance URL per customer and validates GL accounts and dimensions against that endpoint. Rather than relying on NAV webhooks (which expire after three days and require renewal), it polls Dayforce on a predictable payroll-aligned schedule, so webhook lifecycle is not a concern.
Related integrations
More Microsoft Dynamics NAV integrations
Other systems that connect to Dayforce
Connect Microsoft Dynamics NAV and Dayforce
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started