Acumatica and FedEx integration
Acumatica Cloud ERP runs orders, inventory, and finance. FedEx runs shipping, rating, and package tracking. Connecting the two turns a released Acumatica shipment into a FedEx label without re-keying addresses, and brings the tracking number and delivery status back onto the order. FedEx has no vendor or GL data, so the flow centers on what it actually does: print labels, quote rates, and report scans. ml-connector handles the very different APIs on each side and moves records on a schedule you control.
What moves between them
The main flow runs from Acumatica to FedEx. When an Acumatica shipment is released, ml-connector reads its recipient address, packages, and service preference, calls the FedEx Ship API to create the label, and stamps the Acumatica sales order and invoice numbers into the FedEx customerReferences array. The returned FedEx tracking number is written back onto the Acumatica shipment. The return flow brings FedEx tracking and delivery events into Acumatica: ml-connector polls the Track API, or receives Advanced Integrated Visibility webhooks where the customer subscribes, and posts scan events and the actual delivery date and signature back onto the matching order so status reflects what FedEx reports.
How ml-connector handles it
ml-connector stores both credential sets encrypted. On the Acumatica side it accepts the full tenant URL and the exact endpoint version per customer, since a mismatched version returns 404, and it wraps every field value in the required value object. On the FedEx side it requests a client-credentials bearer token and caches it for its full one-hour life, because FedEx throttles token generation at the IP level and returns 403 for ten minutes if you re-authenticate too often. Acumatica recipient addresses can be run through the FedEx Address Validation API before a label is created, so a bad address fails early instead of at the carrier. Because FedEx cannot be queried by ERP document, ml-connector relies on the customerReferences it stamped at ship time to match a tracking number back to its Acumatica order. Acumatica rate limits are license-tier dependent and FedEx returns 429 on its own limits, so calls back off with exponential jitter, and shipment creation is guarded by storing the returned tracking number and checking before any resubmit, since FedEx has no idempotency key header.
A real-world example
A mid-sized industrial parts distributor runs Acumatica Cloud ERP for orders, inventory, and finance, and ships every customer order through FedEx. Before the integration, warehouse staff re-typed each shipment's address into FedEx Ship Manager, printed the label, then pasted the tracking number back into the Acumatica order by hand, and customer service had no delivery status without logging into FedEx separately. With Acumatica and FedEx connected, releasing a shipment creates the FedEx label automatically with the order and invoice numbers attached, the tracking number lands on the order, and delivery scans flow back so service reps see status inside Acumatica. The manual re-keying and the swivel-chair lookups are gone.
What you can do
- Create FedEx shipping labels automatically from released Acumatica shipments, with no re-keyed addresses.
- Stamp Acumatica sales order and invoice numbers into the FedEx customerReferences array so packages map back to ERP documents.
- Write the returned FedEx tracking number onto the matching Acumatica shipment.
- Post FedEx scan events and the actual delivery date and signature back into Acumatica order status.
- Validate recipient addresses through FedEx before a label is created, and cache the FedEx token to avoid IP-level throttling.
Questions
- Which direction does data move between Acumatica and FedEx?
- The main flow is Acumatica to FedEx: released shipments become FedEx labels, and the order and invoice numbers are written into the FedEx customerReferences array. The return flow brings FedEx tracking numbers, scan events, and delivery confirmation back onto the matching Acumatica order. FedEx holds no vendor or GL data, so ml-connector never posts financial records into it.
- Can ml-connector match a FedEx package back to its Acumatica order?
- Yes, by using the customerReferences it stamps at ship time. FedEx cannot be queried by ERP document directly, so ml-connector populates INVOICE_NUMBER and P_O_NUMBER on the shipment, then looks shipments up by those reference types through the Track API. That reference is how a tracking number is tied back to the correct Acumatica shipment.
- Does the integration use FedEx webhooks or polling for delivery status?
- Either, depending on the customer's FedEx subscription. Advanced Integrated Visibility is a paid service that pushes signed delivery events to a callback URL, verified with the HMAC-SHA256 fdx-signature header. Where it is not subscribed, ml-connector polls the free Track API on a schedule, and on the Acumatica side it polls or receives Push Notifications since Acumatica change events use a shared-secret header rather than a signed payload.
Related integrations
More Acumatica integrations
Other systems that connect to FedEx
Connect Acumatica and FedEx
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started