Docs / Developers
Adapter SDK
Ship a new printer, EFTPOS, scale, or drawer driver in a day.
The Adapter SDK is the contract between apps/bridge and the outside world. Three categories ship today:
- Printer — ESC/POS, Line Mode, anything with a byte vocabulary
and a TCP socket.
- EFTPOS — mock, Tyro iClient, Smartpay JSON-RPC.
- Cash drawer — printer-kicked today; USB-HID coming in v2.
The contract
Each adapter exposes a factory that returns an object implementing the category interface:
export interface Printer {
print(job: PrintJob): Promise<string>;
}
export interface EftposAdapter {
sale(req: EftposSaleRequest): Promise<EftposSaleResult>;
void(req: EftposVoidRequest): Promise<EftposVoidResult>;
refund(req: EftposRefundRequest): Promise<EftposRefundResult>;
}No framework. No DI container. A factory that takes env, returns an object, done.
Certification
We certify adapters against the SDK test harness before shipping them in the public build. See /partners/hardware-vendors for the process and commercials.