Skip to content
Back to projects

Projects

Dale

A WhatsApp contact that writes quotes for tradespeople. You send it a voice note, a photo or a message, and it sends back a branded PDF plus a link your client can accept.

Launched in Argentina in October 2026, no usage data yet
Dale's landing page hero: the headline “Del audio al PDF” (from voice note to PDF), a button to try it free on WhatsApp, a QR code and a sample quote from a plumbing business with its total.
The live landing page (dalepresu.com). The business, names and amounts on the quote are made up.

Problem

Tradespeople write quotes by hand, in Excel or in a loose message. It takes time, looks unprofessional, and they never know whether the client saw it or when to follow up. In Argentina, inflation adds to it: a quote from two weeks ago is already out of date.

Before writing code I looked at the market. The closest competitor, a WhatsApp bot, lists prices from 66,000 to 147,000 pesos a month. I tried it as a customer: the format works, but there is no link for the client to accept, no follow-up and no expiry date on the quote.

Product decisions

  • WhatsApp as the way in, the web as the dashboard. I first built a full web app; trying the competitor showed me tradespeople don't want another app to open. The web app was reused whole as the dashboard.
  • AI never makes up prices. It picks items from the tradesperson's price list and the code does the maths. If they say a price out loud, that one is used; if one is missing, it shows as “to be completed”.
  • A small, measured model: Claude Haiku 5.5 got 20 out of 20 test quotes right, at 0.00017 dollars each.
  • The speech-to-text service was chosen with 20 real voice notes: one got 20 out of 20, the other 18 and 19 out of 20, at the same price. Audio is never stored.
  • Payments go straight through Mercado Pago, monthly or yearly, with the first three quotes free and no card needed. One provider, one payment notification.
  • Left out on purpose: invoicing (electronic and regulated in Argentina), deposits, a native app and phone permissions.

How it works

The message comes in through the WhatsApp API to a Supabase function that checks Meta's signature. Audio is transcribed, the AI builds or fixes the line items from the tradesperson's price list, and the PDF is generated on the server and sent back on WhatsApp with the client link.

The client opens the link with no account and accepts, asks for changes or declines. The dashboard shows which quotes were seen, which were accepted and who to follow up with.

Technical challenges

  • The bot has to understand intent: a new quote, a fix (“drop the delivery fee”), “who hasn't replied?”. Anything that is not a quote gets no answer, to comply with WhatsApp's policy on AI assistants.
  • A price corrected in the chat is saved to the price list, so next time it comes out right on its own.
  • Payments: a Mercado Pago notification is never trusted as it arrives; the real payment status is checked. A refund removes access, and a daily sync fixes lost notifications.
  • Each tradesperson only sees their own data, enforced with Row Level Security. The AI never receives the end client's details.
  • Meta cut the bot off twice to confirm the account. An hourly health check now sends an email alert.

Validation and results

I tested it end to end on the real WhatsApp number and on my iPhone before publishing. It has 136 automated tests, and the database functions are tested in SQL with rollback.

I launched it on 22 October 2026. I don't have users or sales to show yet; when I do, they will go here with their date.

What I'd do differently

  • Try the competitor before building, not after: it would have saved me building the web app as the way in first.
  • Close the payment loop end to end before launch. The yearly plan couldn't be bought on launch day; I caught it while checking and switched provider.
  • AI speeds up my development, but deciding what to build and what to leave out is still my job.

Projects

Other projects

Main dashboard of La Nueva Goleta Administración showing the business summary, sales, purchase and cash indicators, and the section sidebar.
Working pilot

La Nueva Goleta Administración

I started it to keep the restaurant's invoices, prices, cash and expenses in one place. It runs in a pilot environment today and gets better with every round of testing.

  • Django
  • Python
  • OCR
  • Product
  • Hospitality
  • Automation

Read the case study

Design mockup of Finance OS: a dashboard with net worth, income, expenses, savings, a financial evolution chart and a monthly budget, using sample data.
In development

Finance OS

My next project: a simple app to see accounts, expenses, budgets and goals without having the information scattered around.

  • Product
  • Design
  • Personal finance
  • Concept

View project