Plex and UPS integration
Plex runs discrete manufacturing operations and procurement. UPS handles shipments, ratings, and pickups. Connecting the two automates the process of getting carrier rates and pickup schedules for inbound materials. Purchase orders and releases in Plex flow to UPS for shipment evaluation, keeping your procurement and logistics timelines in alignment without re-entering addresses and quantities across systems.
What moves between them
Purchase orders and releases flow from Plex to UPS. When a purchase order is created or modified in Plex, ml-connector reads the supplier address, receiving location, and line item quantities and posts a shipment request to UPS for rating and pickup scheduling. Tracking events and shipment status flow back from UPS into Plex via Track Alert webhooks or periodic Quantum View polling, so procurement teams see carrier assignments and pickup windows within the Plex order workflow. UPS cannot provide invoices, so Plex remains the source of truth for accounting.
How ml-connector handles it
ml-connector authenticates to Plex with OAuth 2.0 and to UPS with OAuth 2.0 credentials and an optional merchant account number. It polls the Plex REST API on a configurable schedule to detect new and modified purchase orders and releases, filtering by created_date and modified_date. When a shipment-eligible order is found, ml-connector extracts the supplier name and address from Plex, looks up the receiving location, and posts the shipment to UPS with quantity and weight dimensions. If UPS Track Alert webhooks are enabled, ml-connector receives tracking events and writes them back into Plex as external references or custom fields. If webhooks are not enabled, ml-connector polls the Quantum View feed to fetch tracking status on a schedule. UPS rate limits OAuth token requests, with a maximum of approximately 250 tokens per day and a 4-hour token lifetime, so ml-connector caches tokens and implements exponential backoff on HTTP 429 responses. Plex role-based permissions are enforced, so the integration user must have API access to suppliers, purchase orders, and order releases, or calls will return 403 or empty results.
A real-world example
A mid-sized discrete manufacturer in automotive components sources materials from dozens of suppliers across North America and Asia. Before the integration, the procurement team created purchase orders in Plex, then manually requested ratings from UPS and coordinated pickup schedules via email and phone calls, often with days of delay before a pickup slot was confirmed. With Plex and UPS connected, each purchase order automatically flows to UPS for rating and pickup scheduling, and procurement planners see available pickup dates within Plex the same day the order is placed. Lead time visibility improves, supplier commitments are more reliable, and the procurement team no longer spends time chasing carrier availability.
What you can do
- Post purchase orders and releases from Plex to UPS for shipment rating and pickup scheduling, with supplier and receiving locations automatically mapped.
- Retrieve UPS shipment ratings and pickup windows and display them within the Plex procurement workflow via external references or custom fields.
- Subscribe to UPS Track Alert webhooks to receive tracking events for each shipment and write them back into Plex as shipment status updates.
- Poll the UPS Quantum View feed when webhooks are not available, maintaining consistent tracking visibility with configurable polling intervals.
- Handle UPS OAuth 2.0 authentication with optional merchant account routing and implement exponential backoff on rate limit responses.
Questions
- Which direction does data move between Plex and UPS?
- The main flow is Plex to UPS. Purchase orders and purchase releases flow from Plex to UPS for shipment rating and pickup scheduling. Tracking events and shipment status flow back from UPS into Plex via webhooks or polling. UPS does not provide a billing or invoice API, so cost data does not flow from UPS back to Plex.
- How does the integration handle Plex's lack of webhooks?
- ml-connector polls the Plex REST API on a configurable interval, typically 5 to 15 minutes, filtering by created_date and modified_date to detect new and modified purchase orders. When webhooks are enabled in your UPS account, ml-connector receives tracking updates as they occur; if not, it polls the UPS Quantum View feed to maintain tracking visibility.
- What happens if Plex and UPS roles or permissions are not set up correctly?
- Plex enforces role-based permissions on the API, so the integration user must have access to suppliers, purchase orders, and purchase order releases, or calls will return 403 (Forbidden) or empty results. UPS requires OAuth 2.0 credentials with an optional merchant account number; if the merchant account is not provided, shipments default to the UPS account associated with the credentials.
Related integrations
More Plex integrations
Other systems that connect to UPS
Connect Plex and UPS
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started