Self-Hosted by DefaultAGPL-3.0 Open SourceIndia GST ReadyDouble-Entry EnforcedNo Phone-Home Telemetry

Billing, inventory and accounts built to survive an audit

Rechvix is a self-hosted billing, inventory, accounting and GST-compliance platform for real Indian businesses — not a CRUD demo. Money is stored as NUMERIC, never float. Every journal entry is balance-checked at three separate layers. Stock is an append-only ledger, never an editable number. GST e-Invoice and e-Way Bill talk to the actual government APIs.

$
curl -fsSL https://raw.githubusercontent.com/Raktim94/rechvix/main/scripts/quickstart.sh | bash

Installs Docker Desktop and git via Homebrew if either is missing, clones the repo, and runs ./install.sh.

View the source on GitHubOpen source, AGPL-3.0 · a managed cloud version is on the roadmap

3

Layers enforcing double-entry

0

Floats used for money

10 of 11 stages

Backend & web app shipped — hardening in progress

Rechvix brand imagery — billing, inventory, accounts and GST, from products to profits

Rechvix — billing · inventory · accounts · GST, in one self-hosted platform

AGPL-3.0

Open source and source-available — self-host, use, and modify for your business.

Self-hosted by default

Your own PostgreSQL, your own server. No mandatory cloud dependency.

Row-Level Security

Tenant isolation enforced both in application code and in PostgreSQL itself.

Verified, not just claimed

Each build stage ships with real passing unit and integration tests before it's marked done.

Product

See it in action

Real screens from the running web app, not mockups — with demo data, today.

Rechvix dashboard — today's sales, collections and purchases, outstanding receivables and payables, current stock value, and a sales trend chart

Today's business at a glance: sales, collections and purchases, outstanding receivable and payable, current stock value, low-stock items, and a sales trend chart — the first screen after login.

Feature scope

Everything a real back office needs

Grouped by what it's actually for — not a wall of undifferentiated checkmarks. See the roadmap for what's shipped today versus in progress.

Billing

Quotations to invoices

Quotations, proforma, tax, cash and credit invoices, plus credit/debit notes and sales & purchase returns — the full document lifecycle a real billing counter needs, not just a single invoice screen.

POS billing

Fast counter billing for walk-in sales, built on the same invoice engine as the rest of the platform — so a POS sale and a B2B tax invoice post through identical, correctness-checked logic.

Multi-company, multi-branch

One deployment can run several legal entities and branches with proper document numbering per entity, not a single-tenant assumption bolted on later.

Inventory

Perpetual multi-warehouse inventory

Stock balance is a materialized projection of an append-only movement ledger, never a directly-editable number — so it's always reconcilable back to every movement that produced it.

Batch, lot & serial tracking

Track stock at the batch, lot, or serial-number level with unit conversion built in, across as many warehouses as your business actually runs.

Accounting

Full double-entry accounting

Customer and supplier ledgers, ageing, and a real chart of accounts — with every posted journal balanced and enforced, not assumed.

GSTR-1 / GSTR-3B-oriented reporting

Reports structured around what you actually have to file, not a generic export you have to reshape by hand every filing cycle.

GST & Compliance

India GST done properly

CGST/SGST/IGST, HSN codes, place-of-supply, and inclusive/exclusive pricing — modeled through a generic tax-document engine, not a handful of hardcoded columns that break the moment the rules change.

e-Invoice (IRN/QR) & e-Way Bill

Direct government API integration for e-Invoice and e-Way Bill generation, through versioned adapters — when GSTN changes the schema, that's a new adapter directory, not a scramble across the codebase.

Security

RBAC with branch/warehouse scoping

Permissions scoped to the branch and warehouse a user actually works in, not an all-or-nothing admin flag.

TOTP MFA & full audit trail

Argon2id password hashing, TOTP multi-factor authentication, and an audit trail on every sensitive action — built in from the foundation stage, not retrofitted after a scare.

Row-Level Security, in the database

Every tenant table is scoped by organisation both in the application layer and via PostgreSQL Row-Level Security — a bug in one layer isn't automatically a cross-tenant data leak.

API & AI

REST API, OpenAPI-documented

A full OpenAPI 3.1 specification is the source of truth for API clients — not documentation written after the fact and left to drift.

MCP server for AI access

A real, read-only-by-default MCP server ships today — 10 tools scoped by the same permission checks as the REST API, so assistants like Claude can query your billing and inventory data without ever holding write access unless you explicitly grant it.

Architecture

Built different, on purpose

A modular monolith in Go, backed by PostgreSQL 18 — plain enough to run on a small server, strict enough that a bug in one layer can't silently corrupt your books.

Browser / API client
   │  HTTPS
   ▼
┌────────────────────────────┐
│  apps/server (Go, chi)     │
│  identity · permissions    │
│  catalogue · inventory     │
│  sales · accounting        │
│  gstindia · einvoice       │
└─────────────┬──────────────┘
              │  pgx, one transaction
              ▼
┌────────────────────────────┐
│  PostgreSQL 18              │
│  NUMERIC money · UUIDv7     │
│  Row-Level Security         │
└────────────────────────────┘
DecisionWhy
Modular monolith, not microservicesInvoice finalization touches inventory, ledger, tax, and numbering atomically — that needs one transaction, not a distributed saga.
NUMERIC, never float, for moneyFloats can't represent ₹0.01 exactly; a tax/accounting system that rounds wrong is a compliance and trust problem, not a bug ticket.
Append-only stock ledgerStock balance is a materialized projection of immutable movements, never a directly-editable number — so it's always reconcilable.
Double-entry, enforced at 3 layersApp-level sum check, a deferred DB constraint trigger, and no UPDATE grant on posted journal rows — a bug in any one layer still can't post an unbalanced journal.
Generic tax modeltax_document / tax_line / tax_component, not hardcoded cgst/sgst columns — a TaxEngine interface with an IndiaGSTEngine plugin, so a second country is additive.
Versioned government adaptersGSTN changed the e-Invoice/e-Way Bill schema on 2026-08-01 with weeks' notice — adapters are versioned by directory, so that's a new adapter, not a scramble.
RLS as defense-in-depthEvery tenant table is scoped by organisation_id at the application layer and PostgreSQL Row-Level Security — a bug in one layer isn't a cross-tenant data leak.
Integration

Built to connect, not to lock you in

OpenAPI 3.1 first

The API spec under api/openapi/ is the source of truth for every client — including the web app itself — not documentation reverse-engineered from the code after the fact.

Government integrations, versioned

GST e-Invoice (IRN/QR) and e-Way Bill submission go through directory-versioned adapters (einvoice/v1, .../vNext) — a GSTN schema change is a new adapter, not a scramble.

MCP server for AI access

A real, read-only-by-default MCP server ships today — 10 tools, each scoped by the same permission checks as the REST API, so an assistant can query invoices, stock levels, or ledgers without ever holding write access unless you explicitly grant it.

Comparison

Rechvix vs. hosted billing SaaS vs. spreadsheets

An honest comparison, not a marketing scoreboard — "Unverifiable" means we genuinely can't confirm a closed-source vendor's internals either way.

FeatureRechvixHosted SaaSSpreadsheets
CostSelf-host free, cloud coming soonMonthly per-user feeFree
Data stays on your own server
Real double-entry accountingVaries
Money stored as NUMERIC, never floatUnverifiable
GST e-Invoice (IRN/QR) generationPaid tier
e-Way Bill generationPaid tier
Multi-warehouse batch/lot/serial trackingPaid tier
Branch/warehouse-scoped RBAC + TOTP MFAVaries
Row-Level Security in the databaseUnverifiable
Open, versioned REST APISometimes
Open source, source available
No vendor lock-in

Rows reflect the platform's target design; see the roadmap for what's built versus in progress today.

Get started

Self-host it today

One command installs Docker if you don't have it, clones the repository, and runs the one-command ./install.sh + Docker Compose setup — pick your OS below. Prefer building against your own Go + PostgreSQL 18 install instead? The full manual setup, including every environment variable, is in the README.

$
curl -fsSL https://raw.githubusercontent.com/Raktim94/rechvix/main/scripts/quickstart.sh | bash

Installs Docker Desktop and git via Homebrew if either is missing, clones the repo, and runs ./install.sh.

Cloud version

A managed-cloud deployment is on the roadmap for businesses that would rather not run their own server. It isn't live yet — we won't claim otherwise. Leave your email and we'll tell you the moment it's real.

Join the cloud waitlist
Roadmap

Built in explicit, gated stages

A stage isn't marked done until it has real passing unit and integration tests — see docs/TODO.md for the live, stage-by-stage checklist.

  1. Stage 0ResearchVerified platform and government API facts — not guessed, checked against current sources.Done
  2. Stage 1ArchitectureModule boundaries, domain model, tax/inventory/accounting design, threat model, staged milestone plan.Done
  3. Stage 2FoundationConfig, database, auth (Argon2id + TOTP MFA), permissions, audit, the internal Money type, observability.Done
  4. Stage 3Catalogue, contacts & pricingProduct/service catalogue, customer & supplier contacts, price lists — independently verified with real passing tests.Done
  5. Stage 4InventoryPerpetual multi-warehouse stock, batch/lot/serial tracking, unit conversion — 78 unit + 39 integration tests.Done
  6. Stage 5Sales & GSTQuotations through tax invoices, POS billing, PDF printing, and the India GST tax engine — 196 unit + 100 integration tests.Done
  7. Stage 6AccountingFull double-entry ledgers enforced at three layers, customer/supplier ageing, chart of accounts — 105 unit + 62 integration tests.Done
  8. Stage 7ReportingGSTR-1-oriented reports and the live operational dashboard. GSTR-3B-oriented reporting is deliberately deferred until purchases are wired through the tax engine, rather than shipped half-true.Done
  9. Stage 8Government integrationse-Invoice (IRN/QR) and e-Way Bill generation against the real NIC sandbox, plus a free-government-portal assistant flow as the default (no paid API required).Done
  10. Stage 9Other integrationsSigned webhooks, scoped API keys, and a real read-only-by-default MCP server (10 tools) for AI access. Live WhatsApp/email/SMS sending is interface-only — no adapter shipped yet.Done
  11. Stage 10Packaging & web appDocker Compose + CasaOS packaging, a one-command install.sh, and the full web app (Dashboard, Billing/POS, Purchases, Inventory, Accounting, GST, Reports, Settings) — real, wired screens, not placeholders.Done
  12. Stage 11HardeningSecurity review, load testing, and an accessibility audit before a v1.0 production-readiness claim — a first security pass already found and fixed a real cross-tenant data-scoping gap.In progress

Rechvix is built and maintained by NODEDR INFOTECH PRIVATE LIMITED, the team behind nodedr-pos.

FAQ

Frequently asked questions

The backend and the full web app are built and working — billing, POS, inventory, accounting, GST/e-Invoice/e-Way Bill, reporting, RBAC, and the MCP server are real, tested, wired screens today, not a roadmap. What's left is Stage 11 hardening: a security review (a first pass already found and fixed a real cross-tenant data-scoping gap), load testing at scale, and an accessibility audit — worth finishing before we'd call it a v1.0 production guarantee. The GitHub repository's docs/TODO.md tracks exactly what's done versus in progress, updated as it changes, not after the fact.

Ready to look under the hood?

Read the architecture, the design decisions, and the exact stage-by-stage build plan — nothing overstated.