← Alle notitiesENNL

Aannemers CRM

Vijf tools en een WhatsApp-groep, vervangen door één systeem van offerte tot factuur.

  • Klant — een aannemersgroep in Nederland met meerdere gespecialiseerde merken
  • Status — in aanbouw
  • Scope — merksites, CRM, offertefunnels
  • Team — 99six

01 — Wat het vervangt

Het werk zelf was prima. Het overzicht niet. Elke aanvraag kwam ergens anders binnen, elke offerte werd vanaf nul geschreven, en niemand kon zeggen wat er deze week speelde.

  • Elke offerte met de hand, elke keer opnieuw. Geen twee offertes waren gelijk, en de prijs zat in het hoofd van wie hem schreef.
  • Het klantgesprek verspreid over meerdere mailboxen, een WhatsApp-groep en telefoontjes. Geen draad die iemand kon volgen.
  • Geen centraal klantbeeld. Wat er was afgesproken, wanneer en door wie: daarvoor moest je rondvragen.
  • Elke aanvraag gelijk behandeld. Iemand die prijzen vergelijkt en iemand die wil beginnen, zagen er bij binnenkomst hetzelfde uit.
  • Geen pipeline, dus geen zicht op welke deals in welke fase zaten, of wat de week waard was.
  • Formuliergegevens met de hand overgetikt in de administratie — de stap waar ongemerkt details verloren gaan.

02 — Hoe het werkt

Eén ronde door het systeem: de lijst met een klantkaart open, het pipelinebord, het dashboard. Verzonnen aannemers, verzonnen klussen, verzonnen euro’s.

Eén route van eerste klik tot opgeleverde klus. Elke merksite heeft een korte funnel. De funnel prijst de klus, vraagt om een bevestiging en geeft een ingevulde klant en deal door aan het CRM. Niets wordt overgetikt.

  • De funnel vraagt naar de klus — soort werk, oppervlak, afwerking, ondergrond, voorbereiding, startdatum. Knoppen en iconen, geen muur van formuliervelden.
  • Een prijsmodule geeft een bandbreedte in plaats van een vast bedrag, met de eerlijke kanttekening dat de echte prijs volgt na een opname.
  • De bevestigingsstap is de kwalificatie. Geen bevestiging, geen CRM-workflow, dus een oriënterende bezoeker wordt nooit iemands taak.
  • Een bevestigde aanvraag maakt een klant en een deal aan in de eerste fase, gelabeld met het merk waar hij vandaan kwam en met elk gegeven antwoord erbij.

De klantkaart

Alles over één aanvraag op één scherm: waar ze om vroegen, welke prijs de funnel gaf, wat er gezegd is en wat er nu gebeurt — met de deadline erbij.

Eén scherm bevat de hele klantrelatie, zodat niemand die uit vier plekken hoeft samen te zoeken voordat hij de telefoon pakt.

  • Contactgegevens, en het merk waar de lead vandaan kwam
  • Gekwalificeerd of oriënterend
  • Elk funnelantwoord, plus de berekende prijsbandbreedte
  • De offerte-pdf’s die al verstuurd zijn
  • Eén tijdlijn: e-mail, WhatsApp, belnotities en videogesprekken, op volgorde
  • De huidige dealfase
  • Opvolgtaken, open en afgerond

Wat het systeem zelf doet

  • Bevestigt de ontvangst per e-mail aan de klant
  • Maakt de offerte als pdf in de huisstijl van het merk, en verstuurt hem
  • Waarschuwt de adviseur zodra er een gekwalificeerde lead binnenkomt
  • Opent een opvolgtaak met een deadline, en herinnert voordat die verloopt
  • Labelt de lead met het merk waar hij vandaan kwam

03 — De pipeline

De zeven fases, elk met wat ze waard zijn. Opname — het bezoek op locatie — is een eigen kolom, omdat in de bouw alles op die afspraak wacht.

Fases die passen bij hoe bouwen echt gaat. Geen standaard salesfunnel: de opname is een eigen fase, omdat in de bouw alles van die afspraak afhangt. Een verloren deal legt vast waarom.

  • Nieuw — de aanvraag is binnen
  • Contact — iemand heeft ze gesproken
  • Opname — het bezoek op locatie
  • Offerte — de offerte is verstuurd
  • Uitvoering — de klus loopt
  • Afgerond — opgeleverd
  • Verloren — verloren, met de reden erbij

Het dashboard

Wat is deze week waard, en wat ben ik vergeten? De pipelinewaarde per fase is verdeeld per merk, omdat de vier merken één pipeline en één team delen.

Pipelinewaarde per fase, verdeeld per merk, de opvolgingen van vandaag, wat elk merk deze week binnenbracht en won, en twaalf weken aan aanvragen erachter. Eén scherm dat antwoord geeft op: wat is deze week waard, en wat ben ik vergeten?

04 — Waar het op aansluit

Niets hier vraagt het team om een gewoonte op te geven. De mail die ze al sturen en de WhatsApp die ze al beantwoorden, komen vanzelf op de klantkaart terecht.

  • E-mail — synchronisatie in twee richtingen met de teammailbox. Inkomende en uitgaande mail hangt zichzelf aan de juiste klantkaart, en meldingen en offerte-pdf’s gaan langs dezelfde weg de deur uit.
  • Agenda — leest de beschikbaarheid uit, en zet geplande videogesprekken in de agenda.
  • Videogesprekken — een vergaderlink die wordt aangemaakt zodra een gesprek is ingepland, met herinneringen vooraf.
  • WhatsApp Business — berichten centraal op de klantkaart, in plaats van in de telefoon van één persoon.
  • Boekhouding — klant- en factuurgegevens synchroniseren met het boekhoudpakket dat het bedrijf al gebruikt. Het CRM vervangt dat niet.

Wie wat ziet

  • Directie — alles: pipeline-instellingen, prijsparameters, website-inhoud, rapportages, gebruikers.
  • Verkoopadviseur — leads, klantkaarten, de tijdlijn van het gesprek, taken, agenda, pipeline, meldingen.
  • Contentbeheerder — website-inhoud in beide talen en de parameters van de calculator, zonder ontwikkelaar.
  • Onderaannemer — de projecten waaraan hij is toegewezen, en verder niets.

Toegang wordt afgedwongen in de database, niet alleen in de interface: elke rij draagt zijn merk, en policies op rijniveau bepalen wie hem mag lezen.

05 — Waar het staat

In aanbouw. De site van het hoofdmerk en het CRM zijn het werk van nu; de funnels, de gedeelde prijsmodule en de automatiseringen volgen zodra die twee live zijn. De schermen op deze pagina zijn het werkende ontwerp van het systeem, op verzonnen data — er staat geen enkele klant van hen in.

06 — De stack

Saai waar het saai hoort te zijn.

  • Front-end — Next.js en TypeScript voor de merksites en het CRM, zodat er één denkmodel is voor elke app in de repo.
  • Back-end — één gedeelde service op Node voor het werk dat niet in een browser mag draaien: formulierinzendingen, geheime sleutels van koppelingen, mail en WhatsApp versturen, de aansturing van pdf’s. Eén service met merken als configuratie, geen vijf kopieën van dezelfde logica.
  • Data — Postgres met authenticatie, row-level security, realtime en opslag. De scheiding tussen merken zit op rijniveau, niet in een filter in de interface.
  • Documenten — een aparte pdf-renderer met headless Chrome, met JavaScript daarbinnen uitgeschakeld en externe verzoeken geblokkeerd. Merk als thema, dus een vijfde merk is een set tokens en geen vijfde template.
  • Hosting — containers op een Kubernetes-cluster met één node, met Cloudflare ervoor voor DNS, TLS, CDN en DDoS.
  • Tests — prijsregels, toegangsregels en de koppelcode worden test-first geschreven. Volledige flows draaien in een browser, en elke smoke-run bevat een toegankelijkheidscheck.
  • Privacy — Nederlandse markt, Europese regels. Leadgegevens zijn persoonsgegevens: een rechtsgrond, vastgelegde bewaartermijnen, en schema’s die echt verwijderen ondersteunen in plaats van alleen een vlag.

Herken je jouw week hierin? Dertig minuten is genoeg om het uit te zoeken.

Plan 30 minuten →