Plex and Tipalti integration
Plex runs manufacturing and finance for discrete manufacturers. Tipalti runs accounts payable and payments. Connecting the two keeps supplier master data and invoices in sync, and posts payment GL entries from Tipalti back into Plex's general ledger. New suppliers in Plex flow to Tipalti as payees, invoices are matched and approved in Tipalti, and the GL entries that Tipalti generates after payment processing post back into Plex without re-keying. ml-connector handles both the OAuth2 REST calls and the legacy SOAP authentication on the Plex side, bridges Tipalti's webhook notifications, and manages the GL account mapping.
What moves between them
The main flow is bidirectional. Plex suppliers and invoices flow into Tipalti as payees and bills on a configurable schedule, typically after each invoice receipt or at daily cadence. Once Tipalti approves and processes a payment, ml-connector receives the payment_submitted and completed IPN webhook events, maps the payment GL entries back to the correct Plex GL accounts and cost allocations, and posts the entries into Plex's general ledger. Purchase order history is synced from Plex to Tipalti to provide context for invoice matching.
How ml-connector handles it
ml-connector stores both Plex credentials (OAuth2 client ID and secret for REST, or username and password for SOAP with PCN) and Tipalti credentials (API key or OAuth2 client ID and secret) encrypted. On each sync cycle, it polls Plex's REST or SOAP API for suppliers, invoices, and purchase orders modified since the last run, filters by Plex role-based permissions to avoid empty or 403 results, and posts them into Tipalti via SOAP or REST as payees, bills, and PO references. Tipalti's IPN webhooks report payment status (submitted, approved, declined, completed); ml-connector verifies the webhook signature using HMAC-SHA256, maps each payment to the originating Plex invoice and cost center, and POSTs the GL journal entry into Plex's GL account. Because Plex offers no public rate limit documentation, ml-connector implements exponential backoff on HTTP 429 responses. GL account and cost center mappings are maintained in a configuration table so finance entries post to the correct Plex accounts regardless of rounding or multi-leg payments.
A real-world example
A mid-sized automotive supplier manufactures stamped and welded parts and runs Plex as their cloud ERP for production scheduling, inventory, and finance. They use Tipalti to manage payables to their network of material suppliers and contract manufacturers, some international with complex compliance requirements. Before the integration, the finance team reviewed Plex invoices weekly, manually entered them into Tipalti for approval and payment, and then manually posted the payment GL entries back into Plex's general ledger at month-end close. The manual process introduced keying errors, delayed supplier payments, and extended close cycles. With Plex and Tipalti connected, suppliers are onboarded into Tipalti automatically from Plex, invoices flow in daily, and payment GL entries post back to Plex without manual intervention. The finance team now focuses on compliance and policy exceptions instead of data entry.
What you can do
- Sync Plex suppliers to Tipalti as payees on a configurable schedule, preserving supplier master data and payment terms.
- Load Plex invoices and purchase orders into Tipalti for matching, approval, and payment processing.
- Map Plex GL accounts and cost centers to Tipalti payment GL entries so journal lines post to the correct financial dimensions.
- Bridge Plex OAuth2 REST and legacy SOAP Basic authentication, and verify Tipalti webhook signatures via HMAC-SHA256.
- Receive Tipalti payment notifications via IPN webhooks, post completed GL entries into Plex, and retry failed postings with exponential backoff.
Questions
- Which direction does data move between Plex and Tipalti?
- The flow is primarily from Plex to Tipalti for suppliers, invoices, and purchase orders. Payment GL entries then flow back from Tipalti into Plex after payments are processed. This keeps Plex's AP accounting current without manual re-entry, and Tipalti's payee master and invoice context synced with Plex's source records.
- How does ml-connector handle Plex's lack of webhooks and Tipalti's webhook support?
- ml-connector polls Plex's REST or SOAP APIs on a configurable interval (typically 5 to 15 minutes) to retrieve new and modified suppliers, invoices, and purchase orders. Tipalti sends payment status notifications via IPN webhooks, which ml-connector receives and verifies using HMAC-SHA256 signatures, then maps back to Plex GL accounts for posting.
- What authentication does ml-connector use for each system?
- For Plex, ml-connector supports both OAuth2 client credentials for the REST API and Basic auth with a company code (PCN) for legacy SOAP. For Tipalti, it uses either HMAC-SHA256 signing for SOAP or OAuth2 client credentials for REST APIs, and verifies webhook signatures via HMAC-SHA256. All credentials are stored encrypted.
Related integrations
More Plex integrations
Other systems that connect to Tipalti
Connect Plex and Tipalti
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started