Grocery Overview
Grocery Overview is a mini, grocery-specific dashboard that sits alongside the main Dashboard. It shows today's mandi (wholesale/market) rates grouped by category, plus a live list of your active bulk pricing rules, so a shop owner can see both at a glance without leaving the grocery menu.
Overview
The page loads two things in parallel: today's mandi rates (grouped into Vegetable / Fruit / Grain / Dairy / Spice / Other) and your active bulk (quantity) pricing rules from the shared Bulk Pricing catalogue.
It is a read-only summary — there is no add/edit here. Every card and list item is clickable and jumps you straight to the page where you can actually make changes (Mandi Rates or Bulk Pricing).
This page only exists in the Grocery variant; it is the first item in the "Grocery" section of the sidebar, appended after all the standard pos-app menus.
Before You Start
- You must have the Billing feature enabled on your plan — the same gate used for the rest of the billing menu.
- The "Bulk Price Rules" count and list reflect the generic Bulk Pricing table shared by every BazaarPOS variant, not something grocery-only.
Step-by-Step Guide
1 Check today's mandi board at a glance
- Open Grocery → Grocery Overview. Today's date is shown under the page title as "Mandi board for
". - The four stat cards at the top show: Today's Items (total rate rows entered for today), Bulk Price Rules (active rule count), Vegetables and Fruits (category-specific counts for today).
- Click any stat card to jump to the page it summarises — the three category-tagged cards go to Mandi Rates, the Bulk Price Rules card goes to Bulk Pricing.
2 Scan today's rates by category
- The "Today's Mandi Rates" panel lists every item entered for today, grouped under its category with a coloured chip per item showing "
- —
/ ". - —
- If nothing has been entered yet for today, the panel shows "No mandi rates for today" with an "Add rates →" shortcut straight into the Mandi Rates page.
- Click "Update Rates" in the page header, or "All →" inside the panel, to open the full Mandi Rates page and add or edit entries.
3 Review bulk pricing rules without leaving Grocery
- The "Bulk Pricing Rules" panel lists up to 8 active rules with product name, quantity range (e.g. "10–50 kg" or "10+ kg" when there is no upper bound) and the tiered price.
- Click "Manage →" to open the full Bulk Pricing page and add, edit or deactivate rules.
Every Field & Button, Explained
| Field / Button | What it does |
|---|---|
Today's Items | Count of all mandi rate rows entered for the current calendar day, across every category. |
Bulk Price Rules | Count of bulk pricing tiers currently marked active (rows where isActive is not explicitly false). |
Vegetables / Fruits | Quick counts of today's mandi rows filtered to just the vegetable or fruit category — the two categories a produce-heavy kirana store checks most often. |
Today's Mandi Rates panel | Every rate entered for today, grouped by category with a coloured pill per item (colour follows the same category-colour scheme as the Mandi Rates page itself). |
Bulk Pricing Rules panel | Up to 8 active bulk pricing tiers, each showing product name, quantity range and the tiered price per unit. |
Tips & Best Practices
- If the "Today's Items" count is 0 first thing in the morning, that is your cue to open Mandi Rates and enter the day's buying prices before billing starts.
- Use the category counts (Vegetables/Fruits) as a quick completeness check — if you normally track 15 vegetables and the count shows 6, you know some are still missing for today.
Troubleshooting & FAQ
The Bulk Price Rules count does not match what I see on the Bulk Pricing page.
Yesterday's rates are not shown here.
🧑💻 Developer Notes
Source component(s):
frontend-app/pos-app-grocery/src/pages/grocery/GroceryDashboardPage.jsx
Backend endpoints used:
GET /grocery/mandiGET /products/price-tiers/all
Related tables (db-core repositories):
GroceryMandiRateProductPriceTier
Both API calls are fired with Promise.allSettled so a failure in one (e.g. bulk pricing not licensed) does not block the mandi rates panel from rendering, and vice versa. Bulk pricing intentionally has its own table/route family (product price tiers) — grocery does not have a separate "bulk pricing" backend, it only links into the generic one.