Hello mr_zorg
Thanks for reposting the question!
Firstly, please note: this answer is not finished until youre
satisfied with it. If you require additional
information/clarification, please ask before rating this answer.
Thank you for your understanding.
It's been a very interesting search process to uncover this
information! For each company, Ive listed either direct check digit
information or a link on the web to a document containing check digit
information. I've included contact information for specific
individuals at these companies, so that you may contact them directly
if youd like.
As you probably know, a check-digit is officially only going to tell
you that the tracking number is valid in and of itself, not whether or
not it is company Xs. However, since it seems these companies might
employ different check-digit schemes, you should be able to run all of
them on every tracking number you have, and the one that returns true
will correspond to the said companys check-digit scheme. Ive
included the UPS modified mod 10 check-digit information for their
tracking numbers starting with 1Z; however, I think you can pretty
much bank 100% on a 1Z... tracking number being a UPS one.
FEDEX
======
EXPRESS SHIPMENTS:
For example, using tracking number: 012345678983
Take the first 11 digits of tracking number. Starting with the 11th
position, take the digits 1, 3, and 7, and assign them to each digit
[repeatedly].
012345678983
|||||||||||
31731731731
Multiply each assigned number to its corresponding tracking number
digit:
0 1 14 9 4 35 18 7 56 27 8
Add the products together [= 179 in this instance]
Divide the sum by 11. You get 16 remainder 3.If the remainder is 10,
then the check digit is 0. If there is no remainder, the check digit
is 0. The remainder is the check digit and should equal the 12th
digit of the tracking number.
______________________________________
FOR GROUND SHIPMENTS:
See this PDF file on the web:
grd.fedex.com/online/mcode/fedex_ground_label_layout_specification.pdf
under Check Digit Calculation Algorithms section
[Web API dept. - 800-810-9073 [option 1]]
[Bruce Clark ]
[CASE NUMBER: 11016731 ]
UPS
===
The 1Z tracking numbers utilize a modified MOD 10 calculation.
1. Exclude 1Z data identifier from calculation.
2. Convert all alpha characters to their numeric equivalents using
chart below.
3. From left, add all odd positions.
4. From left, add all even positions and multiply by two.
5. Add results of steps 3 and 4.
6. Subtract result from next highest multiple of 10.
7. The remainder is your check digit [the last digit].
Note: If the remainder is 10, the check digit is 0.Alpha to numeric
cross reference chart
A=2
B=3
C=4
D=5
E=6
F=7
G=8
H=9
I=0
J=1
K=2
L=3
M=4
N=5
O=6
p=7
Q=8
R=9
S=0
T=1
U=2
V=3
W=4
X=5
Y=6
Z=7
---
For all other tracking numbers, the standard MOD 10 algorithm applies
for the 11th check-digit.
[Business Development Dept. ]
[404-828-6627 x Getty Gidash ]
[Mark Lewis is a name that Getty may refer you to]
AIRBORNE
========
Airborne Express utilizes the standard MOD 7 method for their tracking
numbers. The check digit is the last digit of the tracking number.
[208-914-2901 x Val in Boise Call Center]
USPS
====
Please see the following publications for check digit information.
Note: PIC is their term for tracking number. In addition to the
specific sections/page numbers below, I would advise searching for
check digit in these documents.
Publication 91 Delivery and Signature Confirmation numbers
Acrobat page 85 [literally page 79]
http://www.usps.com/cpim/ftp/pubs/pub91.pdf
Publication 97 Express Mail Manifesting Technical Guide
Acrobat page 57 [literally page
59]http://www.usps.com/cpim/ftp/pubs/pub97.pdf
Publication 109 Special Services Technical GuideSection 7.6.3
http://www.usps.com/cpim/ftp/pubs/pub109.pdf
[Charles in Delivery Confirmation: 877-264-9693]
[He only has information on the Delivery ]
[and signature confirmation schemes ]
Additional link:
Mod information
http://www.formtechservices.com/dstuff/bookstuf/modnos.html
Search Strategy:
Contacted each company and located appropriate individuals |