Getting started
From a fresh install to a web page printing a label, then encoding an RFID tag.
1. Install the bridge
Run the MSI (Windows) or .deb (Ubuntu). prestod auto-starts, installs its local CA, and
opens the admin UI at https://127.0.0.1:31075. See Setup for details.
2. Set the admin password
Complete the first-run wizard — set the admin password. (Nothing prints yet: Presto is deny-by-default until you add an origin.)
3. Allow your web origin
On the Origins page, add your web app's origin, e.g. https://wms.intrasys.com.sg. Only
allow-listed origins can talk to the bridge.
4. Register a printer
On the Printers page, add a printer: pick a transport (TCP 9100, Windows spooler, Linux USB, or serial), its address, its resolution (dpmm), and whether it's RFID-capable. The printer gets a stable alias id that your web app references — it survives OS renames.
5. Print from a web page
Use the JS client:
import { Presto } from '@intrasys/presto-js';
const presto = new Presto({ appName: 'my-wms' });
await presto.connect(); // secure WS, with auth/pairing
const printers = await presto.listPrinters();
const { jobId } = await presto.printRaw(
printers[0].id,
'^XA^FO40,40^A0N,40,40^FDpresto.js test^FS^XZ'
);
presto.on('job.update', (job) => {
console.log(job.state, job.labels); // per-label results
});
The job moves Queued → Sending → Sent → Done, and job.update events carry per-label results.
6. Encode your first RFID tag
- Register an RFID-capable printer and define its Media (the inlay / chip / EPC bits).
- Run Calibrate RFID for that (printer, media) pair.
- Send a job whose ZPL writes a tag (
^RFW). Thejob.updatearrives withverification: "rfid"and per-label{ encoded, voided, epc }. Voided labels are reprinted automatically.
See ZPL & RFID for the encode/verify details and the Local API & SDK for the full protocol.