More Symbologies
Australia Post 4-state Barcode
Australia Post Domestic eParcel Barcode
Aztec Code Barcode
Codabar
Code 11
Code 128
Code 16K
Code 32
Code 39
Code 93
Compact PDF417
Danish Postal 39
Data Matrix
Deutsche Post Identcode Barcode
Deutsche Post Leitcode Barcode
EAN/UPC Add On 2
EAN/UPC Add On 5
EAN-13
EAN-13 CC-A and CC-B Composite Barcodes
EAN-8
EAN-8 CC-A and CC-B Composite Barcodes
EAN-99
EAN-Velocity
FedEx Ground 96
French Postal 39 A/R
GS1-128
GS1-128 (formerly UCC/EAN-128) CC-A, CC-B and CC-C Composite Barcodes
GS1 DataBar-14 Stacked
GS1 DataBar-14 Stacked (Formerly RSS-14 Stacked - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataBar-14 Stacked Omnidirectional
GS1 DataBar-14 Stacked Omnidirectional (Formerly RSS-14 Stacked Omnidirectional - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataBar-14 Truncated
GS1 DataBar-14 Truncated (Formerly RSS-14 Truncated - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataBar Expanded
GS1 DataBar Expanded (Formerly RSS Expanded - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataBar Expanded Stacked
GS1 DataBar Expanded Stacked (Formerly RSS Expanded Stacked - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataBar Limited
GS1 DataBar Limited (Formerly RSS Limited - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataBar Omnidirectional/GS1 DataBar-14
GS1 DataBar Omnidirectional/GS1 DataBar-14 (Formerly RSS-14 - Reduced Space Symbology) CC-A and CC-B Composite Barcodes
GS1 DataMatrix Barcode
HIBC LIC 128
HIBC LIC 39
HIBC PAS 128
HIBC PAS 39
IATA 2 of 5 Barcode
Industrial 2 of 5
Interleaved 2 of 5
ISBN
ISBT 128
ISMN
ISSN
Italian Post 25
ITF-14
JAN-13
JAN-8
Kodak Patch Code Information
Macro PDF417
Matrix 2 of 5
MICR E13-B
Micro PDF417
Micro QR Code
MSI
Numly Number
OPC
PDF417
Pharmacode
PLANET
POSTNET
PZN
QR Code
British Royal Mail 4-State Customer Barcode
Royal TPG Post KIX 4-State Barcode
SCC-14
Semacode
Singapore 4-State Postal Code Barcode
SSCC-18
Swiss PostParcel Barcode
Telepen
UCC/EAN-128
UPC-A
UPC-A CC-A and CC-B Composite Barcodes
UPC-E
UPC-E CC-A and CC-B Composite Barcodes
UPS MaxiCode
USPS Facing Identification Marks
USPS Horizontal Bars
USPS Intelligent Mail / OneCode 4-State Customer Barcode
USPS Intelligent Mail Container Barcode
USPS Package Identification Code (UCC/EAN-128 GS1-128)
USPS Package Identification Code (USS Code 128)
USPS Sack Label Barcode
USPS Tray Label Barcode
VICS BOL Barcode
VICS SCAC PRO Barcode

UPS MaxiCode Barcode - .NET Windows Forms

Also known as MaxiCode, Maxi Code, UPS barcode, United Parcel Service MaxiCode

Overview
MaxiCode is a fixed-size (approximately 1 inch by 1 inch) 2D matrix barcode symbology which is made up of offset rows of hexagonal modules arranged around a unique finder pattern. MaxiCode was originally created and used by United Parcel Service (UPS) for tracking and managing the shipment of packages.

MaxiCode barcode can encode 256 international characters; values 0-127, in accordance with ANSI X3.4, i.e. all 128 ASCII characters and values 128-255 in accordance with ISO 8859-1 (Latin Alphabet No. 1). Although the capacity of a MaxiCode symbol is not as high as other 2D matrix barcode symbologies, it was primarily designed to encode address data. The maximum data capacity in a single MaxiCode Symbol is 93 alphanumeric characters or 138 numeric characters.

MaxiCode features "Structured Append" which allows files of data to be represented in up to 8 MaxiCode symbols. The original data can be correctly reconstructed regardless of the order in which the symbols are scanned.

MaxiCode symbols are divided into a primary and a secondary message featuring Reed-Solomon error correction. In general, the Primary message normally encodes a postal code, a 3 digit country code and a 3 digit class of service number while the Secondary message normally encodes address data and any other required information. In addition, MaxiCode has modes which are used to define the structuring of the data and error correction within a symbol. The following modes are available:
MaxiCode Modes Description
Mode 0 It is obsolete and superseded by Modes 2 and 3.
Mode 1 It is obsolete and superseded by Mode 4.
Mode 2 & 3 Structured Carrier Message. Modes 2 and 3 are designed for use in the transport industry. They encode the destination address and the class of service as defined by the carrier.
Mode 4 Standard Symbol. It indicates that the symbol employs Enhanced Error Correction (EEC) in the Primary Message and Standard Error Correction (SEC) for the Secondary Message.
Mode 5 Full EEC. It indicates that the symbol employs Enhanced Error Correction (EEC) for both the Primary and Secondary Message.
Mode 6 Reader Programming. It indicates that the symbol encodes a message used to program the reader system and that Standard Error Correction (SEC) is used for the Secondary Message. When a Mode 6 symbol is read no data shall be transmitted.


Special Message Structure when using Mode 2 and 3 (Structured Carrier Message)
MaxiCode Mode 2 and Mode 3 shall be reserved for use as a destination sortation symbol for use by carriers in the transport industry. In these modes, the primary message is always data specific and encodes postal code, country code and service class. The three primary data elements should be supplied in the above order separated by GS (Group Separator - ASCII 29) immediately followed by the secondary message contents. In addition, each data element shall be of the correct type, e.g. postal codes in mode 2 must be all numeric and in mode 3 it must be alphanumeric.

There are two standard message formats when using Mode 2 and Mode 3:

  • Messages Beginning with "[)>RS01GS": Messages which begin with the seven encoded data characters"[)>RS01GS" conform to particular open system standards and has the following structure:
    • [)>RS (Message Header)
    • 01GS (Format Header)
    • 2-digit representing the year (YY) of a date
    • Postal/Zip Code:
      • If Mode 2 (NUMERIC ONLY): 5-digit zip code + 4-digit zip code extension (if none exists, four zeros 0000 must be specified)
      • If Mode 3 (ALPHANUMERIC): 6-alphanumeric characters zip code (A through Z or 0 to 9)
    • GS
    • 3-digit country code (from ISO 3166) - NOTE: Mode 2 supports the US Country Code (840). For other country codes please use Mode 3 instead.
    • GS
    • 3-digit class of service
    • GS
    • <tracking number> (Mandatory Data for UPS)
    • GS<SCAC> (Mandatory Data for UPS)
    • GS<UPS shipper number>
    • GS<Julian day of pickup>
    • GS<shipment ID number>
    • GS<n/x> (Package n/x)
    • GS<package weight>
    • GS<address validation>
    • GS<ship to street address>
    • GS<ship to city>
    • GS<ship to state>
    • RS
    • EOT (End of Message)

      Where GS (ASCII 29) is used to separate fields in a message; RS (ASCII 30) is used to separate format types; and EOT (ASCII 4) is the end of transmission characters.

  • Messages NOT Beginning with "[)>RS01GS":
    • Postal/Zip Code:
      • If Mode 2 (NUMERIC ONLY): 5-digit zip code + 4-digit zip code extension (if none exists, four zeros 0000 must be specified)
      • If Mode 3 (ALPHANUMERIC): 6-alphanumeric characters zip code (A through Z or 0 to 9)
    • GS
    • 3-digit country code (from ISO 3166) - NOTE: Mode 2 supports the US Country Code (840). For other country codes please use Mode 3 instead.
    • GS
    • 3-digit class of service
    • GS
    • <The secondary message data in the required format>
    • EOT (End of Message)

      Where GS (ASCII 29) is used to separate fields in a message and EOT (ASCII 4) is the end of transmission characters.

Sample of a MaxiCode barcode

How to create MaxiCode barcodes using Barcode Professional for

ASP.NET/Windows Forms/Reporting Services/Compact Framework  
Note: Please refer to the Class Reference documentation for more information about the properties and methods stated in this document.
In order to get a MaxiCode barcode image, please follow these steps:
  • Set the Symbology property to MaxiCode
  • Set the MaxiCodeMode property
  • Set the Code property with the value to encode. NOTE: To encode Mode 2 or 3, then please specify the message in the correct format/structure (more info above)
  • If desired, you can use the tilde character "~" to specify special characters in the input data e.g. ~013 is used to represent the ASCII character with the decimal value 13 (CR). To do that you must set the MaxiCodeProcessTilde property to True.

Examples of MaxiCode barcode images

Code property = ABC123456789 and MaxiCodeMode property = Mode4 will produce the following barcode image:

Code property = [)>~03001~029961Z00004951~029UPSN~02906X610~029159~0291234567~0291/1~029~029Y~029634 ALPHA DR~029PITTSBURGH~029PA~030~004 and MaxiCodeMode property = Mode2 and MaxiCodeProcessTilde property = True will produce the following barcode image (NOTE: Where ~029 is GS (ASCII 29); ~030 is RS (ASCII 30) and ~004 is EOT (ASCII 4)):

Code property = 524032140~029840~029001~029AIM USA~029634 ALPHA DRIVE~029PITTSBURGH~029PA~004 and MaxiCodeMode property = Mode3 and MaxiCodeProcessTilde property = True will produce the following barcode image (NOTE: Where ~029 is GS (ASCII 29) and ~004 is EOT (ASCII 4)):

 Copyright © 2003 - 2010 Neodynamic S.R.L. All rights reserved.