ml-connector
PlexDeel

Plex and Deel integration

Plex runs manufacturing and finance for discrete manufacturers. Deel runs payroll, HRIS, and contractor management globally. Connecting the two keeps your labor costs accurate in Plex and your workforce records in sync with Deel. Employee records, contracts, and payslips flow from Deel into Plex, and payroll inputs such as bonuses and deductions sync back. ml-connector bridges the very different APIs and moves the data on a schedule you control.

How Plex works

Plex is a cloud-native ERP and MES platform by Rockwell Automation targeting discrete manufacturing. It exposes suppliers, purchase orders, invoices, GL accounts, customers, sales orders, parts, inventory, and containers through REST JSON APIs at https://cloud.plex.com/api via OAuth2 client credentials. Legacy SOAP XML Web Services are available at https://api.plex.com/api/datasources for customers with custom stored procedures. Plex has no native webhook system, so records are read by polling the REST API at configurable intervals or extracted via scheduled SFTP DataSources exports. Data access is enforced by role-based permissions tied to the integration user account.

How Deel works

Deel is a global workforce platform covering payroll, HRIS, and contractor management across 150+ countries. It exposes contracts, employees, invoices, payslips, and payroll inputs through REST JSON APIs at https://api.letsdeel.com/rest/v2. Authentication uses Bearer tokens (Organization Token with no expiry or Personal Token scoped to a user) or OAuth2 Authorization Code Grant with 30-day access tokens and 90-day refresh tokens. Deel publishes real-time webhook events for contract creation, employee hire, update, and termination, with HMAC-SHA256 signature verification on the raw request body.

What moves between them

The main flow runs from Deel into Plex. After each payroll period, ml-connector reads Deel invoices, payslips, and employee cost data and creates or updates corresponding vendor invoices and GL postings in Plex, mapped to the correct cost centers and GL accounts. Employee records, contracts, and contractor details flow into Plex as vendor or cost-center reference data. Payroll inputs such as bonuses, adjustments, and deductions are sent from Plex to Deel via API calls. Deel webhooks trigger real-time updates when contracts are created or employees are hired, updated, or terminated, so Plex headcount and contractor status stay current.

How ml-connector handles it

ml-connector stores Deel OAuth2 credentials encrypted and refreshes the access token when a call returns 401, retrying within the 30-day window. For Deel webhooks, it verifies HMAC-SHA256 signatures using the webhook signing key before processing the raw request body as JSON. On the Plex side, it polls the REST API using OAuth2 client credentials at an interval tied to your payroll calendar, filtering by created_date and modified_date. Cost center, department, and worker data is synchronized first so every payroll journal line maps to a GL account and cost center that already exists in Plex. Plex rate limits are not publicly documented, so ml-connector implements exponential backoff on HTTP 429 responses. Deel rate limits return 429 with a Retry-After header and are handled the same way. Both systems use encrypted storage for credentials, and every record carries a full audit trail and can be replayed if a downstream API call fails.

A real-world example

A mid-sized manufacturing company operates Plex for production, procurement, and finance across two plants. They use Deel as their global payroll and HRIS platform for a mix of direct employees and contractors spread across multiple countries. Before the integration, the finance team manually extracted Deel payslips and invoice data each pay period and re-entered labor costs into Plex by hand, then spent days reconciling employee headcount between Deel and Plex during month-end close. With Plex and Deel connected, each payroll period's invoices and cost data flow automatically into Plex, allocated to the correct cost center for each plant and contractor, and employee records stay in sync as hires, terminations, and status changes happen in Deel. Month-end close starts with labor costs already reconciled across both systems, and the manual re-keying and reconciliation work is eliminated.

What you can do

  • Sync Deel payslips, invoices, and employee cost records into Plex as vendor invoices and GL postings, allocated to the correct cost centers.
  • Keep Plex contractor and employee records aligned with Deel hires, terminations, and status changes via webhooks and polling.
  • Map Deel cost centers and worker types to Plex GL accounts and vendor master so payroll invoices land on valid accounts.
  • Authenticate Deel with OAuth2 and verify webhook signatures with HMAC-SHA256, and Plex with OAuth2 client credentials.
  • Poll on a schedule tied to your payroll calendar, handle rate limits and token refresh, and maintain a full audit trail on every record.

Questions

Which direction does data move between Plex and Deel?
The main flow is Deel into Plex. Employee records, contracts, invoices, and payslips move from Deel into Plex, while payroll inputs such as bonuses and adjustments move from Plex to Deel. Deel is HRIS and payroll only, so it does not hold Plex purchase orders, inventory, or manufacturing data.
How does ml-connector handle Deel OAuth2 refresh and webhook signatures?
ml-connector stores Deel OAuth2 credentials encrypted and automatically refreshes the access token when it receives a 401, staying within the 30-day window. For Deel webhooks, it verifies HMAC-SHA256 signatures against the raw request body before parsing JSON, so contract.created and hris.employee.terminated events trigger real-time updates without polling.
How does the integration handle the difference between Plex polling and Deel webhooks?
Plex has no native webhooks, so ml-connector polls the Plex REST API at an interval tied to your payroll calendar, filtering by created_date and modified_date. Deel webhooks trigger immediately when events occur, so hires and terminations update Plex in real time. Both systems are synchronized on the payroll period schedule.

Related integrations

Connect Plex and Deel

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

Get started