TurboIntrastat

Full-scope project: multilingual marketing site (IT/EN/DE/FR) + production SaaS webapp. The app uses Google Gemini to automatically extract data from invoices through a 5-stage AI pipeline, generating ADM-compliant exports. Dual-app architecture with Next.js 16, Supabase (50+ tables with RLS), Stripe payments, Trigger.dev async jobs, and an integrated CRM/CDP. All orchestrated by a single operator with AI agent swarms. Live at turbointrastat.com
The problem
Intrastat declarations are filled in by reading invoices one at a time and retyping the data into a format the customs agency either accepts or rejects, with no middle ground. A typo costs as much as a substantive error, and the time spent grows linearly with the number of invoices — exactly the kind of work worth taking off a person's hands.
How we tackled it
The web app extracts invoice data through a five-stage AI pipeline and produces the compliant export. Five stages rather than a single call because each one checks the previous: extract, normalise, validate, reconcile, export — data that fails a check stops there and gets flagged, instead of ending up in a filing that will bounce back. Around the app, a marketing site in four languages.
Technical choices
Dual-app architecture on Next.js 16 with Supabase (50+ tables under row-level security), Stripe for payments, Trigger.dev for async jobs — processing a batch of invoices can't live inside an HTTP request — and an integrated CRM/CDP. Built and shipped to production by a single operator orchestrating swarms of AI agents.
What it includes
Production SaaS web app with AI extraction from invoices, staged validation and compliant customs export; marketing site in four languages (IT/EN/DE/FR); subscriptions and payments via Stripe; async jobs for batch processing; integrated CRM/CDP for the customer lifecycle; 50+ tables under row-level security. A complete project, from infrastructure to site copy.