Our product
BrokLeads: the CRM we built, and still run, for teams that sell on WhatsApp
BrokLeads is a lead management CRM with a shared WhatsApp inbox for sales teams in Pakistan, the UAE and Saudi Arabia. We designed it, built the web app, the API and the mobile app, and we operate it in production.

The challenge
BrokLeads started with property agencies. Their owners spent heavily on Meta ads, then lost track of the leads in WhatsApp groups and spreadsheets. Someone downloaded a CSV, pasted it into a group, and agents picked the leads they liked. By the time anyone called, the buyer had often spoken to a competitor.
Global CRMs didn't fit. They were built around email, priced in dollars per seat, and treated WhatsApp as an add-on. These teams needed a CRM built around how they actually sell: from ad leads, on WhatsApp, with the owner signing off on every deal.
Our approach
Start from the channels
Lead ads and WhatsApp come first. Meta and TikTok leads arrive through their official webhooks (TikTok also gets a two-minute sync as a safety net), and a new WhatsApp chat creates a lead.
Give every lead an owner at once
Round-robin per campaign, with daily and total caps per agent, and a log of who got which lead and why. No claiming and no forwarding.
Keep the owner in control
A sale counts only after the owner approves it, so the reports show real deals.
Usable on day one
The rule for the interface: if an agent can use WhatsApp, they can use BrokLeads.
Architecture
- Web app
- Next.js 16 and React 19. The browser only talks to the Next.js app, whose server-side proxy (a backend-for-frontend) forwards each request to the API, server to server.
- API
- Laravel 13 on PHP 8.3, with Sanctum bearer tokens and PostgreSQL. Controllers stay thin, business rules live in services, and list endpoints share one query helper for search, filters and sorting.
- Multi-tenancy
- Agencies share one deployment, but every row belongs to a branch. Membership is verified on each request, the scope lives on the model, and a check fails the build if a branch-owned model is missing it.
- Permissions
- Two gates: a role grants actions within a branch, and a row-level rule means agents see only the leads assigned to them. Both are enforced in the database queries, not in the interface.
- Mobile app
- React Native with Expo, a first-class client of the same API. It keeps its token in the phone's secure storage and receives push alerts when a lead is assigned.
- Integrations
- Meta lead webhooks with a 90-day import, the WhatsApp Cloud API through Embedded Signup, TikTok lead webhooks, website-form intake (secret keys, or origin-locked public tokens with a captcha), and the Meta Conversions API.
People
Web app
Owners, managers and agents
Mobile app
React Native, Expo, push alerts
Edge
Next.js BFF on Vercel
The only thing the browser talks to
Core
Laravel API
Sanctum tokens, branch wall, RBAC and row-level rules
Integrations
Meta, WhatsApp Cloud API, TikTok, website forms
Data
PostgreSQL
Every row owned by a branch


Where it stands
Live and in daily use
BrokLeads is in production and used by sales teams, including Citi Stone Pvt Ltd in Pakistan.
Beyond real estate
The same problem turned up in other sales teams, so BrokLeads now serves e-commerce, education, clinics, travel and service businesses too, each workspace in its own currency and timezone.
Proof we use ourselves
Many of the patterns on our service pages, such as branch-walled data, preview deployments and form intake with bot checks, run in BrokLeads first.
Every enquiry now reaches the right agent in seconds, and I can see who's following up and who's closing. BrokLeads replaced five WhatsApp groups and a spreadsheet.
We stopped losing leads overnight. BrokLeads routes every inquiry to an agent before the client puts their phone down.
Built with
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS
- Laravel 13
- PostgreSQL
- React Native
- Expo
- Filament
- WhatsApp Cloud API
- Meta Graph API
Services involved
Related case studies
Related guides
Have a problem like this one?
A few lines is enough. We'll ask the right questions on the call.
We reply within one working day
By email or WhatsApp, whichever you prefer.
A short call
To understand the goal, the people who'll use it and any deadline.
A written scope and estimate
Before any work starts, so you know what you're agreeing to.
Prefer to talk first?