DesignerA real label canvas, in the browser
- Drag-and-drop canvas with snap guides, alignment, multi-select, rubber-band selection, keyboard nudging, copy/paste/duplicate and full undo/redo.
- Real barcode previews — Code 128, Code 39/93, EAN-13/8, UPC, ITF, Codabar, QR, DataMatrix, PDF417 and Aztec are rendered with the actual symbology, at the actual module size the printer will use.
- Text, lines, boxes and images — images are auto-converted to printer-ready 1-bit bitmaps, resizable by corner handle or exact millimetres, re-sampled from the original so quality never degrades.
- Version history on every save: restore any earlier revision of a label in one click. Concurrent-edit protection warns you when a teammate saved first.
- Folders and a shared company library — everyone on the team works from the same approved designs.
- Import / export: paste existing Honeywell Fingerprint code and keep editing it visually; export back to code or portable .xld files.
PrintingYour printers, both languages
- Honeywell Fingerprint and Zebra ZPL generated from the same design — set each saved printer's language once and the right code is produced automatically.
- The Print Bridge — a small helper that runs on the PC you print from and forwards jobs to printers over your own network. No inbound firewall rules, nothing leaves your LAN. Windows and macOS builds included.
- Saved printers per company (name, IP, port, language, default) — set up once by a Manager, used by everyone, from the designer, the queue, and the API.
- Copies control everywhere: fixed copies, per-row quantities from CSV, or per-job quantities from your ERP.
Print QueueNothing prints until a person releases it
Printers run out of stock, get loaded with the wrong media, or sit unattended. The queue separates creating a label job from physically printing it.
- Pending queue per company — jobs arrive from your systems, from CSV imports, or queued by hand, and wait until someone at the printer releases them.
- Preview as it will print — the exact label, with the job's real data substituted in, rendered before anything hits paper.
- Release-time prompts — if the source system didn't specify the design, copies or printer, the person releasing chooses them; the choices stick for reprints.
- Cancel and restore with confirmation — cancelled jobs move to history and can be brought back to the queue later.
- Controlled reprints — reprinting requires a reason (damaged, missing, jam, placement, quality) and reuses the original approved data byte-for-byte.
- Full audit trail on every job: received, printed, reprinted, failed, cancelled, restored — who, when, which printer, how many copies, and why.
IntegrationsQueue jobs from any system with one POST
Two kinds of API key, both managed in the app without any developer setup on our side:
Print API key — for your own systems
- Generated by an owner on the Team page in one click; rotate or revoke any time.
- POST a flat JSON object:
transactionIdplus your data — every field becomes a {tag} that fills the matching placeholder in the design. - Optionally name the design (
labelType), copies and printer — anything missing is chosen at print time. - Idempotent by transaction id: re-sends update the pending job instead of duplicating; re-issuing a printed transaction supersedes it cleanly.
- Status lookup and cancellation endpoints included; built-in example & docs popup next to the key.
Supplier keys — one system feeding many companies
- For hubs: an ERP creates label requirements for suppliers, each supplier releases their own jobs on their own printers.
- Map the system's supplier codes to companies and its label codes to your approved designs — pinned to a version, so a later edit never silently changes what suppliers print.
- Suppliers see only their own jobs; the hub sees a dashboard across all of them.
Variable dataTags and CSV batch printing
- {Tags} in any text or barcode — design once, fill with live data at print time. Preview values keep the canvas readable while you design.
- CSV batch printing — headers map to tags, one label per row, with a Qty column for per-row copies. Print immediately from the designer, or import the CSV into the queue as individually releasable jobs.
- Unmatched tags print as-is — so labels feeding downstream systems keep their placeholders intact.
TeamRoles that match how a label floor actually works
| Role | What they can do |
|---|---|
| User | Release jobs from the print queue — nothing else. Owners can additionally allow them to queue jobs manually. |
| Manager | Everything above, plus set up printers (name, IP, language) and queue jobs. |
| Admin | Everything above, plus design labels and manage the library. |
| Owner | Everything above, plus invite people, set roles, and manage API keys. |
- Email invitations with the role chosen up front; pending invites can be revoked.
- Tenant isolation by construction — every query is scoped to your company at the database layer, not just in the UI.
- Audit log of team changes, printing, imports and API activity.
PartnersWhite-label it as your own
- Your domain, your brand — partners point a CNAME, upload their logo, pick their accent colour, and the whole product (sign-in, app, emails) carries their identity.
- A partner portal to create customer companies, invite owners, and watch usage — customers who sign up on the partner's domain are attributed automatically.
- Strict separation — partners and their customers only ever see their own slice.
Interested in offering Spool under your own brand? Create a workspace and get in touch.