Developer ToolsFree generatorPDF, Excel, Word exportPackaging and Printing

SSCC-18 Pallet Label ZPL Generator for Zebra Printers

A pallet shipping label usually carries an SSCC in a GS1-128 barcode plus ship-to, PO and content details. This generator produces ZPL II code you can send to a Zebra or compatible printer.

Fill in

Generated code
Download:

ZPL II label

^XA
^PW812
^LL1218
^CI28
^FO40,40^A0N,30,30^FDFROM: Acme Packaging Ltd, Plant 2^FS
^FO40,100^A0N,34,34^FDTO: Northside Distribution Centre^FS
^FO40,170^A0N,30,30^FDPO: PO-448210^FS
^FO40,220^A0N,30,30^FDGTIN: 10012345678902^FS
^FO40,270^A0N,30,30^FDQTY: 48 cases^FS
^FO60,400^BY4,3,300^BCN,300,N,N,N,N^FD>;>800300123450000000012^FS
^FO120,740^A0N,40,40^FD(00) 300123450000000012^FS
^XZ

Send to a network printer (PowerShell)

$zpl = Get-Content -Raw .\label.zpl
$client = New-Object System.Net.Sockets.TcpClient("192.168.1.50", 9100)
$stream = $client.GetStream()
$bytes = [System.Text.Encoding]::UTF8.GetBytes($zpl)
$stream.Write($bytes, 0, $bytes.Length)
$stream.Close()
$client.Close()

Check your SSCC check digit and company prefix before printing. The code assumes a 203 dpi Zebra compatible printer and uses ^BC with start code C and FNC1 (>;>8) to encode application identifier 00. Verify the barcode with a grade-capable verifier and your customer's label spec, because retailers often add extra fields or require other label sizes.

Automate label printing from ERP shipments

Optional review of generating pallet labels directly from shipment data.

Optional. The tool and every export work without this. No spam.

How to use it

Fill the fields, then copy the ZPL block into a file or paste it into your printer's test utility. The 18 digit SSCC includes an extension digit, your GS1 company prefix, a serial reference and a check digit. Do not reuse an SSCC. For production, generate the serial from your ERP or WMS so each pallet gets a unique number.

  • Set width and length for your label stock
  • Enter 18 digits for the SSCC
  • Use 14 digits for the GTIN
  • Test print on a few labels first

What the ZPL does

The ^XA and ^XZ commands start and end the label. ^PW and ^LL set width and length in dots. ^BY sets bar width, and ^BC prints Code 128. The data string starts with >; to select code set C and >8 for FNC1, followed by the application identifier 00 and the SSCC. Human readable text is printed separately as (00) plus the number.

Worked example

With the default values the printer prints a four by six inch pallet label with a 300 dot tall SSCC barcode and the lines for ship-from, ship-to, PO, GTIN and quantity. If your customer requires additional AIs such as (02) content GTIN and (37) quantity, concatenate them in one GS1-128 barcode with FNC1 separators after variable length fields.

Common mistakes

Using a wrong check digit, which scanners reject. Sending Unicode characters without ^CI28. Printing at the wrong dpi so the barcode is too narrow. Reusing the same SSCC on two pallets. Generate SSCC serials from one controlled sequence in your ERP or WMS and log every printed label.

Frequently Asked Questions

What is an SSCC?

An SSCC is a Serial Shipping Container Code, 18 digits that identify a logistics unit such as a pallet. It is encoded with application identifier 00 in a GS1-128 barcode and must be unique for each unit.

Which barcode does the label use?

The label uses GS1-128, which is Code 128 with an FNC1 start character and application identifiers. In ZPL that is the ^BC command with start code C and FNC1 in the data string.

Can I use this for other printers?

Any printer that supports ZPL II should accept the code, though dpi and memory differ. For other languages such as TSPL or EPL you need a different generator.

How do I calculate the SSCC check digit?

Use the GS1 modulo 10 method: from the right, multiply alternate digits by 3 and 1, sum them, and subtract the total from the next multiple of ten. Your ERP or WMS should compute it automatically.

Netray can help connect label printing to ERP shipment data so SSCC, PO and quantity come from the shipment record instead of retyping.