WhatsApp Sales
From “Bonjour” to paid deposit, inside one WhatsApp chat.
A Paris moving company quoting every job by hand over WhatsApp.

Outcomes
- Customers get a qualified, itemised quote in minutes, in French, English or whatever language they write in
- A 15% deposit is collected through Stripe before a driver is ever assigned
- Prices are calculated by the system, never by the AI, so every quote is exact
- One admin dashboard for conversations, quotes, drivers, payments and settings
The problem
Baleo Logistics took every booking through WhatsApp by hand: asking for addresses, floors and items, working out a price from packages and add-ons, then chasing payment. Every quote cost staff time, and slow replies lost jobs.
What I built
A WhatsApp Cloud API webhook on Vercel that hands each conversation to GPT-4o with a strict sales script. The AI qualifies the move and picks a package (Express, Standard, Move or Full Day) plus add-ons like extra helpers or floors without an elevator, then emits a structured quote tag. Server-side pricing turns that into an exact quote with deposit and balance. When the customer confirms, a Stripe payment link is generated, and the Stripe webhook marks the job paid and tells the customer a driver is on the way. Everything is stored in Supabase and managed from a React dashboard.
Built with
- WhatsApp Cloud API
- OpenAI GPT-4o
- Stripe
- Supabase
- React
- Vite
- Vercel Functions