Loading…
SKIP TO CONTENT
A/L
SYS_012BUILDING

Hundekari

Contract Farming & Agricultural Supply Chain Management System

Seed supply to growers, cold-store stock, harvest buy-back, company loading and farmer settlement in one system.

TYPE
AGRI SUPPLY CHAIN
STATUS
BUILDING
YEAR
2026
ROLE
System design, legacy migration, full-stack implementation
PLATFORM
Flutter (desktop web, mobile web, Windows), Node.js API
STACK
Flutter · Dart · Node.js · Express · MariaDB · REST
01

PROBLEM

An agricultural supply business sits between seed suppliers, cold stores, growers and a processing company. Seed is bought and stored, issued to farmers alongside advances and inputs, and the harvest is bought back and loaded for the company — so every farmer is both a customer and a supplier in the same season.

Settling that position fairly means knowing what each farmer took, what they delivered, what the company actually accepted, and what was already advanced. On the legacy desktop system that reconciliation was slow, and it lived on one machine.

02

SYSTEM

Hundekari follows the seed from purchase to settlement. Seed lots carry a landed cost that includes store and handling expenses, stock is tracked per lot across cold stores, and sales to farmers pick from that lot stock.

At harvest, produce bought from farmers is loaded for the processing company, and the difference between field weight, company weight and rejection is reconciled back onto the individual farmer purchases.

A farmer settlement is generated from a purchase in one step, net of what the farmer owes — seed, advances and inputs — so the season closes as a statement each farmer can follow.

03

CORE FLOW

How the operation moves through the system.

ARCH_01 / SEED TO SETTLEMENT
  1. Bought by the load, with expenses spread into a landed cost per lot
  2. Transfer and lot-level stock across stores
  3. Seed sold from lot stock, with advances and inputs
  4. Produce bought back from growers net of deductions
  5. Loaded for the processing company; weight and rejects reconciled
  6. Farmer statement net of everything owed, then payment
SELECT OR HOVER A NODE FOR DETAIL

Flow from seed purchase through cold storage, issue to growers, harvest buy-back and company loading to farmer settlement.

04

KEY MODULES

M01Masters
Parties, groups, items, varieties and grades, transport, trucks and vendors.
M02Seed purchase
Load-wise purchase with expense-based lot costing.
M03Company seed
Seed received from the processing company against grower codes.
M04Cold-store transfer
Movement between stores with lot-level stock.
M05Grower sale
Seed issued to farmers by picking from lots in stock.
M06Produce purchase
Harvest bought from farmers net of deductions and rejects.
M07Company loading
Dispatch with weight-loss and rejection reconciled to farmers.
M08Farmer settlement
One-step statement from a purchase, net of what is owed.
M09Bags
Purchase and issue of packing bags tracked like any other stock.
M10Accounts & reports
Vouchers, party ledger, outstanding and registers; PDF and Excel.
05

ARCHITECTURE

Client
Flutter desktop UI that keeps the legacy keyboard flow, plus a card-based phone UI.
Calculation
All figures computed server-side through a preview endpoint, so every screen agrees.
API
Node.js and Express; entry screens and reports built from server-provided specs.
Tenancy
Every request carries a company context; roles with per-user overrides.
Language
English and Marathi captions with Marathi typing from a Latin keyboard.
Data
MariaDB with versioned migrations; documents archived before any edit.
06

ENGINEERING

The parts that were not obvious, and what the system does about them.

  1. 01 / 04

    Reconciling the company’s weight with the farmer’s

    What leaves the field and what the company accepts are never the same number. Weight loss and rejection at loading are distributed back onto the farmer purchases that made up the load, so each settlement reflects what was actually accepted.

  2. 02 / 04

    Landed cost per lot

    Seed cost is not just the invoice: storage and handling belong in it too. Expenses are spread across lots at purchase, so the margin on a grower sale is computed against what the seed really cost.

  3. 03 / 04

    History that survives every edit

    Before a document is changed or deleted, the full previous version is archived and its number is never reused, so a disputed settlement can always be traced back.

  4. 04 / 04

    Concurrency-safe numbering

    Per-series sequences, deadlock retries, a unique-key backstop, row versions and idempotency keys keep document numbers clean when several operators save at once.

07

SCREENS

  1. SCREEN_01Seed purchase with lot costing
  2. SCREEN_02Company loading reconciliation
  3. SCREEN_03Farmer settlement statement
08

RESULT

Every farmer’s season — seed taken, produce delivered, weight accepted and money owed — closes as one statement that can be traced line by line.

Stock, cost and settlement run on one system reachable from the office desktop or a phone, instead of a single legacy machine.