ml-connector
PlexADP

Plex and ADP integration

Plex runs manufacturing and finance. ADP runs payroll and HR. Connecting the two keeps your workforce and your general ledger in agreement. New hires and terminations in ADP line up with Plex departments and cost centers, and the labor cost journals ADP produces after each payroll run post into Plex's general ledger without re-keying. ml-connector handles the very different APIs on each side and moves the data on a schedule you control.

How Plex works

Plex is a cloud-native ERP and MES platform that exposes suppliers, purchase orders, invoices, GL accounts, customers, sales orders, inventory, parts, and payments through REST business document APIs and legacy SOAP datasources. The cloud product authenticates with OAuth 2.0 bearer tokens at https://accounts.plex.com/oauth2/token, or via basic authentication with username, password, and company code (PCN) for legacy SOAP. Plex has no native webhook system, so payroll records are read by polling on a configurable interval, typically 5 to 15 minutes, filtering by modified_date or created_date.

How ADP works

ADP exposes workers, payroll processing, pay distributions, pay statements, general ledger documents, validation tables, work assignments, and cost center data through ADP API Central, a paid REST add-on. Every call requires OAuth 2.0 client credentials and a mutual TLS client certificate that is presented at the TLS layer on connection; the handshake fails without the certificate. ADP can push worker and payroll events such as hire, termination, rehire, and pay-data changes to a registered webhook endpoint, but general ledger documents are read-only output from payroll processing and cannot be written back.

What moves between them

The main flow runs from ADP into Plex. After each payroll run, ml-connector reads ADP's general ledger documents and posts the labor cost journals into Plex's general ledger, mapped to the matching Plex GL accounts and cost centers. Worker records flow the same direction so Plex headcount reflects ADP hires, terminations, and rehires. Cost centers, departments, and job codes are aligned in both directions so payroll allocations land on valid Plex dimensions. GL postings are read-only in ADP, so ml-connector never writes financial entries back to payroll.

How ml-connector handles it

ml-connector stores both credential sets encrypted and presents the ADP client certificate at the TLS layer on every request, refreshing the ADP OAuth token when a call returns 401. On the Plex side it sends OAuth 2.0 bearer tokens and validates entity paths against the configured instance. Because Plex offers no webhooks, it polls ADP general ledger documents and worker data on a schedule tied to your payroll calendar. Cost centers and departments are mapped first, so every payroll journal line references a GL account and cost center that already exists in Plex. ADP rate limits return HTTP 429 per gateway node, so ml-connector backs off and retries. Every record carries a full audit trail and can be replayed if a downstream call fails.

A real-world example

A mid-sized discrete manufacturer in automotive runs Plex ERP for production, procurement, and finance, and uses ADP for payroll across two plants. Before the integration, the finance team exported payroll registers from ADP every pay period and re-entered the labor totals into Plex by hand, spending the first days of month-end close chasing differences between HR headcount and the labor accounts in the ledger. With Plex and ADP connected, each payroll run's GL document flows into Plex automatically, allocated to the cost center for each plant, and worker changes keep the two systems aligned. Month-end close starts with the labor accounts already reconciled.

What you can do

  • Post ADP payroll GL documents into Plex's general ledger after every pay run, allocated to the correct cost centers.
  • Keep Plex headcount aligned with ADP hires, terminations, and rehires.
  • Map ADP cost centers, departments, and job codes to Plex GL dimensions so payroll lands on valid accounts.
  • Authenticate ADP with OAuth 2.0 and the required mutual TLS certificate, and Plex with OAuth 2.0 bearer tokens.
  • Poll on a schedule tied to your payroll calendar, with retries and a full audit trail on every record.

Questions

Which direction does data move between Plex and ADP?
The main flow is ADP into Plex. Payroll GL documents and worker records move from ADP into Plex, while cost centers and departments are aligned in both directions. ADP general ledger documents are read-only, so ml-connector does not write financial entries back into payroll.
Does ADP's mutual TLS certificate requirement need special setup?
Yes. ADP requires a client certificate at the TLS layer on every call in addition to OAuth 2.0 credentials. ml-connector stores the certificate encrypted, presents it on each request, and tracks its expiry so a renewal is handled before it can cause an outage.
How does the integration handle Plex's lack of webhooks?
Because Plex offers no native webhooks, ml-connector polls ADP and Plex on a schedule tied to your payroll calendar. It filters by modified_date and created_date to detect new and changed records, reducing the volume of data transferred on each poll.

Related integrations

Connect Plex and ADP

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

Get started