Integrating different logistics partners via a universal shipping API
Some time ago, I went on a quest to find out whether a unified transport API/EDI standard existed—one that several logistics companies already utilize—to simplify multi-carrier shipping API integrations.
You can read about my findings here.
The goal was to automate the transport ordering process in a way that you wouldn't need to implement a completely separate API connection with each logistics company you work with, and save time and development resources.
Well, long story short: a universal carrier API protocol does not exist.
Therefore, you either have to build a new integration for each logistics provider you work with or you find a multi-carrier API broker service to use.
If you're curious whether and how a multi-carrier API could work in your case, book a free consultation with me. I'd be happy to walk you through the possibilities!
The challenge of implementing carrier APIs
Implementing a new carrier API might sound like fun if you're an IT geek who prefers communicating with computers rather than real people.
But, in a more realistic world, you would typically use an ERP or a WMS where you might not even have the proper access to implement a new API connection.
Chances are, you'd need to hire an IT company with the right expertise and licensing to build each integration. That sounds expensive, doesn’t it?
Now imagine doing this for every transport company you work with. The average manufacturer, wholesaler, or retailer uses 10 to 15 different logistics providers. Ouch.
Then your logistics manager informs you they have negotiated even better deals—with an entirely new set of carriers. Ouch.
Next, you find out that three of the logistics companies you've already integrated with are planning to switch their API platforms, and you’ll have to rebuild everything from scratch. Ouch.
So, is there any other way?
Multi-carrier shipping API
At Cargoson, we’ve built integrations with nearly every carrier out there and continue to expand based on our "most-wanted carriers" list, as requested by our customers.
And then we’ve built a multi-carrier shipping API on top of all that, for you to use.
The idea is simple: you only need to build one integration to Cargoson, and we will handle all the carrier APIs you might want to use. If we’re missing a carrier, we’ll add it for you. Free of charge.
Now, I'm about to geek out over the technical side of how a multi-carrier API works, but I don't want to put you to sleep! If you'd prefer to see a live demo and discuss how it could help your specific setup, just book a quick call and let's chat.
How it works
Here's a quick glimpse of how this would work. I know this sounds a bit geeky, but bear with me. Here we go.
Let's say you’ve confirmed a sales order in your ERP and need to trigger a transport order to deliver it to the customer. First, you’d need to know the approximate cost of transport. To get this, you trigger a PriceRequest from your ERP like this:
{ "collection_date": "2024-10-15", "collection_postcode": "2870", "collection_country": "BE", "delivery_postcode": "47179", "delivery_country": "DE", "rows_attributes": [ { "quantity": 1, "package_type": "EUR", "weight": 450, "length": 120, "width": 80, "height": 100, "description": "Goods" } ] }
And in the response, you’ll see real-time rates from multiple carriers like this:
{ "status": 200, "object": { "prices": [ { "carrier": "DSV Road *", "service": "Road", "service_id": 152, "price": "15.53", "currency": "EUR", "estimated_collection_date": "2024-10-15", "estimated_delivery_date": "2024-10-17", "transit_time": "2" }, { "carrier": "Schenker *", "service": "Road", "service_id": 102, "price": "28.13", "currency": "EUR", "estimated_collection_date": "2024-10-15", "estimated_delivery_date": "2024-10-16", "transit_time": "1" }, { "carrier": "Demo Carrier B", "service": "Groupage", "service_id": 1842, "price": "27.36", "currency": "EUR", "estimated_collection_date": "2024-10-15", "estimated_delivery_date": "2024-10-16", "transit_time": "1" } ] } }
Your developer can easily extract this data to display in your ERP system. Something like this:
Clicking the "Book" button sends the transport order directly to your chosen logistics partner. In return, you will receive shipping labels, a tracking code, and a direct tracking link.
Multi-carrier software filling the gaps
You might be wondering, where does all this data come from? Great question!
Most logistics companies don’t have a pricing API; some don’t have any API at all, and others lack even a booking portal, so all communication is exchanged via emails.
That’s where Cargoson’s multi-carrier shipping API comes in.
We've covered it all on our side. Whenever we implement a new carrier integration, we ensure that all the necessary “puzzle pieces” are in place. If a carrier doesn’t provide a pricing API, we will upload the price list to our system—not just any price list, but your personal price agreement with the carrier. Therefore, the actual price calculation happens on our side. The same goes for lead-time estimates, tracking, CO2e emissions, transport labels, and so forth.
In essence, we add all missing service elements that your logistics provider lacks.
Automate Your Shipping with a Universal, Multi-Carrier Transport API
Whether you’re a manufacturer, wholesaler or a retailer, integrating multiple carriers into your ERP, WMS, or order management system can be quite a challenge. By using a unified API platform like Cargoson, you can:
- Access real-time rates, book shipments, generate labels, and track parcels across thousands of carriers via a single integration
- Onboard new carriers quickly without complex IT projects
- Be sure you’ve got normalized data and workflow across all carriers, regardless of their IT capabilities
- Allocate development resources to improving your core systems, not building and maintaining countless carrier integrations