Home

Register ZHP

Stats

Query

ZHPs for Sale

ZHPR Projects
About ZHP

ZHPMafia.com Forum
The information below was originally posted by a fellow ZHP enthusiast known among various BMW forums as TerraPhantm. Please note that the description of letters and digits comprising the VIN is limited to US Spec. E46 BMW 3series 3.0L and may not be applcable to other BMW models.
Position
Description
1
W = GERMANY
2
B = BMW
3
A = Passenger Car
45
EV = Facelift sedan, BD = Coupe, BW = Convertible
6
5 = M54B30 Engine
7
3 = USA
8
4 = Manual belts with advanced driver and passenger airbags
9
Check digit (see below)
10
3 = 2003, 4 = 2004, 5 = 2005, 6 = 2006
11
Production plant: P=Regensburg, K=München
1217
Chassis serial number
Check digit computation
The 9th digit in the VIN serves as a checksum that validates the VIN to quickly detect a malformed sequence. Digits 09 in the VIN represent a corresponding numeric value while letters are assigned values as follow.
A=1
J=1
B=2
K=2
S=2
C=3
L=3
T=3
D=4
M=4
U=4
E=5
N=5
V=5
F=6
O=6
W=6
G=7
P=7
X=7
H=8
Q=8
Y=8
I=9
R=9
Z=9
Each position within the VIN is assigned a relative numeric weight as follows:
(8, 7, 6, 5, 4, 3, 2, 10, , 9, 8, 7, 6, 5, 4, 3, 2)
Notice the 9th (check) digit does not have assigned weight.
Each of the numeric values representing a digit or a letter in the VIN is multiplied with the corresponding numeric weight based on its offset. The result of each multiplication is then added together and then divided by 11, The remainder of that division result is the check digit value. If the remainder is 10 the value of 'X' is used as the check digit.
Example:
For the VIN above the numeric representation is
(6, 2, 1, 5, 5, 5, 3, 4, *check digit*, 5, 2, 4, 0, 8, 5, 6, 8)
After multiplying each position with its corresponding weight we get:
(48, 14, 6, 25, 20, 15, 6, 40,  , 45, 16, 28, 40, 20, 18, 16)
The sum of the sequence is 357. Division by 11 yields 32 and 5 as a remainder, which is the check digit.
©2014 
Privacy & Disclaimer

info@zhpregistry.net