Behind every printed receipt or barcode label is a print job — a durable, queued record created the instant a sale completes, a receipt is printed manually, or labels are requested in bulk. The server renders the complete printer byte stream exactly once, at creation time, and the print agent's role is deliberately dumb: it just decodes and sends those exact bytes to the printer, never interpreting an order or a template itself. Editing a receipt template or a label therefore takes effect on the very next print, with no update needed on the branch's print agent machine.
Because jobs sit in a queue rather than firing directly, a printer or its agent being briefly offline never loses a print — the job just waits as pending until the agent's next check-in picks it up. A job that fails repeatedly is marked failed and raises a notification, and any print job can be manually retried or removed from the Printers screen.
Key capabilities
- Receipts, barcode labels, and cash-drawer kicks all share the same queue, poll, and retry pipeline
- Full byte stream rendered server-side once, so template changes apply on the next print with no agent update
- Jobs survive a printer or agent being temporarily offline
- Automatic retry with a failure notification after repeated attempts
- Manually retry or delete any job from the print job history