• Manually checking rates across multiple carrier portals for every shipment -- costing time and leaving rate savings on the table?

  • Fragmented tracking data across multiple carrier systems making it impossible to give customers a consistent view of their shipments?

Multi-Carrier Shipping Software Development

Shipping software built for multi-carrier operations -- rate shopping across your carrier network, automated carrier selection, label generation, unified tracking, and carrier invoice reconciliation in one platform.

Built for ecommerce operators, fulfilment centres, and logistics platforms shipping with multiple carriers who need to automate what currently requires manual carrier portal access.

  • Rate shopping across your full carrier network with automated carrier selection rules

  • Label generation and carrier API integration for all your carriers

  • Unified tracking timeline aggregated across all carriers into a single view

  • Carrier invoice reconciliation identifying overbilling and rate discrepancies

RaftLabs builds custom multi-carrier shipping software -- rate shopping engines comparing quotes across FedEx, UPS, USPS, DHL, and regional carriers; automated carrier selection based on cost, service level, and lane; label generation and carrier API integration; unified tracking across all carriers; and carrier invoice reconciliation. Multi-carrier shipping software is appropriate for ecommerce operators, fulfilment centres, and logistics platforms that ship with multiple carriers and need to automate carrier selection and rate comparison. Most multi-carrier shipping platform projects deliver in 8-14 weeks at a fixed cost.

Vodafone
Aldi
Nike
Microsoft
Heineken
Cisco
Calorgas
Energia Rewards
GE
Bank of America
T-Mobile
Valero
Techstars
East Ventures
Shopping across carriers
Rate
Tracking across all carriers
Unified
Carrier selection
Automated
Cost delivery
Fixed

Manual carrier selection is a solvable problem. Rate shopping should be automatic.

When you ship with three or more carriers, manual rate comparison is a tax on every shipment. Your warehouse team checks each carrier's portal, picks a carrier based on incomplete information, and the operation scales linearly with volume -- more shipments means more manual work, not more automation.

Multi-carrier shipping software automates rate shopping, applies your carrier selection rules automatically, generates labels via API without manual portal access, and aggregates tracking data across all carriers so your customers get a single view of their shipments.

What we build

Rate shopping engine

Real-time rate quotes from all your carriers in a single API call -- parcel carriers (FedEx REST API, UPS OAuth API, USPS Web Tools, DHL Express API), regional carriers, and LTL carriers where applicable. For carriers without direct API access, EasyPost, ShipStation, or Shippo aggregation APIs provide normalised rate access to 100+ carriers under a single integration contract, eliminating the need to build and maintain individual carrier API connections for lower-volume partners.

Dimensional weight calculation is applied automatically per carrier rules -- each carrier uses a different dimensional factor (typically 139 or 166 cubic inches per pound for US domestic parcel), and the system calculates both actual weight and dimensional weight, billing at the greater of the two as the carriers do. Zone-based pricing optimisation identifies where rate arbitrage exists across your carrier network for the same origin-destination zone. Rate normalisation presents comparable service levels across carriers so ground, 2-day, next-day, and equivalent regional services are compared on an apples-to-apples basis. Negotiated rate application uses your account-specific contracted rates, not published list rates. The rate comparison your warehouse team currently does manually across carrier portals, automated to a sub-second response time.

Automated carrier selection

Rule-based carrier selection engine that picks the right carrier for each shipment automatically, without requiring a human to review rates. The rules engine evaluates each shipment against a configurable priority-ordered rule set: cheapest rate meeting the required service level, preferred carrier for specific weight breaks or zone ranges, carrier weight and dimension limits, delivery date commitment requirements, product type restrictions (hazmat, lithium battery, alcohol -- each carrier has different acceptance rules), and customer-specified carrier preferences or carrier exclusions.

Weight break optimisation is built into the rules: for shipments near a carrier's weight tier boundary, the engine calculates whether upgrading to the next service tier on a cheaper carrier beats the cheapest option at the actual weight. This is the kind of optimisation your most experienced shipping team member does manually and everyone else skips. Carrier selection rules are managed via an admin interface so your operations team can update zone preferences, add weight break rules, or adjust service level priorities without a developer involved. The automation removes carrier selection from your per-shipment workflow, which scales linearly -- the same platform handles 50 shipments a day and 5,000 shipments a day without adding headcount.

Label generation and carrier API

Label generation via carrier API for all your carriers -- FedEx REST API, UPS OAuth 2.0 API, USPS Web Tools, DHL Express API, and regional carrier APIs. Bulk label generation allows your warehouse team to print a full wave of outbound shipment labels in a single batch operation rather than booking each shipment individually, which is the workflow required when processing high-volume daily outbound manifests. Label format handling covers thermal label formats (ZPL for Zebra printers, EPL for older Eltron hardware), standard PDF, and PNG for browser-based printing.

Carrier-specific required fields, package types, service codes, and ancillary service indicators -- signature required, adult signature, Saturday delivery, insurance -- are handled per carrier within the same label request API call. Domestic and international label generation includes required customs documentation: CN22 and CP72 customs declarations for postal channels, commercial invoice generation, and electronic export filing (EEI) for US exports above the $2,500 filing threshold. The returns management portal generates pre-paid return labels on demand -- either included in the outbound shipment or sent by email when the customer requests a return, with the returns carrier and service level configurable independently from the outbound carrier selection rules.

Unified shipment tracking

Tracking event ingestion from all carriers via API polling and webhook subscription where carriers support push notification. EDI 214 (Transportation Carrier Shipment Status) processing for carriers that deliver tracking updates via EDI rather than REST API, which covers the majority of LTL and regional freight carriers that have not yet built modern API tracking endpoints. This means the unified tracking timeline works for your full carrier mix, not just the carriers that have invested in modern APIs.

Normalisation of carrier-specific tracking status codes into a consistent status model -- picked up, in transit, out for delivery, delivered, exception -- removes the need for your customer service team to understand FedEx's 37 status codes versus UPS's different set. Unified tracking API and customer-facing tracking page show all shipments regardless of carrier in a single view, accessible from the order confirmation notification link. Delivery performance analytics track on-time delivery rate, average transit time, and exception rate by carrier and by origin-destination lane, so carrier performance is measured continuously rather than at quarterly business reviews. Carbon footprint calculation per shipment uses carrier-reported emissions factors (where published) or distance-based emissions modelling per shipment mode, supporting Scope 3 Category 4 emissions reporting under the GHG Protocol.

Customer notifications

Automated customer notifications triggered by normalised tracking events: shipment booked, picked up, in transit, out for delivery, delivered, and exception. Email and SMS notification options, with SMS delivery handling via Twilio or a comparable messaging API so delivery is not dependent on email inbox filtering. Branded notification emails match your company identity -- carrier branding is not exposed to the customer unless you choose to show it. Customers interact with your brand throughout the shipment journey, not the carrier's.

Customer tracking page is accessible from the notification link without requiring a carrier portal account or a tracking number lookup on the carrier's website. The tracking page shows the unified status timeline, the estimated delivery date, and proof of delivery when available -- pulling from the same normalised tracking data used internally. Delivery exception notifications for delayed or returned shipments include the specific exception reason where the carrier provides it, giving customers context rather than a generic "delay" message. Delivery performance analytics record on-time delivery rates by carrier and by service level so your customer service team has data to work from when a customer raises a late delivery complaint.

Carrier invoice reconciliation

Automated matching of carrier invoices against the rates quoted and booked at shipment time, identifying overbilling, incorrect surcharge application, address correction charges applied to addresses that were valid at booking, and accessorial fees not covered under your rate agreement. Industry benchmarks suggest 2-5 percent of carrier invoices contain billing errors; at meaningful shipment volume, the freight audit pays for itself in recovered charges.

Carrier invoice ingestion handles EDI 210 (Freight Invoice) for freight carriers and standard carrier billing file formats for parcel carriers. Each line on the invoice is matched to the corresponding shipment booking record and the rate-shopped rate at time of booking. Discrepancies above a configurable threshold are flagged to the exception queue rather than auto-approved. Exception workflow records the dispute, tracks the carrier's response, and logs the credit or adjustment when received. Recovery tracking reports the total disputed amount, recovered amount, and recovery rate by carrier over rolling periods so you can see whether a carrier has a systematic billing accuracy problem. Cost-per-shipment analysis by carrier, service level, and origin-destination zone feeds the carrier selection rules engine so zone-level rate performance is visible alongside theoretical rate comparisons.

Frequently asked questions

We integrate with API-capable parcel and freight carriers: FedEx (REST API), UPS (OAuth 2.0 API), USPS (Web Tools and USPS APIs), DHL Express API, Purolator (Canada), Canada Post, and most regional parcel carriers with REST or SOAP APIs. For carriers without public APIs, we integrate via EasyPost, ShipStation, or Shippo as a normalisation layer -- these aggregators support 100+ carriers under a single API contract and handle the carrier API maintenance burden on your behalf. For LTL freight, we integrate with carriers that provide EDI 210/214 for invoice and tracking, or via direct REST API where available from carriers like XPO, Estes, Saia, and Old Dominion.

We confirm the carrier integration approach for each carrier during scoping, since API capabilities vary significantly. Some carriers support full rate/book/track via REST API. Others only expose rating, requiring label generation via a different channel. A few require EDI for invoicing even when the booking API is REST-based. The integration design documents exactly what each carrier integration covers and how gaps are handled before development begins.

Carrier selection rules are configured per your business logic and applied automatically at shipment creation. Common rule patterns include: select the cheapest carrier meeting the required service level for standard shipments; prefer a specific carrier for Zone 1-4 shipments and another for Zone 5-8 where your contracted rates make the split cost-optimal; exclude specific carriers for hazmat, lithium battery, or oversized shipments where acceptance rules apply; use a regional carrier for next-day delivery in specific states where they consistently outperform national carriers on transit time and cost; apply dimensional weight optimisation for shipments in a weight range where dim weight is likely to be the billing basis.

For B2B shipments requiring delivery appointment scheduling, the rules engine can identify shipments to addresses that have a known appointment requirement and route them to the appropriate carrier service. Customer-specified carrier preferences and carrier exclusions from the order or customer record override the general rules. Carrier selection rules are managed via an admin interface so your operations team can adjust zone splits, add weight break rules, or update hazmat carrier exclusions as your carrier contracts change, without a developer involved. Edge cases that do not match any rule are escalated to a manual selection queue with the rate options shown so the operations team makes an informed decision rather than a guess.

Yes. Multi-carrier shipping is built as a standalone service layer that integrates with your existing ecommerce platform (Shopify via carrier calculated shipping and Shopify API, Magento via REST API, WooCommerce via the WooCommerce REST API) and warehouse management system. The shipping platform exposes a rated shipping API that your platform calls to present carrier options at checkout, and a booking API that confirms the selected service and returns a label URL. Tracking data is pushed back to your ecommerce platform via webhook so order tracking status is updated automatically without your customer service team manually checking carrier portals.

This architecture means the multi-carrier logic -- rate shopping rules, carrier selection, label format handling, tracking normalisation, and invoice reconciliation -- lives in one place and serves multiple upstream systems. Your Shopify store, your WMS, and any B2B order portal all call the same shipping layer. When you add a carrier or change a selection rule, the change applies everywhere without touching each connected system. Integration scope and the specific API approach depend on your existing platform's API capability and version, which we assess during scoping.

A focused multi-carrier shipping platform integrating 3-5 parcel carriers via EasyPost, ShipStation, or Shippo aggregation, with automated selection rules, bulk label generation, unified tracking, customer notifications, and a returns portal typically runs $25,000-$60,000. The lower end applies when carrier integration is via an aggregator API (one integration rather than five separate ones) and the selection rules are straightforward. The higher end applies when carrier integrations are direct (FedEx REST, UPS OAuth, USPS, DHL) with custom rate-shopping logic and delivery performance analytics.

A full platform with 8+ carrier integrations, LTL support with EDI 210/214 processing, invoice reconciliation with an exception dispute workflow, delivery performance analytics by carrier and lane, carbon footprint calculation per shipment, and a customer portal typically runs $60,000-$130,000. Cost is determined primarily by carrier count, EDI integration requirements (EDI setup is time-intensive), and the complexity of the carrier selection rules and reporting requirements. We scope every project before pricing it -- the scope document defines exactly which carriers are integrated, which integration methods are used, and what the selection rule and reporting requirements are, so the fixed cost is based on a clear specification rather than an estimate.

What clients say

What our clients say

Three-year average engagement. Founders and operators describing the work in their own words. No marketing varnish.

Gil Nugraha
Gil Nugraha
Indonesia
Founder at UrShipper

I definitely recommend RaftLabs, especially to founders building complex platforms. They were transparent throughout the whole project.

01 / 02

Related services

Talk to us about your multi-carrier shipping project.

Tell us the carriers you work with, the shipment volume you're handling, and what your current process requires manually. We'll scope the right platform and give you a fixed cost.