Character size
  1. Home > 
  2. Basics of Barcodes > 
  3. CODE 128 and EAN-128

CODE 128 and EAN-128

CODE 128

CODE 128 is the barcode developed by Computer Identics Corporation (U.S.A.) in 1981.
CODE 128 barcode can represent all 128 ASCII code characters (numbers, upper case/lower case of alphabets, symbols and control codes). Since it can represent all characters (except Japanese kanji, hiragana and katakana) that can be worked with a computer keyboard, it is a computer friendly barcode.

CODE 128 Composition

The basic composition is as follows:

CODE 128 Composition

  • ・There are 4 types of bar size.
  • ・One character is represented by 3 bars and 3 spaces (total six elements).
  • ・A start character has three types; "CODE-A", "CODE-B" and "CODE-C". The type of start character determines the character composition of subsequent characters. (See the table of character composition on page 41. For example, when CODE A is used as a start character, the characters in the CODE-A column can be represented.)

CODE 128 Composition

  • ・When CODE-C is used, 2-digits numbers can be represented by one type of bar pattern. This allows the very high data density.
  • ・When code set characters (CODE-A, CODE-B and CODE-C) are used, the barcode started with the start character of CODE-A can be changed to use the characters in the CODE-B or CODE-C column in the middle of barcode processing.
  • ・When "SHIFT" is used, only one character next to the SHIFT can be changed to the character in the next column (A to B, B to C, C to A). (Similar to the SHIFT key operation of on the computer keyboard)
  • ・"Modulus 103" is used as a check digit.

CODE 128 Character Composition

Bar pattern Numerical
Bar pattern
0 SP SP 00 54 V V 54
1 ! ! 01 55 W W 55
2 " " 02 56 X X 56
3 # # 03 57 Y Y 57
4 $ $ 04 58 Z Z 58
5 % % 05 59 [ [ 59
6 & & 06 60 \ \ 60
7 ' ' 07 61 ] ] 61
8 ( ( 08 62 ^ ^ 62
9 ) ) 09 63 _ _ 63
10 10 64 NUL 64
11 + + 11 65 SOH a 65
12 , , 12 66 STX b 66
13 - - 13 67 ETX c 67
14 . . 14 68 EOT d 68
15 / / 15 69 ENQ e 69
16 0 0 16 70 ACK f 70
17 1 1 17 71 BEL g 71
18 2 2 18 72 BS h 72
19 3 3 19 73 HT i 73
20 4 4 20 74 LF j 74
21 5 5 21 75 VT k 75
22 6 6 22 76 FF l 76
23 7 7 23 77 CR m 77
24 8 8 24 78 SO n 78
25 9 9 25 79 SI o 79
26 26 80 DLE p 80
27 ; ; 27 81 DC1 q 81
28 < < 28 82 DC2 r 82
29 = = 29 83 DC3 s 83
30 > > 30 84 DC4 t 84
31 ? ? 31 85 NAK u 85
32 @ @ 32 86 SYN v 86
33 A A 33 87 ETB w 87
34 B B 34 88 CAN x 88
35 C C 35 89 EM y 89
36 D D 36 90 SUB z 90
37 E E 37 91 ESC { 91
38 F F 38 92 FS 92
39 G G 39 93 GS } 93
40 H H 40 94 RS 94
41 I I 41 95 US DEL 95
42 J J 42 96 FNC 3 FNC 3 96
43 K K 43 97 FNC 2 FNC 2 97
44 L L 44 98 SHIFT SHIFT 98
45 M M 45 99 CODE C CODE C 99
46 N N 46 100 CODE B FNC 4 CODE B
47 O O 47 101 FNC 4 CODE A CODE A
48 P P 48 102 FNC 1 FNC 1 FNC 1
49 Q Q 49 103 START(CODE A)
50 R R 50 104 START(CODE B)
51 S S 51 105 START(CODE C)
52 T T 52      
53 U U 53   STOP

CODE 128 Features

  • ・CODE 128 barcode can include all 128 ASCII code characters (including control codes such as [ESC], [STX], [ETX], [CR] and [LF]).
  • ・When CODE-C is used as the start character, one bar pattern can represent 2-digits numbers. This allows very efficient barcode composition. If the barcode data has 12 or more digits, CODE 128 provides smaller size than ITF.
  • ・Since CODE 128 uses 4 types of bar size, printers with high print quality are required. CODE 128 is not suitable for printing with dot matrix printers and FA ink-jet printers and for flexographic printing on corrugated cardboards.

CODE 128 Applications

Use of CODE-C as the start code allows CODE 128 to provide the barcode with very high data density, if only numbers are handled.
EAN-128 makes use of the characteristics of CODE 128 and is currently used in many industrial applications. With EAN-128, various data are included in the barcode, such as manufacturing date of the product, open date, weight, size, lot number, destination, customer's account, etc..
CODE 128 is used in the following industries:
U.S.A. apparel industry
U.S.A. food process industry
U.S.A. drugs and medical equipment industry
Food industries in Australia and New Zealand
European drugs and medical instruments industry


What Is EAN-128?

EAN-128 is the barcode that provides various data including distribution and business transaction data in addition to the data provided by the JAN code and the standard distribution code (ITF) currently available.

Following data can be included in EAN-128 barcode:

・Package number
・Quantity in package
・Weight, capacity and cubic capacity
・Manufacturing date and validity of quality

・Lot number
・Location number (destination)
・Customer's account code
・Customer's order number

The necessary data are used to form the barcode label for the various applications.

For example, On-line purchasing/ordering using EDI (the system for exchanging electronic data between companies), management of open date for the foods, management of drugs validity, simplifying the works for checking incoming products, assorting the packages for every destination, etc.. (The following label is a sample of the foods manufacturer.)


Background of EAN-128 Establishment

JAN code and the standard distribution code (ITF) are the barcodes for indicating the product itself and its quantity and not for the data such as manufacturing date, package number, validity of quality and order number.
While CODE 39 allows such data to be included in the barcode, the exchange of such data between companies is not allowed because the definition and the number of digits of the data are different.
EAN-128 is established as the world universal barcode for common use, with the items and the number of digits of the data and the type of the barcode being standardized.

EAN-128 Composition

The basic composition of EAN-128 is as follows:

  • ・Code 128 is used as the barcode.
  • ・In order to separate the required data such as weight and open data, the "application identifier (AI)" is added which is followed by the data. If more than one data are represented, each data shall be linked.


  • Although application identifiers are parenthesized, the parentheses are not included in the barcode data. They are used just for presentation.

In the sample above, following the application identifier "01", 14-digits code is assigned to identify the delivery container (minimum package unit for corrugated cardboard boxes). Following the application identifier "15", the data representing the validity of quality (consumption validity or drug validity) is given to show August 27, '95. Following the last application identifier "30", the data representing the delivery quantity is given to show 3 pieces.
There are about 100 application identifiers except the above. The required data are selected and included in the barcodes by users.

EAN-128 is not intended to represent the fixed data, but the data selectable for users. Therefore, for common use with EAN-128 among the companies, the standards for the barcode system with the data available shall be prepared by the respective industry and the groups of companies involved.

  • ・In order to distinguish EAN-128 from CODE 128, it is required to give [FNC 1](function 1) following the start code (CODE-A to C).
  • ・Even if the number of digits for the data following the application identifier is a variable-length, [FNC 1] is given to separate the data.


  • ・With EAN-128 being added to EAN code and the standard distribution code (ITF), it can be used as the code to add more data.

EAN 128 is designed to represent the application identifiers and the products relative data or the transaction data of the companies using CODE 128.
In other words, EAN-128 is the standards for the applications to represent the various data. CODE 128 is the standards just for the barcode itself. Difference between EAN-128 and CODE 128 is whether it represents the application or not.
Since EAN-128 uses the barcode composition of CODE 128, any bar cord reader that can read CODE 128 can be used to read the EAN-128 data.

Application Identifier

Application Identifier

There are 100 types of application identifier that can be classified as follows. Some of the data following each application identifier have the fixed number of digits (standard carton ID, date and unit of measurement), while the others have the undefined number of digits (lot number, serial number, quantity in package, quantity and order number).

Classification Content Application identifier
Package style ・Carton numbers are indicated on the corrugated cardboard box that contain the mixed products.
・Carton numbers are indicated on all corrugated cardboard boxes that are piled up on pallets.
・For use of ASN (Advanced Shipment Notice) with indication on SCM label (See page 51)
00 "Standard carton ID"
Products management ・The corrugated cardboard box meets the delivery requirements and no standard distribution symbol ITF is indicated. 01 "Delivery container code"
• Refurbished products and modified products 20
• Products dates (manufacturing date, packaged date and warranty period) are indicated. 11~17
• Product lot number 10
• Product serial number 21
• Weight, cubic capacity and capacity are indicated on the corrugated cardboard box that contains the measured products (foods and fresh fish). 310~369
Administration • Customer's order number 400
• Product consignment number 401
• Location number (companies, offices and specific places) 410~421
• Internal use and any data set by companies 90~99

Typical application identifiers

Application identifier Content Data's number of digits
00 Standard carton ID Numbers with 18 digits

"00" is the identifier that gives the package serial number to every corrugated cardboard box and pallet for delivery. Therefore, the different number is given for every delivery.
The data has 18 digits with the following composition:

Package type 1 digit
Universal company code 7 digits
Package serial number for every delivery 9 digits
Check digit (modulus 10/3 weight) 1 digit

"Package type" is as follows:

Package type
0 Case or carton
1 Pallet (larger than case and carton)
2 Container (larger than pallet)
3 Any package type other than above
4 According to internal requirements (for internal use)
5 According to mutual requirements among the companies concerned
6~9 No use allowed

Package type

"Universal company code" is indicated by "country code" + "manufacturer code" for the companies who registered JAN. For the companies who did not register JAN, it is required to obtain the universal business account code.

"Standard carton ID" is called SSCC-18 (Serial Shipping Container Code) in Europe and America.

Application identifier Content Data's number of digits
01 Delivery container code Numbers with 14 digits

The same composition of the standard distribution code (ITF) is generally applied to "01". It consists of the EAN code of the packaged product and the package indicator that indicates the product quantity.

Package indicator 1digit
EAN code 12 digits
Check digit (Modulus 10/3 weight) 1 digit

"Package indicator" is as follows:

Package indicator
0 Corrugated cardboard boxes that contain the mixed products
1~8 Corrugated cardboard box for one-item that contains the same quantity Setting within the range of 1 to 8. In many cases, 1 is set.
9 The corrugated cardboard box that contains the different quantity for one-item

Since "delivery container code" has the same data composition as for the EAN code and the standard distribution code, it can be used only on the condition that EAN and standard distribution codes are not printed on corrugated cardboard boxes.

"Delivery container code" is called SCC-14 (Shipping Container Code) in Europe and America.

Package indicator

Application identifier Content Format
10 Batch number or lot number Within 20 alphanumeric characters

"10" is the application identifier to indicate the batch number and the lot number of the product. 20 alphanumeric characters (variable-length) or less are available.

Application identifier Content Format
11 Manufacturing date (YYMMDD) Numbers with 6 digits
13 Packaged date (YYMMDD) Numbers with 6 digits
15 Validity of quality (YYMMDD) Numbers with 6 digits
17 Validity for sale (YYMMDD) Numbers with 6 digits

The data of various dates are indicated.
For the validity of quality, the important data necessary for management are indicated. For example, "open date" of foods and "drugs validity" of drugs.

Application identifier Content Format
400 Administration number (customer's order number) Within 30 alphanumeric characters
411 Location number (customer's account code) Numbers with 13 digits

These are the application identifiers to indicate the administration data such as "order number" of customers and "customer's account code".

Application identifier Content Format
410 Location number (destination code) Numbers with 13 digits
420 Location number (destination postal code) Within 9 alphanumeric characters

They are used for assorting goods according to destinations. "410" is the application identifier that allows the assortment for every company with EAN company codes being used.
"420" is the application identifier that allows the assortment for every delivery destination with postal numbers being used.

The sample shows that AI "420" and the postal number "22071" representing the domestic delivery location are used for door-to-door delivery service.

  • Printable PDFs ( Basics of Barcodes, Basics of 2D Codes )
  • Printable PDFs ( 2D code verification )
  • Inquiries and Consultations

Back to top

Other Pages