Als installateur van zonnepanelen, thuisbatterijen, laadpalen en HVAC-oplossingen levert onze klant Limsolar uitsluitend hoogwaardig maatwerk en diepgaande technische expertise. Net daarom botste Limsolar op een herkenbaar probleem in de sector: hoe converteer je een online lead of prijsaanvraag naar een uiterst nauwkeurige, technisch correcte offerte, zonder dat de sales-afdeling verzandt in een eindeloze cyclus van bellen, handmatige Excel-berekeningen, en het knutselen van PDF's?
Er bestaan natuurlijk generieke CRM- en ERP-tools zoals Teamleader of Salesforce. Alleen merkte Limsolar dat zulke platformen vaak te rigide zijn voor de specifieke, dynamische berekeningen die nodig zijn bij zonne-energie en klimaattechnologie. Voor je het weet ben je uren bezig met het handmatig overtypen van simulatorgegevens van de website naar je CRM, om vervolgens handmatig de juiste omvormers, montagematerialen en zonnepanelen samen te stellen in een aparte PDF-editor.
Het resultaat? Een offerteproces dat al snel uren tot dagen in beslag nam. Dit moest anders. Als innovatieve communicatiepartner heeft For the Dream daarom één centrale cloud-architectuur ontwikkeld die de volledige stroom—van nieuwsbrief (marketing) en simulator (lead) tot de uiteindelijke factuur of offerte—schaalbaar, foutloos en razendsnel digitaliseert voor Limsolar.
In deze blogpost nemen we je mee achter de schermen van Limsolar Flow: de bliksemsnelle cloud-omgeving die we voor hen hebben ontworpen en die het offerteproces heeft gereduceerd tot minder dan 10 minuten.
Van lead tot offerte in 10 minuten?
Ontdek hoe Limsolar Flow de administratieve overhead minimaliseert en de verkoop versnelt.
Bekijk de website
Bij het ontwerpen van de cloud-architectuur keken we samen met ons team en Limsolar kritisch naar de knelpunten die dagelijks tijd en leads kostten. Het resultaat is een geïntegreerd platform waar marketing, CRM en calculaties hand in hand gaan.
De uitdaging in de praktijk Als installateur wil je projecten en orders overzichtelijk beheren. Gefragmenteerde Excel-lijsten en losse mappen per klant leiden tot een gebrek aan overzicht, vertraagde projecten en interne miscommunicatie.
De technische oplossing In het centrale administratiepaneel beheert Limsolar alle orders, leads en klantendossiers vanuit één centraal dashboard:
- Gecentraliseerd dossier: alle klantgegevens, simulaties, offertes en facturen zijn gekoppeld onder één centraal klantprofiel.
- Realtime status-tracking: volg de voortgang van projecten direct op de voet, van eerste simulatie tot de definitieve oplevering en keuring.
De uitdaging in de praktijk Potentiële klanten vullen op de website een simulator in over hun dakoppervlakte, energieverbruik en gewenste systemen. In traditionele systemen komen deze gegevens binnen via e-mail, waarna een sales-collega de parameters handmatig moet overtypen in Excel of een CRM. Dit handmatige werk kost tijd, vertraagt de opvolging en is uiterst foutgevoelig.
De technische oplossing De website-simulator praat rechtstreeks met de PostgreSQL-database via een beveiligde API, waardoor leads onmiddellijk gestructureerd worden opgeslagen:
-
Instant database-integratie: zodra een lead verzonden wordt, maakt Prisma direct een
Lead-record aan met alle ingevulde klantgegevens. -
Flexibele parameter-opslag: de technische parameters van het dak en de energie-omgeving worden opgeslagen als een gestructureerd
Json-object (energyNeeds) in de database. - Onmiddellijke sales-visibiliteit: de sales-admin ziet direct de exacte dakinformatie, geschatte opbrengst en geselecteerde apparatuur zonder één handmatige handeling.
De uitdaging in de praktijk Om een offerte op te stellen, moet de calculator de prijzen van zonnepanelen, de juiste omvormer (bijv. SMA of Enphase) en montagematerialen (bijv. Esdec of Valk) combineren. Dit kostte vroeger veel tijd aan bellen, opzoeken in Excel-sheets, handmatig calculeren en het omslachtig exporteren naar PDF.
De technische oplossing We bouwden een dynamische, realtime offertebuilder direct in het Next.js admin-dashboard van Limsolar:
- Realtime calculatiemotor: de admin selecteert de benodigde producten, waarna het systeem automatisch de B2B- of B2C-tarieven inclusief btw-percentages berekent.
-
Client-side PDF-generatie: met één druk op de knop genereert de browser via
html2pdf.jsenjsPDFeen prachtig gepersonaliseerd PDF-voorstel. -
Instant e-mailaflevering: de offerte wordt direct via de Resend-API naar de inbox van de klant gestuurd, waarbij de status van de lead instant verandert naar
QUOTE_SENT.
Klik op de pijltjes of swipe om alle schermen te bekijken ➔
De uitdaging in de praktijk Om nieuwsbrieven of gerichte updates te sturen, moeten contacten handmatig geëxporteerd worden naar Mailchimp of ActiveCampaign. Dit leidt tot verouderde lijsten, GDPR-risico's en synchronisatiefouten tussen B2B- en B2C-klanten.
De technische oplossing
De database bevat een Campaign-tabel gekoppeld aan de geïntegreerde e-mailmotor, waardoor marketingcampagnes direct vanuit het platform draaien:
- Ingebouwde Rich Text Editor: via een WYSIWYG-editor aangedreven door Tiptap kan de marketingafdeling direct prachtige e-mails opstellen.
-
Strikte segmentatie op live data: er kan gefilterd worden op doelgroep (
B2B,B2CofALL) rechtstreeks op de live productiedata, wat fouten uitsluit. - Betrouwbare verzending: Resend verstuurt de e-mails met een extreem hoge afleverratio, waarna de status en statistieken direct in het dashboard verschijnen.
De uitdaging in de praktijk Professionele installateurs en B2B-klanten willen snel hun eigen prijzen inclusief kortingen kunnen inzien, bestellingen plaatsen, de status van hun orders volgen en technische fiches downloaden zonder daarvoor te moeten bellen of mailen.
De technische oplossing We hebben een dedicated en zwaar beveiligde B2B-omgeving gebouwd binnen dezelfde Next.js-applicatie:
-
Gepersonaliseerde prijsberekening: via Next-Auth en Prisma zien ingelogde installateurs hun netto-prijzen, berekend op basis van hun specifieke kortingsprofiel (
discountendiscountTypevia deUser-tabel). -
Realtime order-tracking: partners kunnen bestellingen plaatsen en de status realtime volgen (van
READY_FOR_PICKUPtotSHIPPED). -
In-app supporttickets: eventuele vragen of problemen worden direct gemeld en behandeld via een ingebouwd chatsysteem (
Ticket&ChatMessage).
Limsolar Flow is gebouwd om schaalbaar, veilig en extreem snel te presteren. Door te kiezen voor een moderne JavaScript/TypeScript-stack is er geen onnodige server-overhead en reageert de interface vlijmscherp.
De uitdaging in de praktijk Sales-medewerkers en partners moeten snel kunnen navigeren tussen calculatoren, offertes en klantinformatie. Pagina-verversingen en trage database-queries verhinderen een snelle verkoop en verhogen de administratieve overhead.
De technische oplossing Next.js fungeert als het hart van de applicatie. De marketing- en blogpagina's profiteren van bliksemsnelle server-side rendering, wat zorgt voor een uitstekende organische vindbaarheid. Zodra een admin of partner inlogt, zorgt React voor een vloeiende app-ervaring zonder laadschermen. Gegevensuitwisseling verloopt direct via beveiligde Next.js Server Actions.
De uitdaging in de praktijk De database moet zowel transactionele gegevens (zoals bestellingen en offertes) als uiterst complexe, dynamische calculator-parameters (dakvlakken, hellingsgraden, obstakels) betrouwbaar kunnen verwerken.
De technische oplossing
Onder de motorkap draait een krachtige PostgreSQL-database. Dankzij Prisma ORM schrijven we uiterst veilige, type-safe queries. Dit is cruciaal om complexe simulatorgegevens flexibel op te slaan in een Json-kolom (energyNeeds), terwijl transactionele data in een strikt relationeel model bewaard blijven.
De uitdaging in de praktijk Systemische e-mails, zoals offertes en facturen, moeten direct aankomen. Bovendien moeten marketingmedewerkers gemakkelijk e-mails kunnen ontwerpen zonder dat er programmeerkennis vereist is.
De technische oplossing Voor alle e-mailcommunicatie is gekozen voor Resend, wat een extreem hoge afleverratio garandeert. De e-mail templates worden beheerd via een geïntegreerde WYSIWYG-editor op basis van Tiptap Starter Kit, waardoor beheerders zonder HTML-kennis prachtige, responsive e-mails kunnen ontwerpen.
De uitdaging in de praktijk Server-side PDF-generatie verbruikt enorme hoeveelheden rekenkracht en RAM op de server, wat de hostingkosten verhoogt en vertragingen veroorzaakt bij gelijktijdig gebruik door meerdere calculators.
De technische oplossing
In plaats van zware pdf-generatoren op de server te draaien, genereert de browser de offerte direct aan de client-zijde. De combinatie van html2canvas en jspdf zet de dynamische HTML-offerte in minder dan een seconde om in een officiële PDF van hoge kwaliteit, klaar om direct verzonden te worden.
Het belangrijkste doel was absolute snelheid. Een offerte toevoegen of een lead bekijken moet direct gebeuren. We bereikten deze ultieme UX door drie cruciale keuzes:
Bij het opstarten van de app haalt een geaggregeerde bootstrap-endpoint alle noodzakelijke stamgegevens in één gecomprimeerde JSON-payload binnen. Bovendien wordt de Zustand-state gecached in IndexedDB, waardoor het dashboard direct geladen is en de server onzichtbaar op de achtergrond gesynchroniseerd wordt.
Als een sales-admin een offerte-item toevoegt of de status van een bestelling wijzigt, reageert de interface onmiddellijk (optimistic update). De API-call wordt op de achtergrond uitgevoerd. Mocht het verzoek falen, dan rolt het systeem de state geruisloos terug.
De openbare onderdelen (zoals de simulator en dienstenpagina's) zijn statisch gecompileerd en presteren daardoor onmiddellijk, terwijl de dynamische acties in de admin direct via type-safe Server Actions verlopen.
De implementatie van client-side pdf-generatie aangedreven door html2pdf.js en jsPDF stelt ons in staat om offertes direct om te zetten in officiële documenten:
- Directe conversie: de offertebuilder genereert een perfect opgemaakte HTML-omgeving op basis van de ingevulde parameters en geselecteerde producten.
- Client-side rendering: de client-side engine maakt een momentopname van deze HTML en genereert binnen enkele milliseconden een vector-PDF, die direct via een Server Action naar Resend wordt gestuurd voor verzending.
Gegevensbeveiliging en betrouwbaarheid zijn van levensbelang bij het verwerken van zakelijke bestellingen en persoonsgegevens.
Elke interactie in de admin-omgeving verloopt via strikt beveiligde Server Actions. We gebruiken Zod om invoervelden realtime te valideren, wat injectie-aanvallen en corrupte data onmogelijk maakt.
We gebruiken PostgreSQL RLS-policies om ervoor te zorgen dat B2B-partners en installateurs uitsluitend toegang hebben tot hun eigen orders, offertes en kortingen, terwijl de admin-omgeving hermetisch afgeschermd blijft.
Elke e-mail die via Resend verzonden of ontvangen wordt, wordt automatisch gelogd in de database (EmailMessage). Dit creëert een waterdicht communicatiedossier per lead, direct raadpleegbaar door het salesteam.
De CRM co-pilot draait via een beveiligde API-route:
De AI is uitgerust met Tool Calling via de OpenAI SDK. Dit stelt de co-pilot in staat om ingewikkelde JSON-parametergegevens (energyNeeds) van leads direct te interpreteren en om te zetten in concrete acties:
- Automatische samenvatting: de AI vat de simulatorgegevens samen en stelt direct de ideale omvormer- en paneel-combinatie voor.
- Gepersonaliseerde e-mail drafts: de co-pilot stelt direct een gepersonaliseerde e-mail op voor de klant, klaar voor verzending door de sales-medewerker.
De database is ontworpen rondom een relationeel en uiterst schaalbaar model:
Dankzij Prisma en PostgreSQL blijven transactionele data en flexibele lead-parameters perfect in balans, wat resulteert in een solide, performante database.
Is het de moeite waard om een op maat gemaakte cloud-architectuur te bouwen voor je marketing, leads en offertes? Voor veel installateurs is een standaard ERP-systeem voldoende.
Maar voor Limsolar heeft deze op maat gemaakte stack het verschil gemaakt tussen administratieve chaos en digitale perfectie. De combinatie van Next.js voor een vlijmscherpe interface, Prisma en PostgreSQL voor flexibele data-opslag, en Resend voor onfeilbare communicatie bewijst dat marketing en verkoop perfect in één cloud-architectuur kunnen samensmelten.
Het resultaat spreekt voor zich: van een onoverzichtelijke wirwar van telefoontjes en handmatige PDF's naar een gestructureerd, digitaal offerteproces in minder dan 10 minuten. Limsolar is klaar voor de toekomst van duurzame energie.
Klaar om je lead- en offerteprocessen te automatiseren?
Neem contact met ons op en ontdek hoe we een naadloze cloud-omgeving bouwen voor jouw onderneming.
Kennismaken?
Over de auteur
Kutlu Taskin Tuna deelt regelmatig zijn ervaringen over software architectuur, e-commerce-automatisering en het bouwen van performante platformen. Verder praten?



