Skip to content

ZiPrint is a network appliance that sits on your warehouse LAN, in the path between your print jobs and the printer. It recognizes label print jobs and injects a Zimarker as they pass through, with no changes to your WMS, label software or print drivers. Clients keep printing to the same address as before; the Zimarker is added in transit.

How it works

  1. A client (WMS or label software) sends a print job to the printer's address.
  2. The ZiPrint proxy receives it. Traffic it doesn't recognize as a label job passes straight through, unchanged.
  3. For a recognized job, the on-device coupling service parses it, takes an allocated Zimarker code from a local bank, and rebuilds the job with the Zimarker injected.
  4. Based on regex definitions, a pallet ID is retrieved from the print job.
  5. ZiPrint forwards the modified job to the printer, and the label prints with a Zimarker.
  6. The Zimarkers and pallet IDs are coupled asynchronously.

ZiProxy

ZiPrint currently supports ZPL print jobs only.

Network setup

ZiPrint sits in front of the printer by taking over its network address. During setup:

  1. The printer is moved to a new IP address.
  2. ZiPrint takes over the printer's original IP address.
  3. Clients keep sending print jobs to that original address, which now belongs to ZiPrint. ZiPrint processes each job and forwards it to the printer at its new address.

This is why nothing changes on the client side: as far as your WMS and label software are concerned, they're still printing to the same printer at the same address.

Design guarantees

The printer never stops. If coupling can't happen (service error, empty bank, cloud unreachable), the proxy forwards the original, unmodified job. A label may print without a Zimarker during a failure, but printing never halts.

Local-first. The proxy works independently of cloud connectivity while printing. The cloud only seeds the Zimarker bank and receives coupling reports afterward, so a cloud outage doesn't stop labels printing as long as the bank has codes.

Unique codes. Each device holds its own pre-allocated bank, and the cloud guarantees banks never overlap between devices, so no two jobs receive the same Zimarker.