USPS Tracking Number はリサイクルされるのでユニーク値ではない

Tadashi Shigeoka ·  Thu, June 29, 2017

アメリカ国内 or アメリカ向けの EC サービスを提供するときに USPS (United States Postal Service) の利用は欠かせません。

その USPS が発行する Tracking Number はユニークな値ではなく、配達完了 (Delivered) 後に再利用 (Recycle) されるということを覚えておかないと、思いもよらないシステムエラーを引き起こすかもしれません。

USPS Tracking Number Reused という検索ワードで Google 検索すると、以下のようにいくつか同じような疑問をもった方々の記事が見つかります。

開発で USPS のトラッキングコードを扱う上で気をつけるべき点は、トラッキングコードは再利用されるということです。過去にユーザーAの配送に割当てたトラッキングコードが、1年後にユーザーBの配送に割当てられることが充分に発生します。

そのため、トラッキングコードを key で一意を期待したロジックの実装はバグの温床となります。もちろんユニーク制約なんてしては絶対にいけません。

だったら、トラッキングコードをユニークになるような進数と桁数で提供すればいいのでは?と考えもしますが、桁数が多くなりすぎて手入力の場合の UX が最悪になるので、ユーザー目線だと再利用してもらう方がいいのでしょうね。