• Web app
  • Distribution

Distributor (Uruguay)

A distributor that tracks its stock, prints every sale's receipt and takes WhatsApp orders from its own catalog.

Inventory with a full movement history, receipts that print straight to a thermal printer, and a public catalog where customers put their order together.

Status
In daily use
Duration
2026 – present
Stack
NestJS, Next.js, PostgreSQL, React Query, Zustand, Dokploy

At a glance

Daily
the distributor sells and tracks its stock from the system
Receipts
built and printed on the thermal printer on the spot
WhatsApp
customers build their order in the catalog and send it over WhatsApp

The problem

The distributor needed to control its inventory with a reliable history of what came in and went out, and to print the receipt for each sale from the same system.

How we approached it

We built an internal system with a NestJS backend and a Next.js frontend: products, stock, movement history, suppliers, receipt numbering, bulk stock upload, analytics, users and auditing. Receipts print straight to thermal printers.

We added sales by weight with decimal quantities and a public catalog with current prices. On their phone, customers tap a product to add it to the order and adjust quantities. Tapping the order button opens WhatsApp with the message already written: each product with its quantity and subtotal, plus the estimated total. The order is saved in the browser, so it survives a page reload or a trip to the chat and back.

The system deploys on Dokploy, and the database is backed up and migrations run automatically before every deployment.

Public catalog on a computer: product grid priced in pesos, three already in the order, and the bottom bar with 6 items, the total and the Order button
Sample data
Public catalog on a phone: products priced in pesos, three already in the order, and the bottom bar with 6 items, the total and the Order button WhatsApp chat with the distributor: the order message listing each product, quantity and subtotal, plus the estimated total
Sample data
Stock list: products with SKU, category, quantity with stock level, average unit cost and total, with filters and search Sales slip screen: form with customer and products on the left, preview of the printed slip on the right
Sample data

Where it stands

The distributor uses it every day. Every stock movement is logged with who made it and when. Customers order from the catalog, and each order lands on WhatsApp ready to pack.

Need something similar?

Tell us about it, and within one business day we'll tell you how we'd approach it, with a timeline and a cost estimate.

Distributor (Uruguay)Let's talk