North American Carriers

Parse any
shipping label
instantly

Give us a tracking number or a photo of a label — get back structured data: carrier, addresses, service type, weight, barcodes, and live tracking status.

Open the Lab
Supported Carriers
UPS FedEx USPS Canada Post DHL Amazon Logistics + more
Capabilities

Everything in one place

Two input modes, one unified output schema. Drop in a tracking number or a raw label photo and get structured data back.

📦

Carrier Detection

Auto-identify the carrier from any NA tracking number using pattern matching against the canonical jkeen/tracking_number_data database.

🔍

Label OCR

Upload a photo of a shipping label. OpenCV preprocessing + EasyOCR/PaddleOCR extracts all text and barcodes automatically.

📍

Address Parsing

Structured sender and recipient addresses extracted from label text using usaddress and deepparse for NA address formats.

📡

Live Tracking

Fetch real-time shipment status via EasyPost or AfterShip — 30+ carrier integrations, no separate accounts needed.

🏷️

Barcode Detection

Detect and decode Code 128, Code 39, Data Matrix, PDF417, QR, and ITF barcodes with pyzbar.

REST API

Simple JSON API with FastAPI. Upload via multipart form or base64. Swagger docs at /docs after signing in.

Workflow

How it works

Two simple input modes, one unified output schema.

Mode A — Tracking number
1

Submit tracking #

POST a tracking number string

2

Carrier matched

Pattern regex identifies carrier instantly

3

Status fetched

Live tracking events from carrier API

Mode B — Label photo
1

Upload label image

JPG, PNG, or PDF — up to 50 MB

2

OCR + barcode scan

OpenCV preprocess → text + barcode extraction

3

Fields structured

Addresses, carrier, service, weight parsed

One clean output schema

Both input modes return the same structured JSON. Every field is nullable — the SDK fills in what it can from the available data.

carrier tracking_number service_type sender_address recipient_address weight barcodes tracking_events raw_ocr_text
// POST /api/parse/tracking { "carrier": "UPS", "tracking_number": "1Z999AA10123456784", "service_type": "UPS Ground", "sender": { "name": "Acme Corp", "street": "123 Main St", "city": "Seattle", "state": "WA", "zip": "98101" }, "recipient": { ... }, "weight_lbs": 2.3, "barcodes": ["CODE128:1Z999AA10123456784"], "status": "In Transit", "events": [ { "ts": "2026-06-17T09:41:00Z", "desc": "Package departed facility", "location": "Reno, NV" } ] }

Access the Lab

Sign in with your cornelltech.ca Google account to use the OCR lab, REST API, and Swagger docs.

Sign in with Google
cornelltech.ca accounts only