Skip to main content
Use this when your own systems do the scanning: a fixed-mount reader on a packing line, handheld scanners at receiving, or a vision system at end-of-line inspection. Each unit gets a unique, signed serial your systems can read and check, with or without a connection to Satyakod.

1. Create the batch

In Batches → New batch:
  1. Pick the product. A GTIN isn’t needed for serial-only codes.
  2. Where codes are checked: Offline, or Online and offline if the same units will also be checked by consumers or partners.
  3. Code symbology:
  4. Lot, dates and sale regions are kept with the batch in Satyakod. Serial-only codes don’t carry them: your systems look them up from the batch, which the serial identifies.

2. Print

Send the job to the print line’s Zebra printer from the batch, or download the Printer job (ZPL). Each serial-only label carries the code, the product name, the serial in groups of four for people to read, and the batch id. The Serial list (CSV) has every serial with its index.
Print a few labels from the Proof sheet first and scan them with the line’s reader at line speed before the full run.

3. Read

Configure the scanner to send just the decoded text, as most do by default (keyboard wedge, serial port or the reader’s own API), with your usual suffix such as Enter. It sends the 16-character serial, for example 0021A0512PXK20J9. From the serial alone, without a key, your system can read:
  • the batch: the first 24 bits are the number in the batch id (1045 for B-1045);
  • the item index in the batch: the next 24 bits.
See Serial numbers for the format.

4. Check

To confirm a serial is genuine without internet, an admin downloads the batch’s verification key and your system checks each serial with it: Offline verification, with examples in Python, Node.js and C#. The serial list works too, as a lookup of issued serials.

5. Sync (optional)

Upload the scans when you’re online with POST /v1/verify/offline. They appear in Scans, feed clone detection and alerts, and count in the monthly report, each at the time it was scanned.