XpenseDiary
AI-powered expense tracking via WhatsApp — built for the modern Indian saver
XpenseDiary is a WhatsApp-first personal finance SaaS that lets Indian users track daily expenses by simply sending a WhatsApp message — no app download required. Powered by Django and integrated with the Meta WhatsApp Business Cloud API, it uses Google Gemini AI and Vision OCR to parse natural language expense messages and receipt images, categorise spending automatically, and deliver weekly PDF summaries. A full web dashboard provides analytics, category management, and account settings
My role: Full-stack development from architecture to deployment.
Most Indian users track UPI spends, Zomato orders, and rent payments mentally or in scattered notes existing expense apps require downloads, manual entry, and daily habit changes. There was no frictionless way to log expenses from a platform Indians already use every day: WhatsApp. The challenge was building a system that required zero behavioral change from the user while delivering structured financial data behind the scenes.
Built a Django webhook handler that receives Meta Cloud API POST requests, verifies signatures, and pipes message content through an AI parsing pipeline — Gemini for smart categorisation, Vision OCR for receipt images, and a keyword fallback for offline resilience. WhatsApp number linking uses OTP verification to tie users to their accounts securely. The web dashboard is served via Gunicorn behind Nginx on a VPS with PostgreSQL in production, giving a clean separation between the real-time WhatsApp layer and the analytics layer. All webhook responses return HTTP 200 unconditionally to prevent Meta retry loops.