Code 93

Code 93 is a compact, alphanumeric symbology designed to offer higher density and improved data security compared to Code 39.

Introduction

Code 93 was designed to provide a higher density and data security enhancement to Code 39. It is an alphanumeric, variable-length symbology. Code 93 is used primarily by the Canadian postal office to encode supplementary delivery information. Every symbol includes two check characters.

Code 93 is designed to encode 26 upper-case letters, 10 digits, and 7 special characters:

A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
-, ., $, /, +, %, SPACE.

Each Code 93 character is divided into nine modules and always has three bars and three spaces. This is the origin of the symbology's name.

In an open system, the minimum value of the X dimension is 7.5 mils. The minimum bar height is 15 percent of the symbol length or 0.25 inches, whichever is greater. The leading and trailing quiet zones should be at least 0.25 inches.

Code 93 is also known as USS-93 (a compressed form of Code 39).

Structure of a Code 93 barcode

A typical Code 93 barcode has the following structure:

  1. A start character –
  2. Encoded message
  3. First check character "C"
  4. Second check character "K"
  5. Stop character –
  6. Termination bar
Check Digit Calculation

To calculate the check characters "C" and "K", follow these steps:

  1. Take the value (0 through 47) of each character in the barcode (see the table to the left). The start and stop characters are not included in the checksum calculation.
  2. Assign a weight to each character. The right-most character has a weight value of 1, the second-to-last 2, and so on. After 20, the sequence goes back to 1.
  3. Multiply each character's value by its weight. Sum all the results.
  4. Divide the result by 47 and take the remainder. Reverse look up the remainder to get the character. This is check character "C".
  5. Append the "C" character to the end of the data and repeat steps 1 through 4. This time the weight ranges from 1 to 15. The result is the character "K".
Extended Code 39 Encoding Table

Using Code 93's "Full ASCII Mode," it is possible to encode all 128 ASCII characters. This is accomplished by using the ($), (/), (%), and (+) symbols as "shift" characters. These characters, combined with the single character that follows, indicate which Full ASCII character is to be used.

The Extended Code 93 Encoding Table is identical to the Extended Code 39 Encoding Table, except that Code 93 uses its four specialized shift characters ($), (/), (%), and (+) to shift into Full ASCII mode, instead of the $, /, %, and + characters used by Code 39.

Use the Extended Code 39 Encoding Table for Extended Code 93 encoding, remembering to use the special characters ($), (/), (%), and (+) whenever the Code 39 encoding table refers to $, /, %, and +.