SaaS · sep 2026 – heden

Attentiv AI

Multi-tenant SaaS voor financieel adviseurs met dossiers, Wft-compliancecontroles, leads en rapportages, en een AI-laag die persoonsgegevens pseudonimiseert vóór elk modelverzoek.

Status
Beta, in actieve ontwikkeling
Commits
130 (sep 2026)
E2E-tests
20 Playwright-specs
Compliance
9 Wft-regels
Tenancy
per kantoor gescheiden
ArchitectuurAttentiv AI: hoofdstroom
  1. 01Verzoek per kantoor
  2. 02Opt-in & rate limit
  3. 03Tokenbudget
  4. 04Pseudonimiseren
  5. 05Claude
  6. 06Valideren & herstellen
  7. 07Usage + audit

Probleem

Adviesbureaus voor hypotheken en verzekeringen werken met dossiers die volgens de Wft (Wet op het financieel toezicht) volledig en controleerbaar moeten zijn. Die controle gebeurt vaak met de hand, verspreid over losse systemen voor leads, polissen, claims en rapportages.

Randvoorwaarden

  • Persoonsgegevens: dossiers bevatten gevoelige financiële en persoonlijke informatie. Die mag niet onbeschermd naar een extern taalmodel.
  • Meerdere kantoren: elk kantoor moet volledig gescheiden data hebben.
  • Aantoonbaarheid: wijzigingen en AI-gebruik moeten achteraf te controleren zijn.
  • Kosten: AI-gebruik moet per kantoor begrensd zijn.

Architectuur

Een Next.js-applicatie met server actions, Prisma als datalaag (SQLite lokaal, PostgreSQL in productie) en een multi-tenant model waarin elk record aan een kantoor hangt. Billing loopt via Stripe-webhooks, inkomende leads en CRM-synchronisatie via eigen webhook-endpoints, en uitgaande triggers via een cron-route.

Implementatie

  • Wft-engine (lib/compliance/wft-engine.ts): negen regels die een dossier toetsen en per regel aangeven wat ontbreekt.
  • Audit-log met hashketen (lib/audit/chain-hash.ts): elke auditregel bevat de hash van de vorige, zodat achteraf aanpassen detecteerbaar is. De hashfunctie staat bewust los van de ORM, zodat migratiescripts exact dezelfde berekening gebruiken.
  • Beveiliging: Content-Security-Policy met nonce, en een migratietool van SQLite naar PostgreSQL met een CI-controle op schema-synchronisatie.
  • Tests: 20 Playwright end-to-end specs voor de kritieke flows.

AI en automatisering

Alle modelverzoeken lopen via één provider-laag (lib/ai/provider.ts) die per verzoek een vaste volgorde afdwingt:

  1. Het kantoor moet AI expliciet hebben ingeschakeld.
  2. Rate limit per kantoor per minuut.
  3. Maandelijks tokenbudget per kantoor. Is dat op, dan krijgt de gebruiker een duidelijke melding in plaats van een fout.
  4. Persoonsgegevens worden omkeerbaar gepseudonimiseerd voordat het verzoek naar Claude gaat. Het antwoord wordt eerst gevalideerd en pas daarna teruggezet naar de echte waarden.
  5. Verbruik wordt vastgelegd met alleen tokens, taak en model, plus een auditregel zonder persoonsgegevens.

Resultaat

Een werkende beta met dossierbeheer, Wft-controles, leads, polissen, claims, rapportages en Stripe-billing, gedekt door end-to-end tests. Het product is nog in ontwikkeling; er zijn nog geen productiecijfers om te publiceren.

Lessen

  • Eén toegangspunt voor AI maakt beleid afdwingbaar. Budgetten, rate limits en pseudonimisering zitten op één plek in plaats van verspreid over features.
  • Privacy is een architectuurkeuze, geen instelling achteraf. Pseudonimiseren vóór het model is eenvoudiger aan te tonen dan vertrouwen op de voorwaarden van een provider.
  • Audit als datastructuur: een hashketen kost weinig code en maakt de log zelf controleerbaar.
sys://contact

Iets vergelijkbaars bouwen?

Beschrijf het proces, de tool of het product in een paar zinnen. Je krijgt een concreet antwoord: wat haalbaar is, hoe je het zou bouwen en waar de risico’s zitten.