Under the hood

Built to keep the books exact.

A Go server and a PostgreSQL 18 database. Plain enough to run on a small server, strict enough that one bug cannot quietly corrupt the ledger.

Rechvix architectureBrowsers, phones and the desktop app talk over HTTPS to one Go server made of modules. The server writes to PostgreSQL 18 in a single transaction.BrowserPhoneDesktop appGo serveridentitycatalogueinventorysalespurchasesaccountingtaxai toolsPostgreSQL 18exact decimals for moneyrow-level securityappend-only stock historyHTTPS1 transaction
One server and one database. Nothing in this path calls a Rechvix-operated cloud.

Design decisions

Modular monolith
Finalizing an invoice touches stock, tax, accounts and numbering together, so it needs one transaction rather than a chain of services.
Exact decimals for money
Floating point cannot hold 0.01 exactly, and an accounting system that rounds wrongly has a trust problem. Money and rates use exact decimals.
Append-only stock history
A balance is the sum of movements, never an editable number, so it can always be explained and reconciled.
Double-entry, enforced in layers
The application checks the sum, the database enforces it, and posted rows cannot be silently edited.
Row-level security
Tenant data is scoped in the application and again in PostgreSQL, so one bug is not a cross-tenant leak.
Tax as data, not columns
A generic tax model with country packs keeps a new country additive instead of a rewrite.

Passwords use Argon2id with TOTP support. Read the engineering notes on double entry and money as exact decimals, or the architecture documentation.

Integrate with it

The API, webhooks and read-only MCP interface sit on the same permission checks as the app.