Plex and Procurify integration
Plex runs manufacturing and finance. Procurify manages procurement and spend. Connecting the two keeps your supplier data and purchase orders in sync across both systems. New suppliers and purchase orders in Plex flow into Procurify automatically, and invoice records move between the two on a schedule you control. ml-connector handles the differences in API shape and authentication, polls both systems reliably, and maintains a complete audit trail.
What moves between them
Purchase orders and supplier invoices flow from Plex into Procurify. Suppliers in Plex are mapped to vendors in Procurify so purchase orders land on the correct vendor. Reference data such as GL accounts, departments, and locations are aligned in both directions so invoices post to the correct cost center. Bills in Procurify remain read-only, so ml-connector does not write approval or payment status back to Plex. The flow runs on a schedule aligned with your procurement cycle, typically daily or every few days.
How ml-connector handles it
ml-connector stores both credential sets encrypted and uses OAuth 2.0 to authenticate to both Plex and Procurify on every poll. For Plex, it passes the company code (PCN) to route requests to the correct data partition and handles the fact that Plex API roles must be assigned in advance. For Procurify, it includes the X-Procurify-Client header on every request as required by the API. Since both systems are poll-only, ml-connector queries Plex for suppliers and purchase orders modified since the last poll, and similarly queries Procurify to detect any changes on that side. Suppliers are mapped to vendors by external ID to handle renames and avoid duplicates. Procurify order items are read-only through the API, so ml-connector creates purchase orders through the requisition approval flow instead. Both systems return HTTP 429 on rate limits, so ml-connector backs off and retries. Every record carries a full audit trail and can be replayed if a downstream mapping fails.
A real-world example
A mid-sized discrete manufacturer runs Plex ERP for financials, procurement, and production planning. The procurement team also uses Procurify for vendor management and spend control. Before the integration, the procurement team entered new purchase orders twice: once in Plex to book the GL impact, and again in Procurify to track vendor compliance and spending. Month-end reconciliation meant manually comparing the two systems and chasing discrepancies. With Plex and Procurify connected, every purchase order entered in Plex automatically flows to Procurify, mapped to the correct vendor and GL account. New suppliers added in Plex appear in Procurify without re-entry. The spend team now sees real-time alignment across both systems, and the month-end reconciliation is eliminated.
What you can do
- Sync Plex suppliers to Procurify vendors, mapped by external ID to prevent duplicates.
- Move Plex purchase orders into Procurify, allocated to the correct vendor and GL account.
- Align Plex GL accounts and departments with Procurify account codes and locations so invoices post to valid dimensions.
- Handle Plex OAuth with role-based access and company code (PCN) routing, and Procurify OAuth with the required X-Procurify-Client header.
- Poll on a configurable schedule with exponential backoff on rate limits, a full audit trail on every record, and replay of failed syncs.
Questions
- Which direction does data move between Plex and Procurify?
- The main flow is from Plex into Procurify. Suppliers, purchase orders, and invoice data move from Plex into Procurify, while GL accounts, departments, and locations are aligned in both directions. Procurify bills remain read-only, so ml-connector does not write payment or approval status back to Plex.
- How does the integration handle Plex's company code (PCN) and role-based access?
- ml-connector stores the Plex company code (PCN) and uses it on every API call to route requests to the correct data partition. Plex enforces role-based permissions on the integration user, so that user must be assigned the correct roles in Plex before any API call will succeed. If a role is missing, Plex returns a 403 error or empty results.
- Why are both systems polled instead of pushed, and how often should the integration run?
- Neither Plex nor Procurify offer native webhooks, so integration relies on polling with date-range filters. ml-connector polls both systems on a schedule you configure, typically daily or every few days depending on your procurement cycle. The integration filters by modified_date to avoid re-processing unchanged records.
Related integrations
More Plex integrations
Other systems that connect to Procurify
Connect Plex and Procurify
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started