Skip to content

Labels that simply print.

Printr turns every thermal label printer in your business into an API call. Send a job from your software, watch it print, and know exactly why when it doesn't.

0
Firewall ports to open
45s
Between printer health checks
600
API requests a minute, per token
1
Label, however many retries

Why Printr

Printing is invisible until it breaks.

Then it is the only thing anyone can talk about. An order cannot go out without a label, and a printer whose state nobody can see turns into someone walking across a warehouse to go and look at it.

Most print setups are honest about very little. The queue says idle whether or not there is a printer on the end of it. A job that vanishes leaves nothing behind to explain where it went. And the fix for a dropped connection — send it again — is the same action that prints two shipping labels for one parcel.

Printr was built the other way round: check the hardware rather than the queue, record every transition, and make sending twice safe by design. What you get is not faster printing. It is printing you can answer questions about.

Platform

Everything printing should have told you.

Four things Printr does that a print queue does not.

01

Know the printer is there

Every other system asks the print queue how the printer is doing. The queue is not the printer.

Unplug a label printer and most systems will still cheerfully report it as ready, because they are reading the queue rather than the machine. Printr checks the printer itself, every 45 seconds, and tells you the moment something changes.

  • Checked again at the moment of printing
  • "We cannot reach it" kept separate from "it is offline"
  • A plain yes or no on whether each printer can print
02

Nothing to open on the firewall

The Mac in your warehouse reaches out to Printr. Printr never reaches in.

A small app runs on a Mac at each site and calls out to Printr, the same way a browser does. No fixed IP address, no ports to open, no VPN, and no conversation with anyone's IT department. If the connection drops it keeps checking for work until it comes back.

  • Nothing to open on the firewall
  • Keeps checking for work if the connection drops
  • A blip costs you seconds, never a label
03

One label, once

A network blip in the middle of a request should not cost you a second shipping label.

Tag a job with your own order reference and sending it twice still prints once — even if two retries land at the same instant. Printr only counts a label as done once it has actually gone to the printer, so a genuine failure can still be sent again.

  • Send the same job twice, get one label
  • Protected at both ends, not just ours
  • Old jobs expire instead of printing hours later
04

Answer "did it print?" properly

There is a real difference between a job that never reached the building and one that reached the printer and failed.

Every step a job takes is recorded and timestamped, from the moment you send it to the moment the label comes out. When something goes wrong you get a specific reason — not "failed" — and Printr tells you whether it is worth trying again.

  • A full history behind every label
  • A specific reason when something fails
  • Retry from the dashboard in one click

Developers

One POST. One label.

A REST API with bearer tokens, idempotency keys and pagination that works the way you already expect. No SDK to adopt, no print server to babysit.

print a despatch label
# Send it. The idempotency key makes a retry safe.
curl -X POST https://printr.example.com/api/v1/printjobs \
  -H "Authorization: Bearer $TOKEN" \
  -H "Idempotency-Key: order-1041-label" \
  -d '{
        "printer_id": 7,
        "template": "shipping-label",
        "data": { "order": "SO-1041", "customer": "Acme Ltd" }
      }'

# 202 Accepted
{
  "data": {
    "id": 8814,
    "state": "queued",
    "printer_id": 7
  }
}

Seven states, and no ambiguity

A job is in exactly one of these, and the four terminal ones never change again. Every transition is timestamped and attributed to either the server or the agent that reported it.

queued dispatched printing printed failed cancelled expired

Templates instead of string building

Keep label layouts on the server, versioned immutably, and send data rather than markup. Interpolated values are stripped of the control characters that would otherwise let a customer's name rewrite the label — so a surname with a caret in it is a surname, not a command.


Raw, when you want raw

Send your own ZPL or TSPL2 straight through. Printr checks it is well formed first — an unterminated label would otherwise leave a printer waiting forever for the rest of it, which looks exactly like a job that vanished.

Read the API reference

Signed-in customers get it with their own printer ids filled in.

Hardware

Works with the printers you already own.

Zebra, TSC, Xprinter and compatible thermal label printers, on your network or plugged straight into the Mac.

Make Typical models Status
Zebra ZT, ZD and GK series, and compatible printers Supported
TSC & Xprinter TE, TX and XP series, and compatible printers Supported
Dymo LabelWriter 450, 550 and 5XL On the roadmap

However they are connected

Printers on your network, and printers plugged into the Mac by USB. Both work the same way from your software's point of view.

One Mac per site

A single machine drives every printer at a location — no server to stand up, and no per-printer licence. Installs without an administrator password.

Pricing

Less than you pay now.

More labels for less money at every tier, and never a charge per seat. Put the whole floor on the dashboard for nothing.

Billing period

Free

Enough to run a small shop on, not just to try.

£0 forever

  • 100 labels a month
  • 1 computer
  • The full API and templates
  • No card required
Start free

Essential

One busy site.

£6 /month

£60 a year saves £12

  • 6,000 labels a month
  • 3 computers
  • Teams, so staff see only their site
  • Full job history and event trail
  • Email support
Start free trial
Most popular

Standard

Several sites, and a label being late costs you.

£17 /month

£170 a year saves £34

  • 35,000 labels a month
  • 6 computers
  • Everything in Essential
  • Priority support
Start free trial

Premium

High volume, where printing cannot stop.

£65 /month

£650 a year saves £130

  • 250,000 labels a month
  • Unlimited computers
  • Everything in Standard
  • Onboarding and migration help
Start free trial

Cheaper per label

Every tier carries more labels than the equivalent elsewhere, which is where the saving really lands: on Standard you are paying roughly half as much for each label you print.

No per-user fees

Put the whole floor on the dashboard. Teams keep each site seeing only its own printers, at no extra cost.

No surprise overage

Go over and we get in touch — we do not quietly bill you by the thousand and explain afterwards.

All prices exclude VAT. Every plan includes the full API, templates, teams and complete job history.

FAQ

Questions worth asking.

Which printers work with Printr?

Thermal label printers from Zebra, TSC, Xprinter and compatible makes, either on your network or plugged into the Mac. We test against real printers rather than just the manufacturer's specification. Tell us the models you run and we will confirm before you commit to anything.

Do you support Dymo LabelWriters?

Printr finds LabelWriters and reports the exact model, so they show up in your inventory alongside everything else. Printing to them is on the roadmap. If Dymo is central to your operation, ask us where it stands and we will tell you honestly whether it is worth waiting.

What do I have to install?

One small app on a Mac at each site. No administrator password, no server to stand up, no firewall changes. It starts itself whenever the Mac does and keeps its credentials in the Mac's own secure storage. Setting it up is a code you copy from the dashboard — most sites are printing within the hour.

Which platforms does the agent run on?

macOS today, and one Mac can drive every printer at a site — network printers and anything plugged into it. The protocol was designed without any assumption about the operating system, so other platforms are a build rather than a redesign. If Windows is on your critical path, talk to us about timing.

How do I find out a job finished?

Ask Printr for the job and you get its current state plus everything that has happened to it, each step timestamped. Once a job has finished — printed, failed or cancelled — that is final, so there is nothing to keep watching.

Is my data separated from other customers?

Completely. Your printers, jobs and templates are only ever visible to your account, and that separation is enforced automatically rather than left to be remembered each time someone writes a query. Happy to walk your IT team through the detail if they would like it.

What happens when the Mac goes offline?

The agent sends a heartbeat every minute, and a sweep on the server marks a device offline when the heartbeat stops — going offline is the one thing an agent can never report about itself. Printer statuses are cleared at the same time, so a machine coming back does not briefly show readings from before it left. Jobs queued in the meantime expire rather than printing a backlog of stale labels at eight the next morning.

Can I change a label without redeploying my software?

Yes — that is what templates are for. Layouts live on the server and are versioned immutably, so a job records the exact version it rendered and a bad edit is one rollback rather than an incident. You can preview a render through the API without printing anything.

Find out what your printers are doing.

Set up a site in an afternoon. Tell us what you print and on what, and we will tell you honestly whether Printr is the right fit.