Developers & API

Posnic is built to be extended: the same APIs we use are the ones you get.

🔌 Local REST API

Every Posnic installation serves a full REST API on the shop's machine (http://<host>:5555/api/…): sales, items, customers, stock, reports. It's the same API the app's own screens use, so anything the app can do, your integration can do: e-commerce stock feeds, accounting exports, custom dashboards on the shop LAN.

# example: item list from a shop machine on your LAN curl http://192.168.1.5:5555/api/items -H "Authorization: Bearer <token>"

🔄 Open sync protocol

Cloud sync speaks a documented, checkpoint-based replication protocol (the same family as CouchDB/WatermelonDB): five HTTP endpoints, EJSON encoding, last-writer-wins with domain-specific merges, and server-enforced branch ACL. Any server implementing the spec is a valid sync provider, the agent connects to whatever endpoint it's configured with. No lock-in, by design.

The full specification (SYNC-PROTOCOL.md) publishes with the open-source repository.

🧩 Plugin platform (coming)

A WordPress-style extension marketplace with Shopify-style isolation: plugins declare permissions in a manifest, render UI in sandboxed iframes, and access data only through a versioned /api/v1 with scoped tokens, never in-process. Your plugin can't crash a shop's billing, and a Posnic update can't break your plugin.

📖 Source, licence, contributing

The application is AGPL-3.0 at github.com/Posnic/POS. Build instructions, contribution guide and security policy live in the repo. Companies needing private modifications: commercial licences via info@posnic.com.