# PostBar

PostBar, also known as CPC 4-State, is the black-ink barcode system used by Canada Post in its automated mail sorting and delivery operations. It is similar to other 4 State barcode systems used by Australia Post and the United Kingdom's Royal Mail (from which it derives), but uses an obscured structure and encoding system unique to Canada Post. This particular bar code system is used on "flats" (which are larger-than-letter-size pieces of mail, such as magazines) and parcels.
This symbology, derived from the RM4SCC system used by the British Royal Mail, uses a series of bars, each of which can individually have one of four possible states, to encode information used in automated sortation and delivery onto each piece of mail. Each bar can either be short and centred (known as a tracker), medium and elevated (an ascender), medium and lowered (a descender), or full height. This symbology also uses an element known as a Data Content Identifier (or DCI), which specifies what types of information are encoded into each barcode, such as postal codes, customer information, and exact delivery points. The information that goes into each barcode is obtained from the address printed on the front of the envelope it is ultimately printed on, as well as the physical dimensions of each piece of mail. This code also uses a Reed–Solomon error correction technique, so that in case a particular piece of mail is mishandled, the information encoded in the barcode can still be correctly decoded.

## Character sets

Four character sets are used in PostBar codes, known as "A", "N", "Z" and "B" characters. Three-bar A characters are used exclusively to encode letters, and two-bar N characters encode only digits. Three-bar Z characters can encode either letters or digits. A and N characters are typically used to encode postal codes and country codes. Z characters are used for address locators, product types, and customer and service information. B characters are one bar each, and are used to encode base-4 machine IDs for Canada Post's internal uses.
The bars making up a character can be interpreted as base-3 digits. A full height bar encodes 0, a short lower bar (an ascender) encodes 1, and a short upper bar (a descender) encodes 2. The leftmost bar in a group is the most significant trit, and may have the value 3, with both upper and lower bars short (a tracker).
In other words, short upper and lower bars are assigned weights of 18 & 9, 6 & 3, and 2 & 1, from left to right. Since the first bar has 4 possible values, and the following bars have 3, 2 bars can encode 4×3 = 12 values, while 3 bars can encode 4×3×3 = 36.
N characters are simply encoded as the values 0–9. Only the value 9 requires a leading 3.
Z characters use the full 36 combinations representable by 3 bars. The values 0–25 encode the letters A–Z, and 26–35 encode the digits 0–9.
A characters have a somewhat peculiar encoding. They can also be decoded as three base-3 digits (a leading 3 is never used), with the values 2–26 mostly encoding A–Y. Exceptions are that 0 encodes M, 1 encodes H, 9 encodes Z (rather than H), and code 14 is not used (rather than encoding M).

## PostBar formats

Canada Post uses nine different formats of PostBar codes—three "domestic" barcodes, used on mail within Canada, two "global" codes, used to route mail outside Canada, three "service" codes, used on customer-applied barcodes, and an "internal" code, used for testing, maintenance, and tracking purposes by Canada Post.
Each barcode begins and ends with an identical pair of bars, known as "start" and "stop" fields. These are made up of one ascender and one tracker. The Data Content Identifier is always the first character after the start field.
Placeholders used to detail each PostBar format below are A, N, Z and B for the character sets described above, * for the start and stop fields, # for a space character (two full-height bars followed by one tracker), and [RS-nn] for the error-correction field, where nn is the number of bars used. Bold Z's indicate DCIs.

### Domestic

DCI's used in domestic barcodes fall within the range of A–L.
* PostBar.D07: * Z ANANAN [RS-12] *
* PostBar.D12: * Z ANANAN ZZZZ # [RS-12] *
* PostBar.D22: * Z ANANAN ZZZZZZZZZZZ [RS-12] *

### Global

DCI's used in global barcodes fall within the range of 1–9.
* PostBar.G12: * Z NNN ZZZZZZZZ [RS-12] *
* PostBar.G22: * Z NNN ZZZZZZZZ ZZZZZZZZZZ [RS-12] *

### Service

DCI's used in service barcodes fall within the range of M–U.
* PostBar.S06: * Z ZZZZZ [RS-12] *
* PostBar.S11: * Z ZZZZZZZZZZ [RS-12] *
* PostBar.S21: * Z Z ZZZZZZZZZZZZZZZZZZZ [RS-12] *

### Internal use

DCI's used in internal barcodes fall within the range of V–Z.
* PostBar.C10: * Z ANANAN [RS-30] BBBB *

### Business reply mail

52 bar long 4-state barcodes are used by Canada Post for business reply mail (BRM) addressing and payment. As of 2013 or earlier the previous BRM barcode, which were Code 93-type barcodes, were deemed non-machineable. An extended 73 bar long BRM barcode 'C73' , scheduled for availability from 2011, was indefinitely postponed.