Ronak Dangar

Tech

Tech · case study

Bull Connect

A CRM that remembers every farmer the way the best telecaller would.

Bull's telecallers used to work from a paid CRM that knew a farmer's name and phone number and nothing else. The useful facts lived in people's heads: what the farmer grows, how much is lying in his godown, what he was offered last time, what price he is waiting for.

Bull Connect is the in-house replacement I built around how the business actually sells. It keeps all of that on the farmer's record, so the call happens at the right moment with the right offer.

Before

  • A generic CRM with a name and a number per lead.
  • Field supervisors' Telegram messages were the only memory of a farmer, and they scrolled away.
  • No way to know when a farmer's price had been reached.
  • A monthly subscription for a tool that did not fit.

Now

  • Each farmer's record holds the crop, the quantity in hand, the last price offered, the price he expects, and every call ever made to him.
  • When the market in his region reaches his expected price, he is on the day's call list.
  • A farmer who sold to Bull two seasons ago is known, so the team can offer him a rupee or two over the day's rate and keep him.
  • Expected and offered prices are known region by region, which sharpens the office's own pricing.
  • Lead status moves through one state machine, enforced in the app and again in the database, so no lead is lost between a call and a visit.

How it works

  1. A lead arrives

    From a supervisor's Gujarati line in Telegram, parsed by the AI pipeline, or from the field form.

  2. The telecaller qualifies it

    Crop, quantity in hand, last offer, expected price, village. Every call is logged with its outcome and the next callback.

  3. Watch the marketCheck

    The region's daily price moves. When it reaches the farmer's expected price, he comes up on the list.

  4. Call at the right moment

    The offer is made against what he said he wanted, not against a cold script.

  5. Field visit

    A ground executive is assigned, the visit is scheduled and closed with notes and an outcome.

  6. Deal

    Quantity, value and who closed it go on the deal record. Sold or dropped, with a reason, is the only way out.

What it changed

33K+villages in the master list
9lead states, enforced in Postgres
3apps: mobile, web, API

On screen

Bull Connect: a farmer record with crop, quantity and follow-up date
A farmer record as the calling team sees it

Built with Express and TypeScript on PostgreSQL 16 with pgcrypto and state-machine triggers, an Expo React Native app for the field, a Next.js 16 dashboard for the office, Docker and nginx.