In production Telegram Mini App

Automaton POS

A full point-of-sale system that lives inside Telegram. No terminal to buy, no tablet to replace, no per-seat licence.

The problem

Small venues get quoted for a POS terminal, a monthly licence per till and a card reader that only works with one processor. Then the tablet dies on a Friday night and the venue is back to pen and paper.

What we built

Automaton POS runs as a Telegram mini app. Any phone the staff already own becomes a till. State lives server-side in Postgres, so a lost phone loses nothing, and a new device is authorised in seconds.

Capabilities

What it actually does

Every item below is a feature of the running system, not a roadmap.

Catalogue and pricing rules

Products, categories and pricing rules live in Postgres and are edited from the admin view. A price change is one edit that every till sees immediately — not a message to whoever is on shift.

Open tabs

Open a tab, add to it across a shift, save and return to it later. Tab state is server-side, so any authorised phone can pick up any tab.

Checkout

Close a tab to a sale in one action. Totals, line items and pricing rules are applied server-side, so two devices cannot disagree about a bill.

Staff roles

Roles resolved from the Telegram account, so nobody shares a PIN. Admin actions — editing products, changing settings, writing pricing rules, assigning roles — are refused for non-admin staff at the API, not hidden in the UI.

Signed and audited

Every call carries a Telegram-signed identity that is verified inside Postgres before anything runs, and every API hit is logged. A poked-at request fails exactly like a poked-at screen.

Nightly report

A sales summary is built and pushed to a nominated Telegram chat at 23:30 every night, and today's takings are available on demand from the same app the orders go through.

Under the hood

How it is put together

Nothing exotic. A mini app talking to an action-routed API, with state in Postgres and authorisation checked server-side on every call.

  • Runs on your server, against your database, with your credentials
  • No per-seat licence and no vendor account required
  • Documented at handover, so someone else could take it over
Automaton POS technical specification
Front endTelegram Mini App (WebApp)
Backendn8n webhook, action-routed
DataPostgreSQL
AuthTelegram identity, HMAC verified in Postgres
Admin APISeparate endpoint, key + role gated
AuditEvery API call logged
ReportingNightly 23:30 push to Telegram
Fit

Who this suits

  • Bars, cafés and taprooms with a handful of staff
  • Market stalls and pop-ups where hardware would not survive
  • Anyone paying a monthly per-till licence they resent

Tell us what keeps going wrong

A conversation costs nothing and often ends with us saying automation is not worth it for a given job. That is a useful answer too.