Milk Dispatch Module
Monitor daily dispatches, manage serial numbers, and update receivings.
Today's Dispatches
0 L
Yesterday's Dispatches
0 L
With Phone / Active Farmers
0 / 0
With Portal Access / Active PMCs
0 / 0
Last 2 Shifts — Digitization
Receipt Entry
Sequential list of generated dispatch notes. Showing today's challans by default — adjust the dates or click "Show All" to widen the range.
| Note No. | Party Name (To) | Date | Total Qty | Status | Actions |
|---|
Dispatch Register
Every milk dispatch challan — party dispatches and stock transfers — newest first. Use the printer button to print or download any challan. (Plant Heads see challans from all plants.)
| Note No. | Type | Party / Destination | Origin Plant | Date | Total Qty | Status |
|---|
Milk Dispatch
Create dispatch challans and import consolidated orders for raw/processed milk. Billing is handled in the shared Accounting & Billing module.
Milk Challans
| Note No. | Party Name (To) | Date | Total Qty | Status |
|---|
Product Dispatch
Create product dispatch challans for finished milk products (paneer, ghee, etc.) using the product master & SKUs.
Recent Product Challans
| Note No. | Party Name (To) | Date | Items | Total | Status |
|---|
Create Dispatch Challan
Shift Close — Milk Stock Book
Enter tank-wise physical readings at handover and close the shift. A closed shift is locked — corrections need an admin adjustment.
Pick a location, date, and shift, then click "Load Shift".
Diversions & Returns
Location: —
Acknowledge milk diverted to production with your own final figures — once acknowledged, YOUR figures (not the dairy accountant's entry) are what count.
Loading…
Production Returns
Skim and cream returning to stock re-enter the shift's balance; butter is balancing-only and does not re-enter stock.
Pick a date and shift, then click "Load Shift".
Milk Stock Report
Shift-wise mass-balance for one location: opening, collection, diversions, dispatches, closing, and loss/gain.
Pick a location and date range, then click "Load Report".
New Product Dispatch Challan
| Product | SKU / Pack | Qty (packs) | Rate | Amount | |
|---|---|---|---|---|---|
| Total | ₹0.00 | ||||
Product Challans
Generated product dispatch notes, most recent first.
| Note No. | Party Name (To) | Date | Items | Total | Status | Actions |
|---|
Pre-fill Orders from Consolidated Sheet
Choose a standard consolidated Excel file (`.xlsx`, `.xls` or `.csv`). The app will dynamically match columns, filter out non-milk items, extract quantities for BM, CM, and Skim Milk, and queue them for instant challan generation.
Drag & Drop Order Sheet Here
Supported Formats: Excel (.xlsx, .xls), CSV
Instructions for Consolidated Sheet Layout:
- Ensure you have columns with headers containing "BM lit" (Buffalo Milk) and "CM lit" (Cow Milk).
- Columns containing "Skim Milk" or "SM" will also be captured automatically.
- Rows with no quantities or non-milk dairy columns (Paneer, Ghee, Dahi) are filtered out to keep your dispatch process simple.
Import Product Orders from Excel
Upload a product order sheet (`.xlsx`, `.xls` or `.csv`). The app matches each row against the party master and product master, then queues the recognised rows as product challan drafts — grouped one draft per party. Review and finalize each draft to assign its challan number.
Drag & Drop Product Order Sheet Here
Supported Formats: Excel (.xlsx, .xls), CSV
Expected Sheet Layout:
- One row per order line, with header columns for Party, Product and Qty.
- Optional columns: SKU / Pack (matched against the product's SKUs) and Rate (blank uses the SKU's base or per-party rate).
- Rows whose party or product can't be matched to the master are flagged and cannot be selected.
Prefixed Parties List
Manage the master list of client party names. These will be pre-filled inside the form's autocomplete dropdown.
| Party Name | Hindi Name | Alias / Search | Print Name | Phone | Portal | Actions |
|---|
Edit Party Master Details
Click the edit icon next to a party in the list above to modify its Hindi translation, English Address, and Hindi Address.
Bulk Formula Update
Apply the same SNF auto-fill and/or Kg→Litre conversion formula to many parties at once. Only the milk types you fill in below are written; each party's other milk types are left untouched.
| Milk | A | B | C |
|---|---|---|---|
| BM | |||
| CM | |||
| SM | |||
| MM |
| Milk | Formula | Ratio |
|---|---|---|
| BM | ||
| CM | ||
| SM | ||
| MM |
Blocked Parties per Milk Type
A blocked party can never be shown or dispatched that milk type — customer app, order matrix, subscriptions and challans alike. There is no override: to make an exception, remove the party here first. Saves as soon as you change it.
Product Master
Milk products sold to parties. Each product has one or more SKUs (pack variants) with a base rate; you can set per-party rate overrides.
| Product | Category | HSN | GST % | SKUs | Actions |
|---|
Approved Vehicles Fleet
Manage the database of registered transport vehicles. For milk tankers, specify number of compartments.
| Vehicle No. | Type | Compartments | Ownership | Optimum (kg) | Documents | Actions |
|---|
Drivers Master Registry
Manage the approved list of drivers and their contact phone numbers.
| Driver Name | Mobile | Actions |
|---|
Plants Master Registry
Manage physical plant dispatch locations, addresses and plant-head contacts. The FSSAI licence — number, expiry and the scanned copy — is recorded per plant through the badge button on each row.
| Plant Name | Plant ID | Address | Head Phone | Documents | Actions |
|---|
Milk Tank / Silo Master
Tanks/silos per location for the Shift-wise Milk Stock Book. Stock entries reference tanks from this list.
PMC Centers
Primary Milk Collection centers. Each has a unique code and a portal login (the operator's mobile; default password = last 4 digits) for milk.shuddhamdairy.com — digitizing shift summaries and viewing farmer data.
| Code | PMC Name | Operator Mobile | Assigned MCC | Portal | Commission | Adv. Scan | Documents | Actions |
|---|
Security Guards
Both sign in on the milk portal with their mobile number and an OTP — there is no username and no password. A guard marks rounds at one plant; set a duty window to give them their own checkpoints, or leave it blank to use the plant's checkpoint list above. A supervisor marks nothing — they review rounds across one or more plants on their phone.
Attendance Checkpoints
Location and checkpoint times per plant. Security staff mark attendance on the milk portal with a live selfie + surroundings photo; the server judges GPS distance and accuracy against these.
Serial Number Settings
Adjust where the sequential dispatch counter will start to ease transition from your physical legacy system.
Stock Transfer Numbering
Invoice & Proforma Prefixes
Customer Order Portal
Msg91 SMS Gateway Settings
Configure parameters for the Msg91 SMS integration used for high-volume dispatch notifications and stock transfer receipt confirmation alerts.
Which alerts use this template
Both are off by default. Switching either off stops that SMS only — OTP login is unaffected.
OTP Login (order + milk portals)
When enabled, everyone who logs in by mobile number (customers, PMC operators, MPIs, farmers) gets an SMS OTP instead of a password. Needs a DLT-approved OTP template on MSG91 whose variable is ##otp##. Logins stay active until logged out; each account can be signed in on 2 devices — a 3rd login signs out the oldest.
Send Test SMS Message
Google Maps API Key
Powers the attendance map replay (Reports → Attendance) and the field supervisor's day map.
Create a key in the GCP Console → APIs & Services → Credentials, enable the
Maps JavaScript API, and restrict it to HTTP referrers
app.shuddhamdairy.com/* and milk.shuddhamdairy.com/*.
Leave blank to keep those maps off — everything else on both screens keeps working.
User Accounts
Add multiple operator profiles with unique passwords to securely track action history user-wise.
Database Portability
Download a restorable SQL backup of the live database (gzipped pg_dump; shift-summary photos are left out — large, and already covered by disk snapshots). Keep regular copies so challan counters, operator profiles, and logs are never lost.
Telegram Access
Pull read-only reports (outstanding, ledger, trial balance, and natural-language queries) from the Telegram bot. Generate a one-time code, then open the bot and send /link CODE.
Linked Accounts
MCC Email Import
Automatically imports the daily MCC dock-report Excel attachments instead of a manual upload. Strict validation — anything ambiguous or unrecognized is rejected, never guessed, and shows up in the activity log as such.
OCR Shadow Pilot
A logging-only, 7-day trial that runs parallel flag-detection methods on live shift-summary uploads and records how they compare — operators see nothing change, and nothing saved to any record is affected. Auto-stops on the end date; a daily line appears in the Sentinel digest, with midpoint and final reports on Telegram.
Sentinel — AI Watchdog
A resident agent that watches data entry against rules and records findings below. It is read-only on ERP data — it can never change any record. With Shadow mode OFF, new findings are messaged to linked admin Telegram accounts (critical ones even during quiet hours), with 👍/👎/snooze buttons right in the chat.
Shadow mode holds RULE ALERTS only. The scheduled reports below (daily digest, GCP cost, VM health, backup health, the 16:00 receipts report and the 15:00 Busy chase) each follow their own switch and are sent whether Shadow mode is on or off. To silence one noisy rule without silencing anything else, use its Mute messages box under Watch Rules — a muted rule keeps running and keeps recording findings here; only the Telegram message stops. Agent ON is the one switch that stops everything.
Findings
Watch Rules
Daily digest sections
Unticked sections are still measured and recorded — only the 07:00 message stops. When every ticked section has nothing to report, no message is sent at all.
GCP Cost Digest
VM Health Digest
CPU, memory and disk usage on this server — read directly off the OS, no setup required.
Android app (TWA) asset links
Served, without any login, at
https://milk.shuddhamdairy.com/.well-known/assetlinks.json — and on the milk host
only. Chrome fetches it when the Android app starts: if the app's signing fingerprint is not
listed here the app still opens, but with the browser address bar showing. Add one row per
signing key (a sideloaded build and a Play build have different keys); rows sharing a package
name are merged into one statement carrying both fingerprints.
keytool -list -v -keystore <your.keystore> (the SHA256 line), or from the
Play Console under Setup → App integrity → App signing. 32 pairs, uppercase.
What the endpoint serves right now
Audit Activity Logs
Securely tracks all operational activities user-wise, including logins, modifications, challan generations, and settings updates.
Login History Report
Successful and failed sign-in attempts captured per user, with the originating IP address and device. Use this to spot logins from unexpected locations.
| Date & Time | User | Role | Status | IP Address | Device / Browser |
|---|---|---|---|---|---|
| Click "Run Report" to load login history. | |||||
Currently Logged In Users
Live sessions active right now — one row per signed-in device, with login time, originating IP and browser. Sessions clear on logout or server restart.
| User | Role | Logged In At | IP Address | Device / Browser |
|---|---|---|---|---|
| Click "Refresh" to load active sessions. | ||||
Test as user
Open a milk or order portal account exactly as that user sees it. The user's phone is never touched — no OTP is requested and no SMS is sent. You confirm with your own PIN on the portal, and every write you make while testing is recorded against your name.
| Account | Details | Action |
|---|---|---|
| Pick a surface and search. | ||
Opens in a new tab. You will be asked for your PIN to activate. The link is single-use and expires in .
Open the portalLive test sessions
| Admin | Account | Surface | Started | Ends | Writes | |
|---|---|---|---|---|---|---|
| None. | ||||||
Audit trail — append-only; these records cannot be edited or deleted from the app
| When | Event | Admin | Account | Detail |
|---|---|---|---|---|
| Loading… | ||||
Your impersonation PIN
This PIN is yours alone — it activates a test session and is accepted nowhere else in the system. It will never log anyone in on a public login page. You cannot see or set another admin's PIN.
Attendance
Checkpoint attendance for security staff. Each check is two live photographs taken in-app plus a GPS reading; the server computed the distance and judged it against this plant's geofence. Refused attempts are recorded too and shown on the cell they were aimed at.
Map Replay
Replays a guard's (or a plant's) attendance checks in the order they happened. Rejected attempts plot too — they are often the ones worth looking at. Click any marker for that check's full detail.
Leave requests
An approved day is excluded from that guard's compliance denominator — it counts as neither present nor missed. Decisions are recorded permanently against the request.
Compliance report
One row per attendance day. For a duty that crosses midnight the whole night reports under the date it started. Click a row to see every checkpoint of that day and what happened to it.
Problem Reports
Bug reports, error reports and feature requests sent from the staff desk, the milk field portal and the customer order portal. Voice notes play inline; the diagnostic bundle downloads as JSON and can be handed straight to a Claude Code session.
Loading…
Receiving OCR Audit
Every challan received via the photo-first OCR-assisted entry flow: what the camera read off the slip vs. what the operator actually typed, for each audited field. The entered value is shown; a flagged field also shows the OCR reading in red next to it.
| Date | Challan # | Party | Product | Qty | Fat | CLR | SNF | Flags |
|---|---|---|---|---|---|---|---|---|
| Click "Run Report" to load. | ||||||||
Manual Entries Report
Milk-collection entries in two categories: Hand-keyed — no photo/OCR evidence trail at all, either a whole shift keyed in with no photo, or extra rows hand-added into an otherwise photographed shift (tracked reliably from 5 Jul 2026 on; earlier entries are excluded and shown as a count, not guessed) — and DPU manual (*) — a row on the photographed shift-summary the printer itself marked with an asterisk, meaning the PMC operator rejected the milk-analyzer's automatic reading and keyed FAT/SNF in by hand at the machine (tracked since digitization launched, 29 Jun 2026). Occasional DPU-manual use is legitimate (analyzer faults); the point of this report is to surface PATTERNS of overuse, not single rows.
| Date | Shift | PMC | Farmer | MPI | Milk | Qty (L) | Fat | SNF | Amount | Entry path | Entered by | Entered at |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Click "Run Report" to load. | ||||||||||||
OCR Audit Report
Every Nth saved shift summary is silently re-read in the background with a second model (Gemini Flash); a disagreement escalates all photos to Gemini Pro as arbiter and alerts admins on Telegram. Detection only — saved collection data is never changed. Use the match rate below to decide whether to sample more (lower N) or less (raise N) often. The report starts from the day this feature shipped — there is no backfill.
| Date / Shift | PMC | Uploaded by | Verdict | Disagreements | Pro sided with | Models run | Alert | Reviewed | Bundle | |
|---|---|---|---|---|---|---|---|---|---|---|
| Click "Run Report" to load. | ||||||||||
OTP Audit Report
Every OTP request and verify attempt, across the Order and Milk portals — measurement only, this never changes OTP or login behavior. Use it to see SMS cost drivers (per-user counts, repeat requests) and whether MSG91 accepted or rejected each send.
Current Rates
Active rates per party. Rows (parties) and columns (milk type / product) are ordered by sale value over the 30 days ending on the chosen date — biggest first. Pick a past date to see the rates that were active then.
Milk Rates
Product Rates
Tanker Capacity Alerts
Milk-tanker dispatches where one or more compartments were filled beyond ±80 kg of the optimum capacity recorded for that tanker at the time of dispatch. Each row is one off-optimum compartment.
Milk Sales Report
Party-wise milk billed for the selected period — quantity, quality-weighted FAT/SNF, blended rate, and total amount. Based on billed challans (final invoice, else Proforma) within the date range; challans not yet billed aren't included.
| Party | Qty | Amount (Rs) |
|---|---|---|
| Click "Run Report" to load. | ||
Busy Rates
What we actually charged each party for each milk product, read out of the Busy invoice lines. Each cell is the rate on the most recent date that party bought that item; the column header carries the min / median / max across every party, so a cell reads against its own column.
Loading…
Product Sales
Everything sold, item by item, from the Busy voucher store. Saksham does not record these sales yet, so Busy is the only source. Sale returns net off.
Click “Run Report” to load.
Type quantities directly into the grid to add or edit an order — changes save when you leave the box. Milk columns: BM Buffalo · CM Cow · SM Skimmed · MM Mixed.
| Loading orders… |
| Downloaded at (IST) | User | Role | Kind | What was exported | Format | Rows |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Recurring delivery plans for parties. Active subscriptions auto-create the daily order into the Customer Orders queue (also runs on a timer). Customers can manage these from their portal.
| Party | Schedule | Shift | Items | Status | Next delivery | Actions |
|---|---|---|---|---|---|---|
| Loading… | ||||||
MCC Collection — Dock Sample Report
Upload one or more chilling-center dock-wise sample reports — they may be from different MCCs, dates and shifts. The MCC, date and shift are read from each report. Review the queue and remove any you don't want, then import them all together (up to 62 files at once).
Recorded MCC Collections
What each chilling center received, summarised per shift. Pick All plants (combined) to see every center together, or click a shift for the PMC-wise detail.
PMC Collection — Collection Summary
Upload the PMC collection summary export (may contain many dates / both shifts). The system auto-creates or updates each PMC found and tags it to the detected MCC — you'll see how many PMCs will be added vs updated before saving.
Recorded PMC Collections
What each primary center reported, summarised per shift. Pick All plants (combined) to see every center together, or click a shift for the PMC-wise detail.
Sour Milk — New Dock Entry
Milk found sour or adulterated at the dock is recorded here — the legacy dock software does not capture it. It stays out of the main collection figures. The PMC operator sees the quantity and milk type (and, if returned, that it was returned) — never the grade or end use.
Import Past Data (Excel)
Columns expected: Date, PMC Code, PMC Name, Quantity (L), Milk, Grade, Use. Milk accepts Cow/Buffalo (or C/B, case-insensitive) and is required on every row — anything else is a per-row error, never guessed. PMCs are matched by code first, then by exact name. Download the sample to see the expected format.
Recorded Sour Milk
MPI Staff
MPIs (Milk Procurement In-charges) are organisation field staff. An MPI logs into the milk portal with their mobile number (default password: last 4 digits) and can work as any PMC currently allotted to them — upload, farmers, dock, reports, account. Attendance, leave and salary come in a later HR release.
Allot PMCs
Pick an MPI, then tick the PMCs that should be with them. Ticking a PMC that is with another MPI reassigns it; unticking one of this MPI's PMCs leaves it unallotted. Records are date-ranged as before — nothing is rewritten for untouched PMCs, so the full history stays for incentive calculations.
Allot Rate Cards
Pick an MPI or Sr MPI, then tick the purchase rate cards they may apply from the MPI portal (only on PMCs in their scope). Unticking revokes a card from today — rates they already applied stay untouched. A card allotted to a Sr MPI does not pass down to the MPIs under them; allot it to each MPI separately. Records are date-ranged, so past holdings stay answerable.
Allotment History
Reporting Changes
Every change to who an MPI reports to, newest first — kept permanently because incentive calculations depend on this history.
Farmers
Correct a farmer's phone number, delete a wrongly-created farmer (only once they have zero collection/payment records), or shift a farmer's purchase records to the correct farmer — e.g. when a shift-summary OCR misread a farmer code. Every change here is permanently logged: who, when, and what changed.
OCR digitization safeguards
New farmer codes OCR encountered during digitization (approved as a new farmer, or corrected as a misread of an existing code — a retaken photo never reaches this list), and every case where a re-read name disagreed with the name already on file (the stored name is never overwritten by OCR).
Collection vs Receipt Differences
Compares each PMC's reported collection against what the MCC received — one row per PMC per shift, sorted by PMC code, split into cow, buffalo and combined. Toggle between this page's own calculation and the one the MPI/operator reads on the milk portal; the rows are the same either way. Use Show calculation on a row to trace every figure back to the PMC sheet and the dock report.
Milk Chilling Centers (MCC)
PMC Centers
PMCs are created automatically from uploads. Reassign a PMC to a different MCC or disable it here.
Digitize a shift summary
Upload the photos of a PMC shift-summary printout, one at a time. Photograph the top first — the center, date and shift are read from it — then add each following section one photo at a time, ending with a clear photo of the totals block at the bottom. Check the readings, review the rows, then save. Not tied to any one PMC, so you can digitize any center's sheet here.
Shift review queue
Shifts a PMC operator couldn't import (out-of-range FAT/SNF, hand-added rows, totals mismatch) and escalated. Open one to see the photos and the grid as the operator left it — you can correct any cell, then approve (imports it) or reject with a note the operator sees.
Upload a rate card
Upload a fat×SNF rate file (.xlsx). Pick the milk type and give it a short name you'll recognise later (e.g. 324 for cow, 860 for buffalo). Cow milk is fat 2.2–5.3; buffalo is 5.4–15.
Apply a rate to PMCs
Choose a saved rate card, the date it becomes applicable (leave the end date blank for open-ended), and the PMCs it applies to. Cow and buffalo are applied separately, so each can change on its own date.
Saved rate cards
| Name | Milk | Fat range | SNF range | Cells | Uploaded | Status | Actions |
|---|
List only — nothing is deleted here. Removing rows changes rate history, so any cleanup needs a manual decision per row.
Stale-rate issues
Shifts where the printed rates look like an older rate card than the one currently applied. Approve re-rates the shift to the current card (amount = rate × litres) and notifies the operator & farmers. Dismiss leaves the data untouched.
| PMC | Date | Shift | Current | Looks like | Rows | ₹ impact | Actions |
|---|
PMC dock factors
Additive cow/buffalo FAT/SNF corrections applied to the dock reading before the MPI-visible comparison, per PMC — persists until changed. Steps of 0.05, range −1.0 to +1.0. Composes with the per-shift factor set from the Dock Approvals screen. Unrelated to the Milk Stock Book's shift-closing-sheet Cow/Buff Fat/SNF Adj.
| PMC | Cow Fat | Cow SNF | Buff Fat | Buff SNF | |
|---|---|---|---|---|---|
| Loading… | |||||
Dock factor approvals
Needs approval — the default — is every shift with at least one PMC still undecided, whether none have been approved yet or only some have. It is the same test the daily digest counts with, so this list and that number never disagree. One item per plant+shift dock upload, but each PMC is approved individually. A PMC becomes approvable once its shift summary is digitized — until then there is nothing to compare against and it stays in "awaiting digitization". Approving a PMC releases that PMC's comparison to its MPI and freezes its factors; the rest of the shift is unaffected.
Invoice Registry & Billing Panel
Filter dispatches, generate Proforma Invoices based on dispatch specs, correct receiving data, or finalize Tax Invoices.
| Challan No. | Date | Party Name | Total Qty | Amount | Receipt Status | Actions |
|---|
PMC Ledger — Milk Payable
What the MCC owes each PMC. Milk received (field-collected farmer total) plus the PMC's commission builds up the payable; payments to the PMC draw it down. Milk values come straight from the digitized shift summaries.
Record Payment to PMC
Pays the PMC selected above. The payment reduces the PMC's running payable.
All PMC Payables
Every PMC's balance from the same engine as the Trial Balance's PMC Payables (Control) line — the total here always ties to that control account.
Loading…
Select a PMC to view its milk-payable ledger.
Payment Register — Test & Debug
Run the real Payment Register pipeline against any PMC and cycle without touching what operators and MPIs see. A test run is computed by the same code an operator hits — same OCR, same photo stitching, same header and completeness gates, same reconciliation — but no register and no reconciliation run are written, so nothing appears on the Payment Register screen, the operator portal, or the office notification bell.
Every run below — real operator uploads and admin tests alike — can be downloaded as a self-contained debug bundle.
Test upload TEST ONLY — never visible to operators
Run history
Every commit attempt since v2.150.0 — successes and failures, operator uploads and admin tests. A blocked attempt used to leave no trace at all; each row now carries its outcome and reason codes.
Payment Register Reconciliation
The DPU's own end-of-cycle PAYMENT REGISTER receipt (uploaded by the PMC operator), reconciled against Saksham's digitized shift data for the same PMC and cycle — to catch a payment posted to the wrong farmer when OCR misread a code. Read-only; corrections stay manual accountant work.
Uploaded Registers
Loading…
Record Payment / Credit Note
Party Ledger
Busy comparison
Busy is the book of record until 31 March 2027; both systems run in parallel until then. This is where a ledger is decided one counterparty at a time — Busy's figure, Saksham's, and the difference. Most of Busy has no Saksham counterpart yet, and that is expected, not an error rate: Saksham does not hold most of what Busy does. Nothing here posts, and setting a cutover date moves no money — it changes only which book this screen expects to be right.
Combined ledger
One ledger — a party, a PMC or a plain GL account — with Busy on one side and Saksham on the other. Set a cutover date and the two splice into a single running statement: Busy's entries up to the day before it, Saksham's from it onward. Nothing here posts. Setting a cutover moves no money — it changes only which book this screen treats as authoritative.
Bank Import
Upload the bank's own statement and match every transaction to a ledger. Rows you don't match stay in Suspense (so the bank ledger still ties to the bank's closing balance) and wait in the queue. Each choice is remembered, so the next statement fills itself in.
Axis — the “Smart Statement Report” .xlsx export only. It carries both sides of every transfer, which the PDF does not, so the PDF is deliberately not accepted. The file is read by the server, never in this browser.
Outstanding & Aging
Net amount owed by each party, bucketed by age (oldest first). Open a party's ledger to see the line-by-line breakdown.
Payment Terms & Due
Every account that owes money, read through that party’s own payment terms. Set terms on a party in Master Data → Party Master; an account with no terms, or with no Saksham party at all, is still listed here with its balance and its age — it just gets no due date.
Container Stock by Party
Returnable containers held by a party. Milk-can movements come automatically from finalized challans (cans dispatched) and receipts (empty cans returned). Outstanding = opening balance + dispatched − returned.
Outstanding Overview
Bank & General Ledger
Bank, cash and other ledger accounts, their running statements, and a trial balance. Receipts you record post here automatically (Dr Bank / Cr Party); sales post Dr Party / Cr Sales. Parties' own ledgers stay under Receipts & Ledgers.
User Rights & Access
See who has which rights and grant or revoke them per user: editing locks, audit-log visibility, draft deletion, back-date limits, and which parts of the system each account can reach (Milk Dispatch, Product Dispatch, Accounting & Billing, Receipt Entry, Reports). Admin and Database Admin only.
| Username | User Role | Rate & Formula Editing | Receipt Parameters Editing | Can Grant Executive Rights | Can View Edit Logs | Can Delete Drafts | Milk Dispatch | Product Dispatch | Accounting & Billing | Receipt Entry | Reports | Milk Collection | Back-date Limit (days) |
|---|