POSTNET

POSTNET (Postal Numeric Encoding Technique) is a barcode symbology used by the United States Postal Service to assist in directing mail. The ZIP Code or ZIP+4 code is encoded in half- and full-height bars. Most often, the delivery point is added, usually being the last two digits of the address or PO box number.

The barcode starts and ends with a full bar (often called a guard rail or frame bar and represented as the letter "S" in one version of the USPS TrueType Font) and has a check digit after the ZIP, ZIP+4, or delivery point. The encoding table is shown on the right.

Each individual digit is represented by a set of five bars, two of which are full bars (i.e. two-out-of-five code). The full bars represent "on" bits in a pseudo-binary code in which the places represent, from left to right: 7, 4, 2, 1, and 0. (Though in this scheme, zero is encoded as 11 in decimal, or in POSTNET "binary" as 11000.)

Encoding
The following table shows the encoding for decimal digits:

Example
The ZIP+4 of 55555-1237 yields a check digit of 2 for encoded data of 5555512372 Together with the initials and terminal frame bars, this would be represented as:

Barcode formats
There have been four formats of Postnet barcodes used by the Postal Service:

A 5 digit (plus check digit) barcode, containing the basic ZIP Code only, referred to as the "A" code. 32 bars total.

A 6 digit (plus check digit) barcode, containing the last 2 digits of the ZIP Code and the 4 digits of the ZIP+4 Code, referred to as a "B" code. 37 bars total. In the early stages of Postal automated mail processing the B code was used to "upgrade" mail that had been coded only with a 5-digit "A" code. This barcode was only found on mail that received a 5-digit barcode on the initial coding by an OCR. Now obsolete.

A 9 digit (plus check digit) barcode, containing the ZIP Code and ZIP+4 Code, referred to as the "C" code. 52 bars total. The 9-digit barcode enabled the sorting of mail to the individual delivery carrier, and in some cases into a semblance of delivery sequence.

An 11 digit (plus check digit) barcode, containing the ZIP Code, ZIP+4 Code, and the delivery point code. 62 bars total. This is usually referred to as the DPBC, or Delivery Point Bar Code. By including delivery point information, it enables the Postal Service to sort mail into delivery point (address) sequence.

Discontinuation
The POSTNET 11-digit barcode was the predominant postal addressing barcode in use until the Intelligent Mail barcode (also known in its early usage as OneCode Solution) was introduced and implemented. The POSTNET barcode was replaced by the Intelligent Mail barcode in the fall of 2009, combining all previous Postal Service barcodes and marking into a single barcode. The Intelligent Mail barcode was originally supposed to be required beginning May 2011 however the USPS postponed the requirement date, allowing mailers to continue receiving automation discount rates using the POSTNET barcode until January 28, 2013, at which time Intelligent Mail barcode was required for those reduced rates.

Checkdigit algorithm
The check digit is chosen so that the sum of all digits in the bar code is a multiple of 10. Equivalently, the modulo-10 sum is 0.

To calculate the check digit:
 * 1) Add up the digits. For example, if a letter is sent to Young America, Minnesota, it might be sent to 55555-1237, which would have the sum of 38.
 * 2) Find the remainder of this number when it is divided by 10, in this case 8. This is also known as the sum modulo 10.  A simple way to combine the two steps is to sum the digits without a tens column at all, but discard all carries.
 * 3) Subtract the sum modulo 10 from 10. Continuing with the example, 10 − 8 = 2.  The check digit is therefore 2.

If calculated correctly, the sum of the ZIP, ZIP+4, or ZIP+4+delivery point digits and the check digit will always be a multiple of 10. Continuing with the example above, (5+5+5+5+5+1+2+3+7+2) = 40, and 40 mod 10 = 0.

Note that the Delivery Point is often added after the ZIP+4 and before the check digit, in which case the computation of the check digit includes the ZIP+4 and the Delivery Point.