
Operations ERP Suite
The full ERP spine: orders, CRM, production, stock, purchasing, projects, finance, approvals, reporting, people and automation.
Next.js · TypeScript · PostgreSQL · Recharts
DashboardAdmin1 / 8
Stock accuracy is a process problem before it is a software problem. This build gives the process somewhere to live, every movement recorded, every variance explained, and then wraps the rest of the system around it: catalogue, purchase orders, suppliers, sales orders and valuation.
Next.js · TypeScript · PostgreSQL · Tailwind
Inside the app
30 connected functions on one schema, spanning three permission levels. Everything below is in the template before a line of customisation.
Sales, purchases, returns, gross profit and stock value for the period, with the low stock alert that actually needs acting on today.
Catalogue with weighted average cost and list price. A product with no price is bought and not sold, which is a different kind of record.
On hand, reserved and available by warehouse and bin. Available is the only number that should be quoted to a customer, so it leads.
Append only. A correction is a new movement with a reason rather than an edit to an old one, which is what makes the stock figure defensible.
Capacity, bins and value per site, with stock in transit counted separately, counting it in both sites is how a stock figure quietly doubles.
Blind: the counter does not see the expected figure. A variance over tolerance needs a second person, and the reason is kept.
Raised, sent, partly received and closed, with outstanding lines visible. Closing an order early is the commonest way stock goes missing on paper.
Spend, on-time delivery, quality and lead time measured from order to receipt rather than taken from the quote. Reorder points use the measured figure.
Promised dates, allocation per order, and backordered lines that name the SKU holding them up.
Terms, outstanding balance and credit status. A customer on hold can be quoted but cannot have stock allocated, applied on the query.
Value, turns, days of cover and ageing by last movement. The over-180-day column is what a write-down conversation is actually about.
Warehouse scope narrows what staff can see and move. A picker in one site has no reason to adjust another site’s stock, and no way to.
Permissions
Staff write movements. A manager buys, sells and approves variances as the required second person. An admin owns the costing method and the rules. Warehouse scope narrows staff further, applied on the query rather than by hiding a menu.
The build
30 functions, all of them live in the preview. Nothing on this list is a mockup or a roadmap item.
What you get
Warehouses and stockrooms where the count on screen and the count on the shelf have stopped matching.
Access and evidence
An adjustment that posts without a second pair of eyes is how shrinkage disappears from the numbers. Counting blind and separating counter from approver costs nothing and removes the easiest route to concealment.
Related

The full ERP spine: orders, CRM, production, stock, purchasing, projects, finance, approvals, reporting, people and automation.
Next.js · TypeScript · PostgreSQL · Recharts

A full order management system: orders, customers, catalogue, stock, warehouses, shipping, returns, automation rules and integrations.
Next.js · TypeScript · PostgreSQL · Tailwind

Two sides on one schema: your procurement desk, and a login where vendors acknowledge orders, invoice and keep documents current.
Next.js · TypeScript · PostgreSQL · Auth.js
Questions
Yes. The repository, application code, database schema, migrations, seed data and deployment configuration, is transferred to your organisation on delivery. There is no licence key and nothing that calls home.
Tens of thousands of SKUs across as many locations as you need, with no change in price. Per-location licensing is a common way inventory software gets expensive as you grow.
Because if the counter can see the system quantity, the count stops being a count and becomes a confirmation. Blind entry, a variance threshold and an approver who did not do the count are the three controls that make stock figures trustworthy, and they cost nothing except being enforced.
Weighted average, FIFO or standard cost, set per location. Changing the costing method on a live location is a significant accounting event, so it is an administrator action, logged, and takes effect from a period boundary rather than immediately.
That is the usual route. A fitted build adjusts location and bin structure, ABC classification, count schedules, variance thresholds, barcode formats, branding and up to two integrations, and typically takes one to three weeks from a signed scope.
Hosting only, paid to your own cloud provider, roughly $50 to $200 a month, rising with the volume of movement history you retain, which is usually the largest table.
A fitted build adjusts fields, stages, roles and integrations to how your team already works. One scoping call, a fixed price, one to three weeks.
