Cadvora

10 carriers. One data model.
Zero code changes to add another.

Each carrier lives in an isolated adapter. Your platform logic never sees a carrier event code โ€” only CadvoraStage. Adding a new carrier means adding one folder. Nothing else.

Aramex

SOAP
AustraliaMiddle EastGlobal

Full SOAP client with retry logic and credential injection. All 9 Aramex event codes mapped to CadvoraStage.

Identifier types

AWB Reference

Carrier key

ARAMEX

FedEx

REST
Global

FedEx Track API integration. Covers Express, Ground, and International shipments.

Identifier types

Tracking Number Reference

Carrier key

FEDEX

DHL Express

REST
Global

DHL Express Shipment Tracking API. Global coverage with real-time event streaming.

Identifier types

Waybill Number Reference

Carrier key

DHL_EXPRESS

DHL Parcel

REST
EuropeAustralia

DHL Parcel DE/NL/AU domestic tracking. Separate adapter from DHL Express for event code clarity.

Identifier types

Tracking Number

Carrier key

DHL_PARCEL

DHL eCommerce

REST
Global

DHL eCommerce Solutions API for cross-border parcel tracking and last-mile visibility.

Identifier types

Tracking Number Order Reference

Carrier key

DHL_ECOMMERCE

UPS

REST
Global

UPS Tracking API v2. Full activity detail with signature and delivery confirmation events.

Identifier types

1Z Tracking Number Reference

Carrier key

UPS

Australia Post

REST
Australia

AusPost Shipping & Tracking API. Domestic and international articles. Auto-detected by 13-char identifier pattern.

Identifier types

Article ID (13 chars) Barcode

Carrier key

AUSPOST

StarTrack

REST
Australia

StarTrack (AusPost premium freight) tracking API. Australia's primary B2B freight network.

Identifier types

Consignment Number

Carrier key

STARTRACK

Couriers Please

REST
Australia

CouriersPlease domestic Australia tracking. Strong regional and metro coverage.

Identifier types

Consignment Number Reference

Carrier key

COURIERSPLEASE

Sendle

REST
AustraliaUnited States

Sendle carbon-neutral delivery tracking. AU and US markets. Uses order_id as primary identifier.

Identifier types

Order ID Sendle Reference

Carrier key

SENDLE
๐Ÿ“

One folder per carrier

adapter.ts, mapper.ts, module.ts. Carrier event codes exist only in the mapper โ€” never in your core.

๐Ÿงช

Fixture-driven tests

Each adapter ships with test-fixtures/: event-code-map.json and test-cases.json. No live carrier calls in CI.

โฑ

30-day EXPIRED rule

If no events arrive for 30 days and the parcel is not terminal, Cadvora derives EXPIRED automatically โ€” no carrier call needed.

Coming up

Carriers in evaluation or requested by the community.

USPS In evaluation
Toll Global In evaluation
Evri In evaluation
Royal Mail In evaluation
DTDC Community request
J&T Express Community request

Need a carrier we don't have yet?

Adding a carrier is a single adapter folder. Tell us which one and we'll prioritise it.

Start Free Trial Request a Carrier