Salesforce ↔ Finance (Exact/Stripe): van deal naar dagboek

Een deal is gewonnen in Salesforce, maar finance tikt het bedrag handmatig over in Exact. De factuur staat open in Exact terwijl Stripe de betaling al verwerkte. Zo lekt er tijd weg en discussieert iedereen over welke data klopt. Een goede Salesforce finance integratie met Exact lost dat op — mits je het klein en strak houdt.

Een deal is gewonnen in Salesforce, maar finance tikt het bedrag daarna handmatig over in Exact. De factuur staat open in Exact terwijl Stripe de betaling allang verwerkte. Sales weet niet of een klant openstaande facturen heeft, finance weet niet welke deal bij welke factuur hoort, en elke maandafsluiting kost een dag aan handmatig matchen. Herken je dit? Dan groeit je volume sneller dan je administratie aankan.

Een Salesforce finance integratie met Exact Online — en eventueel Stripe — zorgt dat een gewonnen opportunity, order, factuur en betaalstatus automatisch doorstromen van je CRM naar je boekhouding. Voor bedrijven met 25–50 FTE is de kern niet “alles koppelen”, maar juist: een minimaal aantal sync-punten, duidelijke master data en betrouwbare automatische synchronisatie tussen sales, facturatie en boekhouding.

Dit artikel behandelt de order-to-cash flow, master data, API-verbindingen, webhooks, productcatalogus, GL-codes, facturen, betaalinformatie en reconciliation. Buiten scope vallen zware enterprise-setups met complexe multi-entity structuren, volledige ERP-vervanging of extreem maatwerk waarin custom development belangrijker wordt dan beheersbare efficiëntie.

Waarom dit nu belangrijk is

Zolang je een paar deals per maand sluit, is handmatig overtikken te overzien. Maar bij groeiend volume daalt de foutmarge die je je kunt veroorloven. Elke vertraging in facturatie raakt direct je cashflow, je planning en je rapportage.

De pijn zit zelden in één groot technisch gebrek. Het zijn de kleine inconsistenties: een klant die dubbel is aangemaakt, een product zonder GL-code, een factuur die in Stripe betaald is maar in Exact nog openstaat, of een prijswijziging in Salesforce die nooit in Exact landde. Stuk voor stuk klein, samen een blijvende rem op je operatie — en op het vertrouwen in je cijfers.

Exact Online is in Nederland een veelgebruikt platform. Juist daarom is een Exact-koppeling vaak goed te standaardiseren, zolang je vooraf bepaalt hoe klantgegevens, producten, GL-codes, orders en facturen worden beheerd. Het korte antwoord: leg vooraf vast welk systeem leidend is per type data. Dan voorkom je dubbele invoer, foutmeldingen en eindeloze discussie over welke gegevens actueel zijn.

Het stappenplan: van deal naar dagboek

1. Bepaal de leidende momenten en master data

Koppel niet alleen technisch, maar procesmatig. Stel vast welk moment in Salesforce de financiële administratie in Exact triggert — bijvoorbeeld “contract getekend”, “order goedgekeurd”, “dienst geleverd” of “factuur vrijgegeven”.

Kies daarnaast per datadomein één bron van waarheid:

  • Salesforce voor klantdata en verkoopkansen.
  • Exact Online voor boekhouding en factuurstatus.
  • Stripe voor betaalstatus en subscription-events.

Bidirectioneel synchroniseren betekent niet dat elk veld twee kanten op beweegt. Het betekent dat de juiste klant-, deal-, factuur- en betaalstatussen op de juiste plek actueel staan. Mastership dwingt eenrichtingsbesluiten af: een klantadres beheer je in Salesforce, een factuurstatus in Exact.

2. Zet master data op orde

Master data is de stabiele basis waarop de hele koppeling draait: klantdata, producten, artikelen, prijslijsten, btw-codes, betalingsvoorwaarden en GL-codes. Producten bevatten SKU’s, omschrijvingen, prijsmodellen en artikelgroepen. GL-codes bepalen op welke omzet-, korting- of btw-rekening factuurregels uiteindelijk in Exact landen.

Zonder schone master data wordt order-to-cash kwetsbaar:

  • Een product zonder juiste GL-code leidt tot verkeerde boekingen.
  • Een klant zonder btw-nummer of betalingsvoorwaarden leidt tot foutieve facturen.
  • Een niet-gesynchroniseerde prijswijziging zorgt voor verschil tussen salesafspraak en administratie.

Maak een mappingdocument waarin elk veld precies één keer wordt beheerd. Zo voorkom je dubbele waarheid tussen Salesforce en Exact.

3. Bepaal welke data daadwerkelijk synchroniseert

Te veel sync-punten maken de koppeling kwetsbaar; te weinig veroorzaken handwerk en ontbrekende gegevens. Voor 25–50 FTE is het advies om je te beperken tot een vaste set:

  • Klantgegevens — bij het aanmaken van een Account in Salesforce ontstaat automatisch een debiteur in Exact (bedrijfsnaam, adres, btw-nummer, contactpersonen, betalingsvoorwaarden, valuta). Factuurstatussen stromen terug naar Salesforce, zodat sales ziet of een klant openstaande facturen of betalingsproblemen heeft.
  • Producten en prijslijsten — gekoppeld aan artikelgroepen en GL-codes, zodat de koppeling niet alleen factureert maar ook correct boekt.
  • Order- en factuurstatussen — gewonnen opportunity, order aangemaakt, factuur verzonden, open, gedeeltelijk betaald, betaald of gecrediteerd.
  • Betaalinformatie — vanuit Stripe via events zoals invoice.paid, invoice.payment_failed en customer.subscription.updated.

4. Configureer API’s en webhooks

Pas als de proceskeuzes staan, kies je de technische route: native API, middleware/connector of maatwerk. Salesforce biedt diverse Exact-connectors via de AppExchange.

Voor de Exact Online API:

  • Registreer de applicatie, stel OAuth 2.0 in en bepaal welke administraties (divisions) gekoppeld worden — API-calls gebruiken een administratie-context.
  • Stel webhooks in voor real-time sync; die verwerken wijzigingen sneller dan periodieke polling. Bouw altijd met retries, wachtrijen en idempotentie, zodat gemiste events geen financiële fouten veroorzaken.
  • Definieer de GL-mapping: koppel producten en diensten aan artikelgroepen, btw-codes en omzetrekeningen. Zonder correcte SKU/GL-mapping weigert Exact facturen of boekt het verkeerd.

Voor Stripe (relevant bij abonnementen, online betalingen of recurring revenue):

  • invoice.paid als primaire trigger voor een succesvolle betaling — past de status aan in Salesforce, start een boeking in Exact of activeert een reconciliation-check.
  • customer.subscription.updated om pauzeren, annuleren, verlengen of prijswijzigingen te volgen. Belangrijk voor revenue recognition, omdat omzet vaak over een serviceperiode wordt verdeeld.
  • invoice.payment_failed en payment_intent.payment_failed om failed payments terug te sturen, zodat sales of customer success weet welke klant aandacht nodig heeft.

5. Implementeer monitoring, logging en foutafhandeling

Leg raw payloads vast, registreer de status per sync-run en toon foutmeldingen in een dashboard met retry-mechanismen. Onderhoudskosten bedragen 10–20% van de implementatiekosten per jaar — goed beheer is geen luxe maar onderdeel van de investering.

Automatiseer daarnaast dagelijkse of wekelijkse reconciliation tussen Stripe, Exact en Salesforce. Gebruik vaste referenties — Salesforce Order ID, Exact Invoice ID, Stripe Customer ID en Stripe Invoice ID — om facturen, betalingen en boekingen te matchen.

6. Test de volledige order-to-cash flow en draag over

Doorloop elke stap van opportunity tot betaling en dagboekboeking. Train sales en finance op de nieuwe processen en wijs eigenaarschap toe voor master data en incidentbeheer. Zorg dat wijzigingen gecontroleerd en gedocumenteerd worden.

Welke integratieroute past bij jou?

De keuze tussen native API, een connector of maatwerk hangt af van kosten, flexibiliteit en beheer.

Criterium Native API Middleware / connector Custom development
Implementatietijd Weken tot maanden Dagen tot weken Het langst
Maandelijkse kosten Laag–middel €50 tot €200+ Hosting, beheer, beveiliging
Beheer Intern team beheert API-wijzigingen Leverancier beheert connector-logica Volledig eigen beheer
Flexibiliteit Hoog, mits je objecten en velden kent Goed, soms beperkt door connector Maximaal
Audit trail Sterk bij goede logging en idempotentie Vaak standaard aanwezig Sterk, mits bewust gebouwd

Implementatiekosten variëren van €2.500 tot €15.000+, afhankelijk van scope, aantal objecten, datakwaliteit, migratie en training. Licentiekosten beginnen rond €25 per gebruiker per maand.

Voor 25–50 FTE is middleware of een connector vaak de beste balans: de koppeling is sneller gemaakt, het handwerk daalt en je houdt voldoende flexibiliteit zonder zwaar maatwerk. Kies native API of custom development vooral wanneer specifieke wensen niet binnen een standaard connector passen. Voor IT/MSP-bedrijven met veel terugkerende contractfacturatie loont een strakke order-to-cash-koppeling vaak het snelst.

Praktijkvoorbeeld: reconciliation die zichzelf bewijst

Een SaaS-scale-up met 35 FTE sloot deals in Salesforce, factureerde via Stripe voor abonnementen en boekte in Exact. De maandafsluiting kostte structureel een dag: finance vergeleek handmatig welke Stripe-betalingen al in Exact stonden en welke Salesforce-deals nog niet gefactureerd waren. Bij elke afsluiting doken dezelfde verschillen op — een betaling die in Stripe voldaan was maar in Exact open stond, of een klant die dubbel was aangemaakt.

De aanpak bleef bewust klein. Eén leidend moment (“order goedgekeurd” in Salesforce) triggerde de factuur in Exact. Drie sync-punten: klantdata vanuit Salesforce, factuurstatus terug vanuit Exact, betaalstatus vanuit Stripe via invoice.paid. Elke factuur kreeg vaste identifiers in alle drie de systemen, en een nachtelijke reconciliation-run signaleerde afwijkingen vóór de afsluiting in plaats van erna. De maandafsluiting ging van een dag handwerk naar een controle van de signaallijst — en de discussie over “welke data klopt” verdween, omdat per datadomein helder was wie de baas was.

Checklist: ben je klaar voor de koppeling?

  • [ ] Je hebt vastgelegd welk moment in Salesforce de financiële administratie in Exact triggert.
  • [ ] Per datadomein is er één bron van waarheid (klant, factuur, betaalstatus).
  • [ ] Er is een mappingdocument waarin elk veld precies één keer wordt beheerd.
  • [ ] Producten en artikelen hebben een unieke SKU, gekoppeld aan de juiste GL-code.
  • [ ] Btw-codes zijn afgestemd op de fiscale regels en worden gesynchroniseerd.
  • [ ] Je koppelt alleen wat nodig is: klantdata, producten, orders/facturen, financiële status en betaalinformatie.
  • [ ] Webhooks draaien met retries, wachtrijen en idempotentie.
  • [ ] Elke factuur heeft vaste identifiers (Salesforce Order ID, Exact Invoice ID, Stripe Invoice ID).
  • [ ] Er is een dashboard met logging, foutmeldingen en retry-mechanismen.
  • [ ] Reconciliation tussen Stripe, Exact en Salesforce is geautomatiseerd.
  • [ ] Voor revenue recognition leg je serviceperiode, prijs, korting, btw en GL-code vast.
  • [ ] Eigenaarschap voor master data en incidentbeheer is toegewezen.

Verder lezen

Een betrouwbare koppeling draait om eenvoud: minimale sync-punten, heldere master data en betrouwbare statusupdates. Salesforce en Exact hoeven niet alles van elkaar te kopiëren — alleen precies de data om van verkoopkans naar factuur, betaling en dagboekboeking te gaan.

Wil je dit toepassen in jouw operatie? Bekijk Microservice Automation of plan een kennismaking.

Lees verder

Meer over dit onderwerp

Klaar om je operatie schaalbaar te maken?

Breng processen, systemen en automatisering op het niveau van je groei.

In een korte sessie brengen we in kaart waar je operatie vertraagt, welke processen te veel handmatig werk vragen en waar automatisering direct waarde kan leveren.