Shop inventory basics that actually get used
You do not need warehouses. You need a number next to rice, oil and soap. Create the product once. Sales reduce stock on the server. A purchase-in or a stock-hub edit puts it back. Fast movers show up because the number hits zero, not because a report told you. That is shop inventory at kirana scale. A 400-SKU warehouse module is how the count stops happening on Thursday.
Count the SKUs you actually sell on credit
Start with the twenty items that leave the shop every day, not with a dream catalogue. Name them the way you say them at the counter: “rice 25kg,” not “Oryza sativa premium.” Put a price. Put an opening stock you can defend by looking at the shelf. If you cannot see it, do not type 47. Type what you counted this morning. Wrong opening stock is worse than no stock, because every later sale will be precisely wrong.
Loose items (a handful of nails, a pour of oil) can stay off the stock list and go on the sale as an ad-hoc line. Inventory is for things you reorder. If you try to stock-track every loose gram, you will abandon the feature in a week and then not trust the numbers that were worth tracking.
Sales move stock. Do not type it twice
When the credit sale is saved, stock should move with it. If you also tick a notebook that says “−1 rice,” you are back to two books. The only extra edit is a purchase-in when the wholesaler drops the next bag, or a correction when you find the count was off. Corrections should be rare. If you correct every evening, the opening number was theatre.
Zero is the report
You do not need a dashboard of “insights.” You need the list of names whose stock is zero or close to it before the next wholesale round. That is the reorder list. Tie it to the same products you sell on udhar so a credit sale cannot promise a bag you do not have. Public catalogs, if you publish one, should show those products and prices, never the balances. The shelf is public. The khata is not.