GS1 Composite Code - Dynamsoft Barcode Reader SDK
What is a GS1 Composite Code?
As the name suggests, the GS1 Composite symbology combines a GS1 system linear symbol and a 2D Composite Component as one symbology. While the two components are separated by a separator pattern, the 2-dimensional component is printed above the linear component.
Structure
The Linear Component
The linear component encodes the item’s primary identification. The choice of linear component determines the name of the composite symbol, such as an EAN-13 Composite symbol, or a GS1-128 Composite symbol. The linear component can be one of the following:
- A member of the EAN/UPC symbology (EAN-13, EAN-8, UPC-A, or UPC-E)
- A member of the GS1 DataBar family
- A GS1-128 symbol
Note
- GS1 DataBar is generally preferred over EAN/UPC when more data or smaller space is involved.
The 2D Composite Component
The adjacent 2D Composite Component encodes supplementary data, such as a batch number and expiration date. The 2D Composite Component (abbreviated as CC) is chosen based on the selected linear component and on the amount of supplementary data to be encoded. The three 2D Composite Components, listed in order of increasing maximum data capacity, are:
- CC-A: a variant of MicroPDF417
- CC-B: a MicroPDF417 symbol with new encoding rules
- CC-C: a PDF417 symbol with new encoding rules. It has the greatest data capacity of the composite symbols, encoding up to 2,361 digits
Three Types of Composite Symbols
Each of the three types of composite symbols A, B, and C have different encoding rules.
Maximum numeric data capacity of 2D Composite Component:
- - CC-A: up to 56 digits.
- - CC-B: up to 338 digits.
- - CC-C: up to 2,361 digit.
-
CC-A: The 2D component is a variant of MicroPDF417, and the 1D component is UPC-A and EAN-13, EAN-8, UPC-E or GS1 DataBar.
-
CC-B: The 2D component is a MicroPDF417 symbol with new encoding rules, and the 1D component is UPC-A and EAN-13, EAN-8, UPC-E or GS1 DataBar.
-
CC-C: The 2D component is a PDF417 symbol with new encoding rules, and the 1D component is a GS1-128 symbol.
Permissible combinations of linear and 2D Composite Components
Note
- Only specific combinations of linear and composite components are allowed.
Linear Component |
CC-A/CC-B |
CC-C |
UPC-A and EAN-13 |
Yes (4-columns) |
No |
EAN-8 |
Yes (3-columns) |
No |
UPC-E |
Yes (2-columns) |
No |
GS1-128 |
Yes (4-columns) |
Yes (variable width) |
GS1 DataBar Omnidirectional and GS1 DataBar Truncated |
Yes (4-columns) |
No |
GS1 DataBar Stacked and GS1 DataBar Stacked Omnidirectional |
Yes (2-columns) |
No |
GS1 DataBar Limited |
Yes (3-columns) |
No |
GS1 DataBar Expanded and GS1 DataBar Expanded Stacked |
Yes (4-columns) |
No |
Primary Industries Using GS1 Composite Codes
Industry |
Use Case Highlights |
Healthcare |
- Supports regulations for serialization, traceability, compliance.
- Typical data: GTIN + Batch/Lot + Expiry Date + Serial Number.
- Often printed on unit-dose packaging, vials, or medical devices.
|
Fresh Foods |
- Encodes weight, expiry, lot tracking at POS.
- GS1 DataBar Expanded is often paired with Composite Components to encode these details.
|
Retail (Emerging) |
Traceability, recalls, enhanced checkout data |
Foodservice |
Expiry and batch tracking |
Logistics |
- Used for case/pallet labeling with full shipment info.
- GS1-128 with CC-C is ideal for large data capacity (e.g., SSCC, GLN, ship-to info).
|
How could Dynamsoft help you with GS1 Composite Code?
Dynamsoft barcode reader enables you to efficiently embed high-speed and reliable barcode reading functionality in your web, desktop or mobile application using just a few lines of code.
Download the free trial SDK, explore our helpful resource center including sample codes, tutorials, guides and more to get started.
Effortlessly scan challenging GS1 Composite codes with the Dynamsoft Barcode Reader.
Complex Structure |
Alignment and Orientation Issue |
Poor Print Quality |
Environmental Factors |
|
|
|
|
GS1 Composite Codes include both a linear barcode (e.g., GS1-128) and a 2D component (e.g., CC-A, CC-B, or CC-C). The scanner must be able to read and interpret both components in sequence, which requires more advanced decoding capabilities. |
The linear and 2D components must be properly aligned for the scanner to decode them correctly. Misalignment, skewing, or improper orientation can cause the scanner to fail in reading either or both parts of the composite code. |
The 2D component typically includes error correction, but if the error rate is too high due to damage or poor print quality, it can interfere with the scanner’s ability to capture the barcode image accurately. |
Lighting, reflection, and surface curvature can affect the scanning of GS1 Composite Codes more severely than simpler barcodes. The 2D component, in particular, may be more sensitive to these factors. |