Balloon Partyner
SaaS for party decorators, with PDF quotes sent over WhatsApp, Stripe subscriptions and an AI assistant.
Context
Balloon decorators used to spend days closing a quote: materials, labor and expenses had to be calculated, and then everything sent to the client. Balloon Partyner is a subscription platform that brings quotes, pricing, work orders, scheduling and finances together in one place.
What I built
- Proposals and work orders as PDFs, sent to the client over WhatsApp.
- A pricing engine covering materials, labor, expenses and margin, with a budgeted-versus-actual comparison for each event.
- Scheduling, client, material and cost records, and financial control.
- Recurring subscriptions through Stripe, in reais and dollars, with a free trial.
- Interface in Portuguese, English and Spanish.
- An AI assistant that answers questions about the business and leaves pricing calculations to deterministic code.
Technical decisions
- Math is done by code, not by the AI. The assistant uses vector search (pgvector) to understand the question, but pricing calculations are deterministic: the result of a calculation never depends on the model’s mood.
- Billing without surprises. Stripe webhooks are signed and idempotent, and subscribers keep the currency they signed up in (real or dollar) while the subscription is active.
- Data isolated per user. Row Level Security on every table, so each business only sees its own data.
Results
- Time to put together a quote dropped from 2 days to 3 hours.
- A live product with recurring billing in two currencies.
- 2 days → 3 h
- to put together a quote
- BRL and USD
- recurring subscription through Stripe
Stack
- React
- TypeScript
- TanStack Start
- Tailwind CSS
- Supabase
- Stripe
- Lovable