In this guide 6 sections
Start with an aggregator. One connection gives you rate shopping, labels and tracking across every carrier on its panel, which suits a few hundred parcels a day or fewer. Direct integrations pay off only at high volume with one or two carriers, where a negotiated contract outweighs the extra build and upkeep.
What each setup actually connects
An aggregator is one account and one API sitting in front of many couriers, so your order system sends the parcel details only once. That is the whole idea. It picks a carrier, returns a label, and passes tracking events back to the order screen as the parcel moves, with no further work from your team.
A direct integration is different. It links your order system to each carrier’s own API, so you hold the contract, the pickup schedule and the postcode serviceability list yourself. Every extra carrier means another connection to build, test and keep running, and each one breaks in its own way when the carrier changes a field.
Failure looks different in each setup. If an aggregator has an outage, every carrier goes dark together and labels stop printing until it recovers. A direct link fails alone. Only that carrier’s parcels stall, and the dispatch desk can reroute the day’s orders to another courier by hand.
Rate shopping and label printing
Rate shopping means choosing the cheapest or fastest carrier for each parcel from its weight, dimensions and destination postcode, and the aggregator runs that comparison across its whole panel. Direct links are manual. You build the comparison yourself and refresh every rate card by hand, which is easy to forget during a busy fortnight.
Labels differ too. An aggregator returns one format, usually a four by six thermal PDF or a ZPL file that any label printer on the dispatch bench can read. Direct carriers each ship their own layout and barcode rules, so the dispatch desk may end up printing from several templates.
- One label template against one per carrier
- Weight discrepancy charges raised after pickup
- Rate card refresh by API or by spreadsheet
- Serviceability checks at the delivery postcode
- Carrier assignment rules by weight band
Tracking, cash on delivery and returns
Tracking is where the aggregator earns its keep. Every carrier uses different status codes, and the aggregator maps them into one set, so customer messages and the order screen read the same whoever carries the parcel.
Cash on delivery remittance is slower to reconcile. Carriers pay in batches. An aggregator adds its own settlement cycle on top of theirs, so your accounts team needs a file that matches each waybill number to a remittance line. Returns follow the same pattern. A reverse pickup needs its own request, its own serviceability check at the customer’s postcode, and status codes that rarely match the forward journey.
- Status code mapping for delivered, undelivered and returned to origin
- Remittance file matched by waybill number
- Return pickup requests raised from the order screen
- Failed delivery attempts and reattempt rules
Which volume suits which route
Start with an aggregator if you ship to many postcodes, use three or more carriers or have no developer on staff to maintain the connections. You can be live in days. Switch off a weak carrier with one setting.
Move to direct integration when most parcels travel with one or two carriers and you hold a negotiated contract whose rates beat what the aggregator can offer you. That margin is a cost you can remove. Many sellers keep both, sending bulk lanes direct to the main carrier and pushing the long tail of odd postcodes through the aggregator.
Count parcels per carrier over the last quarter. If one courier already carries most of them, ask for a contract rate and weigh that figure against the aggregator’s fee per shipment.
A short test before you commit
Run fifty real parcels through your top choice. Count label errors, tracking gaps, weight disputes and the days taken to receive the cash on delivery remittance, because those four numbers decide which route costs you less. Use your own dispatch desk, not a demo.
Then price the work behind each route. Count developer hours, carrier account management and the monthly reconciliation effort, and put both totals beside the freight rates on one page where the owner can read them.
Shipping route comparison worksheet
A table with two columns, aggregator and direct. Rows cover rate shopping, label format, tracking status mapping, remittance days, return pickup, weight dispute handling and build effort, and a grade out of five against each route. A second block logs fifty test parcels, each with waybill number, label errors, tracking gaps and remittance date, with totals by carrier at the foot.
Open a blank worksheet to printQuestions owners ask
Can I start with an aggregator and move to direct carriers later?
Yes. Keep your own order numbers and parcel identifiers separate from the aggregator’s, so that history, reports and customer tracking links all survive the switch without a rebuild. The change is mostly in labels and status mapping.
Does an aggregator slow down cash on delivery payments?
It can, since remittance passes through one more party. Ask for the settlement cycle in writing before you sign, then compare it with the terms a carrier would give you directly on the same lane and weight band.
How are return pickups handled?
One screen raises a reverse pickup. Direct links need a separate return request for each carrier, each with its own serviceability rules, its own cut-off times and its own way of reporting a failed pickup.
Which route is better for a new online store?
An aggregator, almost always. Volume is small. Carrier needs change often in the first year, so the build time of separate connections is hard to justify against the savings.
