Plex and Basware integration
Plex runs manufacturing and procurement. Basware runs AP automation and e-invoicing. Connecting the two keeps your procurement records and approval workflows aligned. Suppliers, purchase orders, and invoices created in Plex flow into Basware automatically, where they route to approval based on your cost centers and GL codes. ml-connector handles the different auth models on each side and syncs on a schedule that fits your procurement calendar.
What moves between them
Records flow from Plex into Basware. Suppliers, purchase orders, and invoices created or modified in Plex are polled and sent to Basware's P2P API on a schedule tied to your procurement cycle. Cost centers and GL codes from Plex are mapped to matching dimensions in Basware so each purchase order and invoice routes to the correct cost center and GL account during approval and accrual. Basware retains the records for AP workflow, matching, and archiving, and does not write back to Plex.
How ml-connector handles it
ml-connector stores both credential sets encrypted and uses OAuth2 on both sides, refreshing each token when a call returns 401. On the Plex side, it polls the REST API with the OAuth2 Bearer token on a configurable schedule, filtering by modified date to detect new and changed suppliers, purchase orders, and invoices. Because Plex rate limits are not publicly documented, ml-connector implements exponential backoff on HTTP 429 to avoid throttling. On the Basware side, it validates that the target region matches the customer's Basware deployment, then posts records to the P2P API with the OAuth2 credentials. GL codes and cost centers from Plex are mapped to Basware dimensions during the push, so each record lands on the correct account for approval. Every record carries a full audit trail and can be replayed if the downstream Basware call fails.
A real-world example
A mid-market discrete manufacturer runs Plex ERP for production, procurement, and finance across two facilities, and uses Basware for AP automation and invoice processing. Before the integration, the procurement team exported purchase orders and invoices from Plex weekly and uploaded them to Basware by hand, then manually mapped cost centers and GL codes in Basware. Supplier master changes in Plex were not reflected in Basware, causing approval workflows to route to incorrect cost centers, and incorrect GL coding delayed invoice accrual. With Plex and Basware connected, purchase orders and invoices sync automatically every 15 minutes, and cost centers from Plex are mapped to Basware dimensions automatically so approval routes correctly. The manual upload step is gone, supplier changes flow through within one polling interval, and invoice accrual starts on time.
What you can do
- Poll Plex for suppliers, purchase orders, and invoices, and push them to Basware with OAuth2 credentials on both sides.
- Map Plex GL codes and cost centers to Basware dimensions so each purchase order and invoice routes to the correct cost center during approval.
- Handle Plex polling intervals and exponential backoff to respect rate limits, and Basware regional deployment endpoints.
- Authenticate Plex with OAuth2 and the Basware P2P API with OAuth2, with token refresh on each 401 response.
- Maintain a full audit trail of every supplier, purchase order, and invoice record and replay failed pushes to Basware when network issues occur.
Questions
- Which direction does data move between Plex and Basware?
- The flow is Plex into Basware. Suppliers, purchase orders, and invoices created in Plex are polled and pushed to Basware for AP automation and invoice processing. Basware is the downstream system of record for approval and payment, and does not write back to Plex.
- How does ml-connector handle Plex's lack of webhooks and Basware's regional deployment?
- ml-connector polls Plex on a configurable schedule, typically 5 to 15 minutes, filtering by modified date to detect changes. On the Basware side, it uses the OAuth2 credentials and regional endpoint that match your Basware deployment region (EU, US, AU, or CA), so the push succeeds without redirection or auth failure.
- What happens if Plex GL codes do not match Basware dimension values?
- ml-connector includes a dimension mapping step before pushing to Basware, so Plex GL codes are translated to the Basware dimension values that already exist in your Basware instance. If a mapping is missing, the record is flagged in the audit trail and can be retried after the mapping is added.
Related integrations
More Plex integrations
Other systems that connect to Basware
Connect Plex and Basware
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started