Track stock
Inventory and billing,
kept in sync with reality.
A GST-oriented billing and inventory system for Indian businesses. A sale moves stock, a payment settles the party, and reports read the same records.
- GST-oriented billing
- Single-tenant admin
- Role-based access
Built on a small stack, with one job per layer.
Finally, a business system
that does its job
Keep accurate
Stock levels go stale.
STOCKCRM's don't.
Stock movement
Read the numbers
Reports read the same records you enter.
Open reportsSTOCKCRM moves stock
on every document.
Save a sales invoice, purchase invoice, sales return or purchase return and product quantities update in the same step. Every movement is recorded against the item.
See stock movementSales
Invoices, quotations and returns, each numbered and stored.
Purchases
Supplier bills and returns, received straight into inventory.
Payments
Money in and out, settled against each party and posted to the ledger.
Reports
Dashboard KPIs, counts and drill-downs by date, party or item.
Stock that keeps itself current
Every sale, purchase and return updates the balance.
Low stock is flagged
on its own
Each item changes status as its quantity moves past the threshold.
Access follows
responsibility.
Four roles and per-module rights decide what each person can read, create, update and delete. Navigation adapts, so users see only the screens their role allows.
See how access worksOne document engine.
Multiple workflows.
Every list, ledger and report reads from the same records, filtered by date, party or item.
See the architectureLow stock is
flagged first
Each item has a low-stock threshold. When quantity drops below it, the status changes on its own.
Permission-aware
Each role gets its own rights per module. Navigation adapts, so users only see the screens they can use.
Every balance
is traceable
The party ledger starts from the opening balance and lists every document and payment.
“Nothing is entered twice.”
Built as a
modular
three-layer system.
The interface talks to a Go REST API under /api/v1. Documents, stock, ledgers and permissions live in the service layer, and MySQL 8 holds the records.
See the stackCurrent state: tax maths run locally in the client. GST portal filing and verification are not part of this build.
Who you are decides
what you can reach.
Authentication
Signed JWT tokens carry identity between the interface and the API on every request.
Access
Four roles with per-module read, create, update and delete rights.
Data
Parties, items, documents, transactions, settings and access records live in MySQL 8.
Item history
Every stock movement, including manual adjustments, is recorded against the item.
A sale moves stock, so the item count stays right without a second entry.
A payment settles the party, and the ledger shows exactly why.
Reports are computed from the same records, so the numbers agree.
Built for GST-registered Indian businesses, as a single-tenant admin panel.
See the modulesA simple stack, with one
job per layer.
Interface
The admin interface: routing, layout, forms and the client-side tax maths in the document editor.
API
The REST API under /api/v1 and the services behind it: documents, stock movement, ledgers and permissions.
Data
The primary database for parties, items, documents, transactions, settings and access records.
Also in the stack: JWT for signed authentication tokens, Puppeteer for PDF rendering, and optional Redis rate limiting in front of the API.