Plex and Dayforce integration
Plex runs manufacturing, inventory, and financials. Dayforce runs payroll and HR. Connecting the two keeps your workforce records and labor costs synchronized. Payroll journals from Dayforce post into Plex's general ledger allocated to the correct cost centers and departments, and employee hires, terminations, and role changes in Dayforce flow into Plex's HR module. ml-connector bridges the different authentication schemes, manages the hourly token refresh on the Dayforce side, and keeps the two systems aligned on a schedule that matches your payroll calendar.
What moves between them
The integration runs from Dayforce into Plex. Employees, organizational units, and job titles flow from Dayforce into Plex's HR module to keep headcount aligned. Payroll summaries and cost allocations generated after each pay cycle in Dayforce are read by ml-connector and posted into Plex's general ledger, mapped to the matching Plex GL accounts and cost centers. The flow is one-way from payroll into ERP; Plex HR and financial records do not flow back into Dayforce. Synchronization is scheduled, typically running a few hours after each payroll run completes in Dayforce.
How ml-connector handles it
ml-connector maintains the OAuth 2.0 credential set for each system encrypted. On the Dayforce side, it manages the 1-hour token expiry by refreshing the ROPC bearer token before each poll cycle to avoid expired-token errors. On the Plex side, it accepts the tenant-specific Plex instance URL and routes REST calls through Plex Connect (or SOAP calls through the legacy Web Services endpoint if the customer prefers). The integration filters Dayforce employee and payroll records by modified_date to avoid re-processing unchanged data. Employee records are mapped to Plex HR entities; payroll GL documents and cost center allocations are parsed from Dayforce and posted to Plex GL accounts, with duplicate detection via external reference ID to handle Dayforce reconciliations and corrections. The Dayforce integration user must have HCM Anywhere API permissions granted in the Dayforce admin console; missing permissions cause API calls to fail silently or return HTTP 403. Because both systems are polling-only, ml-connector polls on a calendar-driven schedule rather than reacting to real-time events, reducing the frequency and cost of API calls.
A real-world example
A mid-sized discrete manufacturer operates Plex for production scheduling and inventory, and Dayforce for payroll across three plants. Before the integration, the finance team pulled payroll registers from Dayforce each pay period and manually coded each pay line to the correct plant cost center in an Excel reconciliation sheet, then entered the totals into Plex. Month-end close took two days of reconciling headcount and labor costs. With Plex and Dayforce connected, payroll GL documents flow automatically into Plex after each payroll run, already allocated to the correct plant cost centers. Employee records stay in sync, and the manual reconciliation step is eliminated. The finance team now completes labor account reconciliation in hours instead of days.
What you can do
- Sync Dayforce employees and organizational units into Plex HR to keep headcount and department structure aligned.
- Post Dayforce payroll GL documents into Plex's general ledger after each pay cycle, allocated to the correct cost centers.
- Map Dayforce job titles and roles to Plex HR entities so employee records are complete and role changes are reflected.
- Manage Dayforce OAuth 2.0 ROPC token refresh on a 1-hour cycle to avoid authentication timeouts.
- Poll both systems on a schedule tied to your payroll calendar, with duplicate detection and a full audit trail on every record.
Questions
- What employee and payroll data moves from Dayforce into Plex?
- Dayforce employees, organizational units, job titles, and employee balance data flow into Plex's HR module to keep workforce records synchronized. Payroll GL documents and cost allocations generated after each pay run in Dayforce are posted to Plex's general ledger, mapped to the correct GL accounts and cost centers in Plex. This is a one-way flow from Dayforce into Plex; Plex HR and GL records do not flow back.
- How does ml-connector handle Dayforce's 1-hour token expiry?
- Dayforce OAuth 2.0 tokens expire after 3600 seconds. ml-connector monitors token age and refreshes the bearer token before each poll cycle using the Resource Owner Password Credentials (ROPC) grant, so authentication never fails due to token expiry. The client-specific Dayforce URL is also refreshed daily from the ClientMetadata endpoint to minimize redirect overhead.
- Why do both systems require polling instead of webhooks?
- Neither Plex nor Dayforce offers native outbound webhooks to external integrations. Plex requires polling the REST API or reading SFTP DataSources extracts; Dayforce offers Integration Studio scheduled syncs but not external event-driven pushes. ml-connector polls both systems on a calendar-driven schedule tied to your payroll cycle, filtering by modified_date to fetch only changed records and reduce API call volume.
Related integrations
More Plex integrations
Other systems that connect to Dayforce
Connect Plex and Dayforce
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started