For the Dream OpsommingspuntInzichten
AI en Technologie

Hoe we de marketing, communicatie en offertes van Limsolar in één cloud-architectuur hebben samengebracht

Een diepgaande blik op de techstack achter het geïntegreerde lead- tot offerteplatform van Limsolar, aangedreven door Next.js, Prisma, PostgreSQL, Resend en client-side PDF-generatie.

K

Kutlu Taskin Tuna

15 juni 2026 · 6 min leestijd

Hoe we de marketing, communicatie en offertes van Limsolar in één cloud-architectuur hebben samengebracht
Limsolar Flow, grip op je administratie, versnelling van je verkoop.

In dit artikel bespreken we

de overstap van gefragmenteerde systemen naar één naadloze cloud-omgeving.
hoe we de offertetijd reduceerden tot minder dan 10 minuten met real-time calculators.
de diepe integratie van marketing via gepersonaliseerde e-mailcampagnes en Resend.

Als installateur van zonnepanelen, thuisbatterijen, laadpalen en HVAC-oplossingen verkoopt Limsolar geen standaardpakketten, maar maatwerk en 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 partner 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.

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.

FOR THE DREAM × LIMSOLAR Logo

Van lead tot offerte in 10 minuten?

Ontdek hoe Limsolar Flow de administratieve overhead minimaliseert en de verkoop versnelt.

Bekijk de website
Van lead tot offerte in 10 minuten?


In dit artikel bespreken we

de overstap van gefragmenteerde systemen naar één naadloze cloud-omgeving.
hoe we de offertetijd reduceerden tot minder dan 10 minuten met real-time calculators.
de diepe integratie van marketing via gepersonaliseerde e-mailcampagnes en Resend.


Wat Limsolar Flow effectief oplost

Bij het ontwerpen van de cloud-architectuur keken we samen met 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.

1. Van website-simulator tot instant lead-capturing

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 mail, waarna een sales-collega de technische parameters handmatig moet overtypen.

De technische oplossing

De website-simulator praat rechtstreeks met de PostgreSQL-database. Zodra een lead verzonden wordt, maakt Prisma een Lead-record aan. De technische parameters worden als een gestructureerd Json-object (energyNeeds) opgeslagen. De sales-admin opent de lead in het dashboard en ziet direct de exacte dakinformatie, geschatte jaarlijkse opbrengst en geselecteerde apparatuur. Geen datakoppelingen, geen fouten.


2. De 10-minuten offerte (Real-time Calculator & jsPDF)

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 en het exporteren naar PDF.

De technische oplossing

We bouwden een dynamische offertebuilder direct in het Next.js admin-dashboard. De admin selecteert de producten (die up-to-date zijn in de database). Het systeem berekent automatisch de B2B- of B2C-tarieven inclusief toepasbare btw-percentages. Met één druk op de knop genereert de browser via html2pdf.js en jspdf een prachtig gepersonaliseerd PDF-voorstel en verzendt dit via de Resend-API naar de klant. De status van de lead verandert instant naar QUOTE_SENT.


3. Geïntegreerde marketing & nieuwsbrieven (Resend & Tiptap)

De uitdaging in de praktijk

Om nieuwsbrieven of 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. Via een ingebouwde Rich Text Editor (aangedreven door Tiptap) kan de marketingafdeling direct e-mails opstellen. Er kan gefilterd worden op doelgroep (B2B, B2C of ALL) rechtstreeks op de live productiedata. Resend verstuurt de e-mails betrouwbaar en snel, waarna statistieken direct in het dashboard verschijnen.

Bliksemsnel en volledig responsive design geoptimaliseerd voor mobiel Bliksemsnel en volledig responsive design geoptimaliseerd voor mobiel

Bliksemsnel en volledig responsive design geoptimaliseerd voor mobiel

Doelgerichte digitale campagnes ontworpen voor maximale leadgeneratie Doelgerichte digitale campagnes ontworpen voor maximale leadgeneratie

Doelgerichte digitale campagnes ontworpen voor maximale leadgeneratie

Social proof en klantbeoordelingen geïntegreerd in de marketingflow Social proof en klantbeoordelingen geïntegreerd in de marketingflow

Social proof en klantbeoordelingen geïntegreerd in de marketingflow

Video-advertenties en social assets voor branding en bereik Video-advertenties en social assets voor branding en bereik

Video-advertenties en social assets voor branding en bereik

Swipe om alle schermen te bekijken ➔


4. B2B Client Portaal & Real-time Support

De uitdaging in de praktijk

Professionele installateurs (B2B-klanten) willen snel hun eigen prijzen inclusief discounts kunnen inzien, bestellingen plaatsen en technische fiches downloaden.

De technische oplossing

We hebben een dedicated B2B-omgeving gebouwd met **Next-Auth** en **Prisma**. Installateurs zien gepersonaliseerde netto-prijzen op basis van hun kortingsprofiel (discountendiscountTypevia deUser-tabel). Ze kunnen bestellingen plaatsen, de status realtime volgen (READY_FOR_PICKUP, SHIPPED, etc.) en direct communiceren met support via een ingebouwd chatsysteem (Ticket&ChatMessage`).


De architectuur: een moderne, robuuste cloud-stack

Limsolar Flow is gebouwd om schaalbaar 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.

graph TD
    A["Next.js Frontend (React 19)"] <-->|Prisma ORM| B[PostgreSQL Database]
    A <-->|Next-Auth v5| C[Beveiligde Sessies]
    A <-->|Vercel AI SDK & OpenAI| D[Slimme CRM Co-pilot]
    A -->|Client-side rendering| E["html2pdf.js & jsPDF"]
    A <-->|Tiptap Editor & Resend API| F[E-mailcommunicatie & Campagnes]

1. Next.js 16 & React 19: Single Page performance met Server Actions

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 klant inlogt, zorgt React 19 voor een vloeiende app-ervaring zonder laadschermen. Gegevensuitwisseling verloopt direct via beveiligde Next.js Server Actions.

2. Prisma ORM & PostgreSQL: Flexibele JSONB-schema's

Onder de motorkap draait een krachtige PostgreSQL-database. Dankzij Prisma ORM schrijven we uiterst veilige, type-safe queries. Dit is cruciaal om complexe simulatorgegevens (zoals dakhelling, obstakels en verbruik) flexibel op te slaan in een Json-kolom (energyNeeds), terwijl transactionele data (zoals bestellingen, orders en offertes) in een strikt relationeel model bewaard blijven.

3. Resend & Tiptap: De ultieme e-maileditor en aflevering

Voor alle e-mailcommunicatie—van offertes tot grootschalige nieuwsbrieven—is gekozen voor Resend. Resend garandeert een extreem hoge afleverratio en arriveert in milliseconden. 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.

4. Client-side PDF-generatie (html2pdf.js & jsPDF)

In plaats van zware pdf-generatoren op de server te draaien die kostbare rekenkracht verbruiken, 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.

5. AI-ondersteuning (Vercel AI SDK & OpenAI)

Via @ai-sdk/openai is een CRM co-pilot ingebouwd. De AI helpt sales-medewerkers bij het automatisch samenvatten van klantinformatie, het genereren van e-mailantwoorden en het interpreteren van de complexe JSON-parametergegevens van binnenkomende leads.


Het databasemodel: gestructureerd voor leadconversie

De database is ontworpen rondom een relationele PostgreSQL-structuur om leads efficiënt te converteren naar offertes en bestellingen.

erDiagram
    User ||--o{ Order : places
    User ||--o{ Quote : requests
    User ||--o{ Ticket : opens
    Lead ||--o{ Quote : receives
    Lead ||--o{ EmailMessage : receives
    Quote ||--|{ QuoteItem : contains
    Product ||--o{ QuoteItem : included_in
    Product ||--o{ OrderLine : included_in
    Order ||--|{ OrderLine : contains
    Ticket ||--|{ ChatMessage : contains

    User {
        string id PK
        string email
        string company
        float discount
        enum role
    }
    Lead {
        string id PK
        string firstName
        string lastName
        string email
        json energyNeeds
        enum status
    }
    Quote {
        string id PK
        string quoteNumber
        string leadId FK
        string userId FK
        date validUntil
        enum status
    }
    QuoteItem {
        string id PK
        string quoteId FK
        string productId FK
        string description
        int quantity
        float unitPrice
    }
    Product {
        string id PK
        string name
        string sku
        float price
        enum category
    }
    Campaign {
        string id PK
        string subject
        string content
        string targetAudience
    }

Belangrijkste tabellen en relaties

  • Lead: Het startpunt van de verkoopcyclus. Bevat klantgegevens en de energyNeeds (JSON-data uit de simulator). Gekoppeld aan offertes en e-mailgeschiedenis.
  • Quote & QuoteItem: Slaat de gegenereerde offertes op met een unieke nummering (YYYY/Nummer). De status verloopt van DRAFT naar SENT, ACCEPTED, REJECTED of EXPIRED.
  • User: Beheert zowel interne admins als B2B-klanten. B2B-klanten hebben directe kortingsregels (discount en discountType) die doorrekenen in hun portaal.
  • Campaign: Beheert de nieuwsbrieven en marketingcampagnes. E-mails worden gesegmenteerd en rechtstreeks naar de geselecteerde e-mailadressen gepusht.
  • EmailMessage: Registreert alle inkomende en uitgaande e-mails (inclusief resendId), waardoor het volledige communicatiedossier per lead direct inzichtelijk is.

Kortom

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.

But 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.

FOR THE DREAM

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?
Klaar om je lead- en offerteprocessen te automatiseren?


Over de auteur

Kutlu Taskin Tuna deelt regelmatig zijn ervaringen over software architectuur, e-commerce-automatisering en het bouwen van performante platformen. Verder praten?

Klaar om je legacy te bouwen?

Ontvang elke week scherpe strategieën, praktijkvoorbeelden en nieuwe denkkaders. Direct in je inbox.

Geen spam. Uitschrijven kan altijd.