One console for currency, gold and debt.
A browser-based console that unifies currency and gold trading, inventory, debts and margins across several locations — giving the owner net result in real time with zero manual reporting.

- Industry
- FinTech / currency and precious-metal exchange
- Engagement
- Multi-location operations console (web + Telegram bot)
Exchange offices live on speed: a deal closes in two minutes, but the owner often learns its real result only at month-end, after currency and gold ledgers are reconciled by hand. We built an operations console where the cashier's everyday actions are the accounting: every exchange instantly updates inventory, cost basis, margin and the owner's dashboard.
By treating currency and precious metals as two sources of one income rather than two separate programs, we gave the owner a single net figure per day, per location and per counterparty, plus a full, non-editable audit trail of who changed which rate and when.
What we were up against
- Two ledgers, one business. Currency and gold were tracked in separate tools, so daily profit was a sum of two reports nobody produced on time.
- Invisible margin. Deal profit was estimated from price differences, not from the actual cost basis of the lot sitting in the till.
- Debts and open deals held in the head. Who owes what, in which currency and for how long lived in notebooks and memory, with no ageing or limits.
- Multi-location blind spots. Several points of sale and legal entities meant no consolidated view, and no way to see which location or cashier was quietly losing money.
How we solved it
- Single deal screen for currency and metal. One form handles both asset types (amount, rate, counterparty) and shows margin and post-deal till balances before the cash is handed over.
- Cost-basis inventory engine. Every currency lot and metal lot (grams, fineness) carries its own acquisition cost; margin is computed automatically at the moment of sale, not at month-end.
- Scope switching and role-based access. Two switches, business and location, recalculate every figure in the console; cashiers, location managers and owners each see exactly what their role permits, with financial results gated separately.
- Owner dashboard, audit log and Telegram bot. Net result, cash flow, margins by direction and location, counterparty analysis and an immutable action log, all available in the browser and on request via a Telegram bot, with a one-click Panic mode that disconnects the console from the server.
Measurable impact
- Zero report preparation. Daily, weekly and monthly results assemble themselves from the same actions cashiers already perform. No separate data entry for accounting.
- Real margin on every deal. Profit per deal, direction, location and cashier is visible instantly, exposing loss-making pairs and revealing that the highest-turnover client was not the most profitable.
- Controlled cash and debt exposure. Blocked cash in open deals, receivables and payables per currency, ageing and credit-limit usage are all on one screen. No more forgotten positions.
- Scales without new systems. A new location is one record; a new legal entity is one business. The same console covers all points of sale with consolidated or per-location reporting.
What we used
- Web Development
- Python
- Django
- Next.js
- TypeScript
- PostgreSQL
- Telegram Bot API
- AWS
- Role-Based Access Control
- Multi-Currency Accounting
- i18n (EN/UK)