Skip to content

Comment on Show HN: Tracking number formats, community reverse-engineered since 2010

Comments

I built the tracking_number ruby gem back in 2010, which was born out of a failed package tracking site I was building. Since then the project has evolved into shared json specs that the Ruby gem and its ports (TypeScript, Python, Java, Go, and Rust) all consume to detect, validate, and decode tracking numbers. trackingnumber.fyi is the frontend to the current dataset at https://github.com/jkeen/tracking_number_data

Most tracking numbers have more going on within them than you think. They usually end in a check digit, and some encode extra information within the number like destination zip code, shipment class, and the shipper's account number. Others just increment a number with a fixed prefix and no check digit (boooorrrrrring)

Here's an example breakdown of a USPS number https://trackingnumber.fyi/420112139261290983497923666238

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.