Skip to content
SparqWeb

In-house productGrocery retail

A retail business running stock, orders, point of sale and books in one system

A grocery business selling through five channels at once, where the real cost was not selling — it was the nightly reconciliation between a register, a spreadsheet, a phone and an online store that never quite agreed.

Who did this workBuilt and run in-house by our team. Shown here with demonstration data.

The result

5

sales channels in one order queue

Technologies & disciplines

  • PHP
  • Laravel
  • Livewire
  • MySQL
  • Tailwind CSS
  • Role-based access control
  • Inventory movement ledger
  • Point of sale
The system's dashboard, showing a thirty-day revenue and expenses trend, revenue broken down by sales channel, the recent order queue with the channel each order came from, and the best-selling products by revenue.

The situation

A shop selling in five places at once — a website, Facebook, WhatsApp, the phone, and the counter itself. Each channel had its own record of what had been sold, and none of them talked to the stock count. The result was the familiar small-business tax: an hour every night reconciling a register against a spreadsheet against an online store, stock figures that were wrong by the time they were written down, and no reliable answer to the two questions that matter — what did we actually make this month, and what are we owed.

What we did

  1. Put every channel into one order queue, so a WhatsApp order and a counter sale are the same kind of record and the stock count moves once, at the moment of sale.

  2. Built inventory as a movement ledger rather than a running number, so any stock figure can be traced back to the purchase, sale or adjustment that produced it.

  3. Added point of sale with an open-shift model — opening cash in, sales through, cash counted out — because a register that does not reconcile is where small retail loses money quietly.

  4. Wired purchasing, vendor balances and expenses into the same books, so cost of goods is real rather than estimated, and gross margin is a fact rather than a guess.

  5. Built reporting last and on top of the ledgers, not beside them, so the profit-and-loss statement is derived from the same records the shop runs on.

The result

  • Five sales channels handled in a single order queue, with stock decremented once per sale.
  • Inventory, cash and payables that reconcile without a nightly spreadsheet pass.
  • A profit-and-loss statement produced from the operating records themselves, available for any date range.

Why we show our own product

This one is ours. We build it, run it and maintain it, which means we carry the consequences of every design decision in it — a slow screen wastes operator time, and a wrong stock figure costs money.

That is the same system we build for clients whose operations have outgrown spreadsheets. The advantage of showing it here is that we can open any part of it and explain why it works the way it does.

More of the system

The order queue, listing every order with the sales channel it arrived on — phone, shop counter, website, Facebook and WhatsApp — alongside its fulfillment status, payment status and total.The stock screen, showing units on hand against a minimum level for each product, its average cost, the value of the stock held, and a warning for the one product at or below its reorder point.

Keep reading

More work

Tell us what you are trying to build.

A 30-minute call with the people who would do the work — not a sales team. We will tell you honestly whether we are the right team for it.

On the call
Your goals, what exists today and the first steps. No account manager in between.
Afterwards
A written scope and a price within days — or a straight answer that we are not the right team.
No obligation
Nothing is committed until a scope is signed, and anything we send you is yours to keep.

We reply to every inquiry within one business day. Prefer email? info@sparqweb.com

Book a 30-minute call