Vier collega’s bespreken gegevens rond een laptop tijdens een werkoverleg.
GidsUitgebreide gids4 november · 09:0022 min leestijd

CRM-migratie uitvoeren: van veldmapping tot gecontroleerde livegang

Je CRM is gekozen, nu moeten contacten, bedrijven, deals en open taken zonder verlies van relaties over. Leg met deze gids de mapping, proefimport, acceptatie, cutover en terugvalroute vast.

Je hebt al besloten welk CRM je gaat gebruiken. Toch kan na de import een deal aan het verkeerde bedrijf hangen, kan een open terugbeltaak zonder eigenaar achterblijven, of kan een formulier de volgende ochtend opnieuw in het oude systeem schrijven. De problemen beginnen bij aannames over identiteit, relaties, historie en het moment waarop het oude CRM stopt met schrijven.

De bestaande CRM-keuze op teamgrootte, salesproces, budget en bestaande tools helpt je het pakket kiezen. Deze route begint daarna. Je legt vast wat verhuist, wat alleen raadpleegbaar blijft, hoe je velden en eigenaren vertaalt, en wanneer je veilig overschakelt.

Een CRM-migratie is het gecontroleerd verplaatsen van contacten, bedrijven, deals, taken, hun onderlinge relaties en benodigde historie van een bron-CRM naar een doel-CRM. De migratie is pas geslaagd als actieve verkoopkansen en opvolging terug te vinden zijn met de juiste eigenaar, status en koppelingen, en elk verschil is hersteld of bewust buiten de scope gezet.

Wat je nodig hebt

Voor je exporteert, leg je vast wie de systemen beheert, welke gegevens het team na livegang nodig heeft, wie per veld beslist en wat de import tegenhoudt. Een geslaagde upload kan anders toch een onbruikbaar CRM opleveren.

Toegang, eigenaren en een broninventaris

Je hebt exportrechten in het bron-CRM en importrechten in het doel-CRM nodig. Spreek af wie die rechten beheert en laat de doelbeheerder bevestigen welke gebruikers actief zijn. Controleer ook wie per object de export kan maken.

Maak een inventaris van contacten, bedrijven, deals, activiteiten, notities, bestanden, eigen velden, pijplijnen, keuzelijsten, koppelingen en automatische processen. Noteer per onderdeel het aantal records, de huidige eigenaar, de stabiele bron-ID, de relaties met andere objecten en de reden om het te bewaren. Neem formulieren, Outlook of Gmail, telefonie, boekhouding en losse spreadsheets mee. Een export uit het CRM vertelt niet welke andere route ondertussen klantdata blijft schrijven.

Verdeel drie rollen. De salesmanager keurt open opvolging goed, de CRM-beheerder vertaalt velden en gebruikers, en de migratie-eigenaar beheert bestanden, tellingen en herstel. Eén persoon kan meerdere rollen dragen; de vrijgever moet de gevolgen voor sales begrijpen.

Een goedgekeurde veld- en eigenaarstabel

Zet per veld de bronnaam, betekenis, gegevenstype, doelveld, omzetting, verplichte waarde en eigenaar in een mappingtabel. Neem de relaties op een eigen tabblad op. Een contact kan aan een bedrijf hangen, een deal aan een bedrijf en meerdere contactpersonen, en een taak aan een medewerker en een deal. De bedrijfsnaam alleen is geen betrouwbare sleutel.

Maak een eigenaarstabel die iedere oude CRM-gebruiker koppelt aan een bestaande gebruiker in het doel-CRM. Neem ook uitdienstgetreden medewerkers op. Laat de salesmanager per oud account vastleggen wie open werk overneemt. Een taak zonder toegewezen opvolger wordt een uitzondering, geen automatische toewijzing aan de persoon die de import uitvoert.

Een veilige testplek en herstelbare export

Bewaar de ruwe bronexport, de opgeschoonde bestanden, de mappingversie, de foutbestanden en de uiteindelijke bron-doel-ID-lijst in een afgeschermde map. Beperk toegang tot mensen die de gegevens nodig hebben. Gebruik een testomgeving als je CRM die biedt. Als die ontbreekt, moet je vóór de proefimport aantonen hoe je de proefrecords verwijdert of hoe je een herhaalimport met dezelfde bron-ID’s veilig bijwerkt.

Reserveer enkele werkdagen voor inventarisatie, mapping, proefimport en controles. De grootste post is interne tijd. De fictieve casus rekent met 28 uur à €75, dus €2.100; dat is een planningsaanname, geen offerte. Zet licentie-overlap en archiefopslag apart op je begroting en houd de bron beschikbaar tot de hersteltermijn voorbij is.

Klaarzetten voordat je een export maakt
0/8

Concrete stappen: acht stappen

De migratie begint met de data die je hebt en eindigt pas als het team in het nieuwe CRM een echte verkooptaak kan uitvoeren. Teken daarom eerst de route. De proefimport is een controlepoort, geen formele stap die je overslaat zodra een bestand groen is.

1. Leg de uitgangssituatie vast

Maak voor ieder object een export of een controleerbare telling uit het oude CRM. Splits de telling naar actief, gesloten, gearchiveerd en verwijderd, voor zover die statussen beschikbaar zijn. Bewaar per object de exportdatum, kolommen, bron-ID’s en het aantal rijen. Gebruik één rij per record en één bestand per object als het bronpakket relaties anders niet betrouwbaar kan exporteren.

Pipedrive exporteert standaard-, eigen en systeemvelden met eigenaars en gekoppelde records. Via Tools and apps > Export data kies je een type; activiteiten, notities en bestanden exporteer je apart. HubSpot neemt in een recordexport standaard alleen de eigenschappen en associaties uit de huidige weergave mee, met maximaal 1.000 gekoppelde record-ID’s per associatiekolom. Open in Customize zowel All properties and associations on records als All associated records onder associaties; die laatste optie werkt alleen voor CSV. Zo exporteer je alle associaties in plaats van alleen de weergave en de standaardlimiet.

Exporteer activiteiten ook langs hun eigen route. Voor HubSpot-taken ga je naar CRM > Tasks, open je de juiste weergave en exporteer je die taakweergave; het bestand bevat taakvelden, associatienamen en gekoppelde ID’s. HubSpot noemt voor andere salesactiviteiten zoals calls en meetings de Custom Report Builder of de Engagements API. Controleer per bestand of de gekozen weergave de benodigde periode, status en eigenaar bevat. Als een AI-verslag van een verkoopgesprek als CRM-notitie met actiepunten en vervolgtaak wordt opgeslagen, neem dan ook die notitie, taak en hun relaties in de scope op.

Maak vóór opschoning een kopie die je niet meer wijzigt. Verwerk in een werkbestand. Hernoem nooit de enige bronkolom met het record-ID en overschrijf de ruwe export niet met opgeschoonde waarden. Als later een deal verkeerd gekoppeld blijkt, heb je de oorspronkelijke sleutel nodig om terug te vinden waar de relatie vandaan kwam.

Klaar als je per object een bronbestand, eigenaar, aantal, exportdatum en stabiele ID hebt. Ontbreekt een ID of een bestand met open taken, dan is het overzicht nog niet compleet.

2. Bepaal per gegeven wat verhuist

De verleiding is om alles mee te nemen. Dat maakt je doel-CRM soms duurder en moeilijker te gebruiken, terwijl ongebruikte historie vaak niet helpt bij de eerstvolgende verkoopactie. Deel ieder object of veld daarom in als actief nodig, historisch nodig, alleen archiveren, eerst herstellen of niet overzetten. Leg per keuze de zakelijke reden en de beslisser vast.

Contacten, bedrijven, open deals en open taken vallen meestal in actief nodig. Gesloten deals kunnen bijvoorbeeld nodig zijn voor rapportage, maar hoeven niet in dezelfde werkweergave als de actieve pijplijn. Voltooide taken, oude e-mailnotities en bestanden kunnen alleen-lezen in een beveiligd archief blijven als de huidige medewerkers ze zelden nodig hebben en hun bewaarbehoefte dat toelaat. Controleer welke historie medewerkers werkelijk nodig hebben voordat je iets uitsluit.

Workflows, e-mailreeksen, rapporten en koppelingen verhuizen niet automatisch mee met records. Maak een tweede inventaris van wat je opnieuw inricht en wat bewust stopt. Zet nieuwe automatische acties in het doel-CRM uit tot de data is goedgekeurd. Anders kan een proefimport direct verkoopmails versturen of taken aanmaken terwijl je nog test.

Klaar als ieder bronobject een van de vijf keuzes heeft, een eigenaar die de keuze heeft goedgekeurd en een bestemming. Een keuze zonder vastgelegde bestemming schuift het probleem alleen door.

3. Vertaal velden, relaties en eigenaren

Maak tabbladen voor bedrijven, contacten, deals en taken. Leg per relatie de bron-ID en doel-ID vast in een eigen doelveld of koppelregister. E-mailadressen helpen een contact te vinden, maar een gedeeld info-adres identificeert geen individu en kan bij meerdere organisaties horen.

Neem in je mapping bronobject en bron-ID, bronveld, doelveld, omzetting, verplichte waarde, foutgedrag en goedkeurder op. Vertaal bijvoorbeeld de oude status Offerte uit naar Voorstel verstuurd. Leg die regel voor iedere batch vast. Onbekende waarden gaan naar een uitzonderingsbestand, niet stilzwijgend naar de eerste pijplijnfase.

Maak relatiebestanden met ID’s. Importeer organisaties voordat je contacten en deals koppelt wanneer het doel-CRM die volgorde vereist. Salesforce kan gerelateerde records via externe ID’s koppelen, maar een niet-unieke naam kan meerdere matches opleveren. De importer kan dan de eerste naamsovereenkomst kiezen als je dat toestaat; een lookup kan ook als fout eindigen bij meerdere matches. Gebruik daarom een unieke doel-ID of laat ambiguïteit een fout opleveren.

Vertaal eigenaars expliciet. HubSpot laat je een importkolom met de naam of het e-mailadres van een doelgebruiker aan de eigenaar koppelen; controleer per record dat de gekozen eigenaar ook werkelijk de bedoelde gebruiker is. Pipedrive heeft een eigenaarveld dat je per object kunt mappen. In Salesforce map je de eigenaarskolom OwnerId naar de Salesforce User ID (User.Id) van de doelgebruiker en leg je die ID vast in de eigenaarstabel. De Salesforce User-objectreferentie beschrijft het gebruikersobject. Namen of e-mailadressen zijn geen stabiele unieke sleutel: bij dubbele waarden of een inactieve gebruiker kan de eigenaar verkeerd worden gezet of kan de import mislukken. Controleer vóór de import dat elke User ID in de doelorganisatie bestaat en dat een inactieve gebruiker bewust naar een actieve opvolger is vertaald. Vergelijk na import de OwnerId van ieder open record met de mapping en controleer de Data Loader-succes- en foutbestanden. Een ontbrekende of afgewezen eigenaar blijft een foutregel en blokkeert vrijgave; wijs het record niet stilzwijgend toe aan de importgebruiker.

Open opvolging vraagt een strengere controle dan oude historie. Iedere taak moet eigenaar, vervaldatum, status en relatie behouden. De CRM-overdracht na een gesprek met concrete actie, eigenaar en datum gebruikt diezelfde voorwaarden. Ontbreekt er één, zet de taak op de uitzonderingenlijst.

Klaar als je op iedere bronrij kunt aanwijzen welk doelrecord of welke uitzondering erbij hoort. Een mapping die alleen Bedrijfsnaam naar Bedrijfsnaam zet, bewaart geen relatie.

4. Ontdubbel zonder echte klanten samen te voegen

Maak duplicaatregels voordat je records samenvoegt. Gebruik voor terugvinden eerst de bron-ID. Gebruik voor mogelijke persoonsmatches een combinatie van genormaliseerd e-mailadres, telefoonnummer, naam en bedrijfsrelatie. Voor organisaties gebruik je bijvoorbeeld domein, adres en KvK-nummer wanneer dat in beide systemen betrouwbaar is. Maak een lijst met kandidaatmatches en laat de data-eigenaar de onzekere gevallen goedkeuren.

Een gelijk e-mailadres betekent niet altijd dezelfde persoon. info@bedrijf.nl kan op een gedeelde mailbox wijzen. Twee contactpersonen kunnen hetzelfde zakelijke nummer gebruiken. Dezelfde bedrijfsnaam kan een vestiging, holding of los bedrijf aanduiden. Een te losse samenvoeging verliest informatie; een te strenge regel laat dubbelingen staan. Bewaar daarom zowel de oorspronkelijke bron-ID’s als de beslissing over iedere samenvoeging.

Test echte randgevallen. Pipedrive kan een persoon samenvoegen zodra organisatie, telefoon óf e-mail overeenkomt; test die matchregels op gedeelde mailboxen en gelijke namen. Deals worden daar niet op titel ontdubbeld. Neem dus een gedeelde mailbox en twee gelijknamige deals in je proef op.

Klaar als ieder samenvoegbesluit is vastgelegd en onzekere matches door een mens worden beoordeeld. Samenvoegen op alleen bedrijfsnaam is een stopcriterium.

5. Richt de doelomgeving in en voer een proefimport uit

Maak de doelvelden, keuzelijsten, pijplijnfasen, gebruikers en relatie-instellingen aan voordat je records importeert. Houd automatisch process, webformulieren en synchronisaties nog uit. Geef je proefbestand een herkenbare batch-ID en importeer eerst een afgebakende set met contacten, bedrijven, deals en taken. Neem een ongeldige datum, een lege eigenaar, een onbekende status, een dubbel contact en een deal met twee contactpersonen op.

Kies een proefset die de moeilijke gevallen bevat, niet alleen de eerste rijen uit je spreadsheet. De CRM-migratieproef met enkele honderden records, correcte eigenaren, datums en relaties die je in de bron en het doel opent laat zien waarom een geslaagde importmelding niet genoeg is. Als het totaal kleiner is dan je proefset, test je alle records in een afgescheiden omgeving.

HubSpot kan meerdere objecten en activiteiten via één of meerdere bestanden importeren. Stel het datumformaat en de tijdzone precies in; Bestaande taken, afspraken en notities worden bij die import niet bijgewerkt. Pipedrive laat je velden en relaties in een voorbeeldweergave controleren. De vergelijking hieronder geeft de actuele importlimieten en laat zien wanneer je voor Salesforce de Data Import Wizard of Data Loader gebruikt.

Verwijder de proefrecords niet op gevoel. Als je ze in het doel-CRM hebt geladen, gebruik dan de import-ID, de proefbatch en de bron-ID’s om uitsluitend die rijen te verwijderen. Als de testimport geen betrouwbare update- of verwijderroute heeft, pauzeer je. De definitieve import moet herhaalbaar zijn zonder proefrecords dubbel te maken.

Klaar als ieder object een proefrecord heeft aangemaakt of bijgewerkt zoals bedoeld, iedere fout in het foutbestand verklaarbaar is en een tweede run geen tweede set taken of deals oplevert.

6. Vergelijk bron en doel op tellingen én records

Reconcileer aantallen per object en per relevante status. Vergelijk contacten, bedrijven, open en gesloten deals, open en afgeronde taken, notities en bestanden apart. Leg de verwachte uitkomst naast de werkelijke: aangemaakt, bijgewerkt, bewust samengevoegd, naar archief, uitzondering of uitgesloten. De som moet per bronbestand sluiten. “De meeste rijen zijn aangekomen” is geen controle.

Lees daarna records terug vanuit het doel-CRM. Controleer of een contact bij het bedoelde bedrijf staat, of de deal in de juiste fase staat, of bedrag en sluitdatum gelijk zijn, en of een open taak de juiste eigenaar, vervaldatum en relatie heeft. Controleer alle actieve deals en alle open taken. Voor overige records controleer je minimaal 200 verspreide rijen bij een migratie van duizenden records, of alle rijen als het totaal lager is. Neem iedere afwijkende veldwaarde en elk type uitzondering in die steekproef op.

Sla per vergelijking de bron-ID, doel-ID, uitkomst, mappingversie, controleur en hersteldatum op. HubSpot-imports geven geen garantie dat een bestaande activiteit wordt bijgewerkt; Pipedrive toont toegevoegde, bijgewerkte, samengevoegde en overgeslagen rijen; Salesforce Data Loader schrijft succes- en foutbestanden. Lees de doelrecords zelf terug. Een groen overzicht is een importresultaat, geen bewijs dat de verkoopgeschiedenis klopt.

Klaar als alle verschillen zijn hersteld of als uitzondering met eigenaar, reden en besluit zijn goedgekeurd. Voor actieve deals en taken accepteer je nul onverklaarde verschillen.

7. Bevries de bron en voer de definitieve import uit

Plan het moment rond je verkoopritme, niet alleen rond een weekend. Spreek start, eind, eigenaar en stopbevoegdheid af. Meld vooraf wanneer schrijven stopt, waar vragen heen gaan en wie bij een blokkade beslist.

Op het afgesproken tijdstip zet je de bron op alleen-lezen, pauzeer je imports en formulieren die erheen schrijven, en noteer je de laatste wijzigingstijd. Maak een definitieve export en verwerk alleen de wijzigingen sinds de proefimport. Gebruik dezelfde bron-ID’s en mappingversie. Houd het doel-CRM gesloten voor gebruikers tot de importvolgorde, relaties en tellingen opnieuw zijn gecontroleerd.

Importeer bedrijven vóór contacten, daarna deals en open taken, tenzij je doel-CRM een andere volgorde vereist. Koppel op ID of gecontroleerde sleutel. Neem afgeronde activiteiten, notities en bestanden alleen mee als ze volgens scope in het doel horen; in Pipedrive komen ze uit aparte exportbestanden.

Leg elke koppeling vast die na de migratie kan schrijven. Outlook, formulieren, telefonie, boekhouding of een automatiseringsplatform kunnen het oude CRM blijven vullen. De Outlook-CRM-koppeling met gekozen richting en matchsleutel gaat over voortdurende synchronisatie, niet over oude historie. Schakel die verbinding pas in na acceptatie van het doel. Controleer je integratieoverzicht en de HubSpot-integratie op de routes die gegevens blijven uitwisselen.

Houd oude accounts, API-sleutels en archieven bereikbaar. Lees een contact, deal en taak terug en voer die drie gebruikersroutes uit. Een dubbele write, verkeerde relatie of taak op de importgebruiker blokkeert livegang.

Klaar als de bron geen nieuwe writes meer ontvangt, de doelimport per bestand is afgesloten en de belangrijkste gebruikersroutes met echte records goed werken.

8. Geef vrij, houd de terugvalroute open en kijk terug

Schrijf de vrijgavegrens vóór cutover op: aantallen sluiten, elke open deal heeft de juiste fase, eigenaar en bedrijfsrelatie, en elke open taak heeft een uitvoerbare datum en eigenaar. Een verplichte waarde mag niet stilzwijgend leeg blijven. Een oude notitie kan met akkoord in het archief blijven; een taak voor morgen zonder eigenaar blokkeert.

Leg vóór vrijgave de terugvalroute vast en oefen hem met een kopie van de bron. Herhaal de proef voor elk CRM dat je als doel kiest. Maak in de gekozen doelomgeving een proefrecord met een eigenaar, een bedrijfs- en dealrelatie en een taak of andere activiteit. Wijzig die drie onderdelen in het doel. Exporteer ze terug en herstel ze in de kopie van het bron-CRM. Gebruik voor bestaande records uitsluitend de bron-ID uit het koppelregister; leg voor records die na cutover nieuw in het doel ontstaan meteen een unieke terugvalsleutel vast. Vertaal doel-eigenaren terug met de eigenaarstabel en relaties met de bron-doel-ID’s, nooit op naam of e-mailadres. Maak voor een nieuw doelrecord zonder bronrecord één nieuw record via de aanmaakroute van het bron-CRM, lees daarna de gegenereerde bron-ID terug in het register en zoek vóór elke retry eerst op de terugvalsleutel om dubbelen na een gedeeltelijke run te voorkomen.

Gebruik per doel-CRM de exportroute die je in de proef hebt gevalideerd. In HubSpot exporteer je records met All properties and associations on records en All associated records; taken haal je op via CRM > Tasks > weergave > Export, en calls, meetings en andere verkoopactiviteiten via de Custom Report Builder of de Engagements API. In Pipedrive open je Tools and apps > Export data en exporteer je Activities en zo nodig Notes apart. In Salesforce maak je in Data Loader een Export-taak per object en neem je record-ID, eigenaar en relatievelden mee; de exportfunctie laat object, velden, filters en query kiezen. Schrijf de delta terug naar een geïsoleerde kopie van de bron via de bestaande sleutel: HubSpot-record-ID, Pipedrive System ID, of Salesforce-ID/een unieke externe ID. Controleer de teruggelezen eigenaar, relatie, taakstatus, datum en activiteit-ID.

Stop de vrijgave of terugval zodra één open deal of taak ontbreekt, de eigenaar niet overeenkomt, een relatie meer dan één match heeft, een activiteit geen eenduidige terugvalsleutel heeft of een verplichte importregel een fout krijgt. Bevries dan het doel en houd de bron alleen-lezen. Zet foutregels met bron-ID, doel-ID en foutreden in de uitzonderingenlijst, herstel eerst de mapping in de kopie en herhaal dezelfde proef met dezelfde sleutels. Hervat het oude systeem pas nadat de teruggelezen tellingen en relaties sluiten; een gedeeltelijk herstelde bron maakt twee concurrerende klantgeschiedenissen.

Een proef kan externe gevolgen niet ongedaan maken: al verzonden e-mails of uitgevoerde telefoongesprekken blijven gebeurd, en workflow-uitvoering of auditgeschiedenis is niet automatisch terug te schrijven. HubSpot-imports werken bestaande taken, afspraken en notities niet bij; zonder een bewezen sleutelroute kan herstel daarom een dubbele activiteit maken. Archiveer zulke historie of behandel de afwijking handmatig in een goedgekeurde uitzonderingenlijst. Houd brongegevens vijf werkdagen alleen-lezen voor terugvalbesluiten en spreek apart af hoelang het archief beschikbaar blijft; dit zijn projecttermijnen, geen platformgaranties. Een geoefende rollback met benoemde stopcriteria maakt vooraf duidelijk wie beslist en welke gegevens werkelijk terug kunnen.

Schakel koppelingen na vrijgave één voor één in en controleer nieuwe contacten, activiteiten en taken. Een Calendly-boeking kan een HubSpot-contact aanmaken, een activiteit vastleggen en opvolgmails en herinneringen plannen; voer daarom na omschakeling één nieuwe boeking door en lees de contact- en taakrelaties terug.

Klaar als de beslisser de reconciliatie heeft goedgekeurd, het team in het doel-CRM werkt en het oude systeem alleen-lezen is volgens de afgesproken termijn. Verwijder oude toegang pas nadat de herstel- en archiefkeuze is vastgelegd.

Valkuilen

De meeste problemen laten zich op een werkend contactrecord niet zien. Ze verschijnen bij de recordrelatie, een afwijkende status of de eerste wijziging nadat het oude systeem is bevroren.

De deal staat in het doel, maar bij het verkeerde bedrijf

Dit gebeurt wanneer de import op bedrijfsnaam koppelt. Een holding en vestiging kunnen dezelfde naam voeren, en een naam kan onderweg anders gespeld zijn. Gebruik een bron-ID of unieke doel-ID voor de relatie. Laat een dubbele match als fout eindigen, niet als automatische keuze van de eerste naam.

Alle taken lijken aanwezig, maar de eigenaar is de importgebruiker

Een oude gebruiker bestaat niet altijd in het nieuwe CRM. Soms wordt een lege owner stilzwijgend aangevuld met de beheerder die de import startte. Maak vóór de import de eigenaarstabel en importeer de doelgebruiker via het formaat dat het CRM accepteert. Vergelijk daarna alle open taken per eigenaar, niet alleen het totaalaantal.

De deduplicatie maakt één contact van twee organisaties

Een gedeeld telefoonnummer of algemeen e-mailadres is geen bewijs dat twee rijen dezelfde persoon voorstellen. Pipedrive kan een persoon als dubbel herkennen zodra één van organisatie, telefoon of e-mail overeenkomt. Houd een lijst met kandidaatmatches, controleer organisatie en naam en laat een mens beslissen over gedeelde mailboxen en vestigingen.

Een afgeronde activiteit wordt een open taak

Historische activiteiten en toekomstige acties zijn verschillende records met een ander doel. Een afgeronde call hoort niet opnieuw in de actielijst; een taak zonder vervaldatum is geen uitvoerbare opvolging. Splits ze in exports en imports, controleer status en vervaldatum, en laat onduidelijke regels in een lijst met uitzonderingen.

De proef lukt, de eindimport maakt duplicaten

De testbatch is soms al in productie geïmporteerd. Een tweede import zonder bron-ID kan dan elk proefrecord opnieuw aanmaken. Test de herhaalroute vóór je begint: update op een unieke sleutel, verwijder de proefbatch aantoonbaar of kies een afgescheiden omgeving. Zet een import die geen van deze drie routes biedt niet op productie.

De koppeling blijft naar het oude CRM schrijven

Een webformulier of agenda-integratie kan na cutover nog een contact in de bron maken. Dan lijkt het doel eerst goed en ontstaan er later twee klantdossiers. Zet iedere schrijvende route op de migratiekalender, verander het doel per koppeling en controleer een nieuw testrecord. Laat oude credentials niet ongemerkt actief.

Beslis-kader: welke migratieroute past?

De route hangt af van relatie- en uitzonderingslogica, niet alleen van het CRM-merk. Gebruik 5.000 en 50.000 records als aanpasbare voorbeeldgrenzen voor planning, niet als benchmark of leverancierslimiet. Ze zijn geen uitkomst van een marktonderzoek: stel ze af op hoeveel relaties, uitzonderingen en herhaalruns je team aantoonbaar kan controleren. Schuif eerder op naar een tool met meer controle als je veel objecttypen, meer-op-meerrelaties, activiteiten, delta-imports of meerdere schrijvers hebt. Een eenvoudige batch van 20.000 records kan beheersbaarder zijn dan 2.000 records met veel onzekere koppelingen. De Salesforce Data Import Wizard heeft daarnaast een afzonderlijke, gedocumenteerde limiet van 50.000 records per keer; dat is een productlimiet, geen algemene routegrens.

Kies Standaard CSV-import als je rond of onder de voorbeeldgrens van 5.000 records blijft, hooguit vier standaardobjecten met eenvoudige relaties hebt en de mapping met bron-ID’s kunt herhalen. Verlaag die grens als je meer-op-meerrelaties, onduidelijke eigenaars, activiteitshistorie of veel uitzonderingen hebt. De eigen data-eigenaar moet elke open deal en taak kunnen controleren.

Kies Migratietool of begeleide batch als je bijvoorbeeld tussen 5.000 en 50.000 records verwerkt, of als een standaardimport je relaties niet betrouwbaar herhaalt. Eis een bron-doel-ID-tabel, foutenbestand, idempotente herhaalrun en een demonstratie met jouw dubbele contact en jouw open taak. De voorbeeldband is alleen bruikbaar als de tool jouw objecten en uitzonderingen aantoonbaar aankan. Een mooie voortgangsbalk is geen migratiebewijs.

Kies Maatwerkimport via API als je boven je gekozen voorbeeldgrens uitkomt, of als eigen objecten, veel uitzonderingsregels, complexe relaties, meerdere schrijvende systemen of automatische delta’s een aantoonbaar herhaalbare route vragen. Een batch onder 50.000 kan dus ook maatwerk nodig hebben. De API-route moet elk object met een stabiele sleutel kunnen aanmaken of bijwerken, relaties opnieuw kunnen leggen en fouten naar een herstelwachtrij schrijven. Een API zonder koppelregister versnelt alleen het verlies van overzicht.

Kies Eerst datakwaliteit herstellen als het aandeel records zonder betrouwbare sleutel of eigenaar boven jouw ingestelde grens komt; 1% is hooguit een aanpasbaar voorbeeld om de controle te starten, geen marktbenchmark. Stel de grens ook af op het absolute aantal uitzonderingen en op wie ze kan beoordelen. Voor actieve deals en taken geldt een strengere regel: nul onverklaarde fouten in eigenaar, datum, status of relatie, ook als dat minder dan 1% van het totaal is. Archiveer oude onzekerheden pas na expliciet besluit.

Welke route je ook kiest, houd dezelfde acceptatiegrens aan: iedere open deal en taak verantwoord, nul onverklaarde ontbrekende relaties in de actieve pijplijn en iedere merge of uitsluiting in het koppelregister. Een oude notitie kan soms in het archief blijven. Een verkooptaak zonder eigenaar niet.

Kies een route voor jouw CRM-migratie

Blijf je rond de voorbeeldgrens van 5.000 records, met hooguit vier standaardobjecten en eenvoudige relaties?

Uitgewerkt voorbeeld

Noordlicht Advies BV is fictief. Het team verhuist van Pipedrive naar HubSpot. Vier verkopers werken dagelijks in het CRM; een CRM-beheerder voert de import uit en de salesmanager geeft de actieve taken vrij. Op D0 gaat de bron om 16.00 uur op alleen-lezen. HubSpot wordt op de eerstvolgende werkdag (D+1) om 08.00 uur het enige CRM waarin nieuwe verkoopacties worden vastgelegd.

De ruwe export bevat 1.248 personen, 312 organisaties en 146 deals. Daarvan zijn 41 deals open en 105 gesloten. De export bevat ook 94 open activiteiten, 622 afgeronde activiteiten en 136 notities. Pipedrive exporteert de activiteiten, notities en bestanden apart. Het team besluit dat open activiteiten in HubSpot taken worden, terwijl afgeronde activiteiten en notities in een afgeschermd alleen-lezen-archief blijven. Er zijn geen bijlagen nodig in de nieuwe CRM.

De eigenaarstabel koppelt de vier Pipedrive-gebruikers aan de vier actieve HubSpot-eigenaren via hun zakelijke e-mailadres. Vóór import maakt de beheerder de 4 HubSpot-gebruikers aan en controleert hij die adressen. De mapping bevat bron-ID, doelobject, doelveld, statusvertaling, datumformaat, eigenaar en de regel voor ontbrekende waarden. De velden Bedrijfsnaam, Contact-ID of Dealnaam worden niet als enige relatie- of updatekey gebruikt.

Bij deduplicatie komen 11 mogelijke dubbele contactparen naar voren. De salesmanager bevestigt acht paren als dezelfde persoon. Acht oude contacten worden samengevoegd met de bestaande bron-ID’s in het koppelregister, zodat 1.248 broncontacten uitkomen op 1.240 unieke HubSpot-contacten. Drie andere paren blijven apart: de adressen zijn algemene mailboxen die bij meerdere organisaties horen. Het CRM voegt die dus niet automatisch samen.

De proefimport bevat 200 bronrijen uit alle relevante objecten en randgevallen. Het team controleert naam, bedrijfskoppeling, fase, waarde, eigenaar, taakdatum en status terug in HubSpot. Daarna vergelijkt de salesmanager alle 41 open deals en alle 94 open activiteiten. Bij één activiteit is geen betrouwbare vervaldatum beschikbaar. Die taak wordt niet op een willekeurige maandag gezet. Hij blijft als één uitzondering in een werkbestand met de bron-ID en wordt pas geïmporteerd als de salesmanager een datum bevestigt.

De definitieve telling sluit als volgt: 1.240 unieke contacten, 312 organisaties, 146 deals en 93 importeerbare open taken in HubSpot. Eén open taak blijft in de uitzonderingenlijst totdat de datum bekend is. De 622 afgeronde activiteiten en 136 notities blijven in het alleen-lezen-archief. Samen zijn dat 2.550 uiteindelijke records en uitzonderingen: 1.240 + 312 + 146 + 93 + 1 + 622 + 136. De ruwe bron bevatte 2.558 rijen: 1.248 + 312 + 146 + 94 + 622 + 136. Het verschil van acht is precies het gevolg van de acht bevestigde contactdubbelen. Geen rij verdwijnt zonder bestemming.

Het projectteam besteedt volgens de eigen planning 8 uur aan scope en controle, 6 uur aan CRM-configuratie, 10 uur aan import en reconciliatie, en 4 uur aan beoordeling door sales. Dat is 28 interne uren. Bij een interne rekenprijs van €75 per uur is de planningssom €2.100, exclusief bestaande CRM-licenties, eventuele dubbele licentiemaand en archiefopslag. De €75 is een aanname voor deze casus, geen marktprijs of leveranciersofferte.

Na de laatste read-back zet de salesmanager de doelrecords vrij. Formulieren en Outlook worden naar HubSpot omgezet en per koppeling met één nieuw testrecord gecontroleerd. Het oude Pipedrive blijft gedurende vijf werkdagen alleen-lezen voor terugvalbesluiten; het archief blijft 30 dagen beschikbaar volgens het projectbesluit. Deze twee termijnen zijn keuzes van dit voorbeeld, geen productgaranties.

Vergelijkingstabel

Deze productmogelijkheden zijn gecontroleerd op 4 november 2026. De importtools horen bij een CRM dat al gekozen is; de vergelijking gaat over de overdracht, niet over pakketprijzen.

RouteObjecten en omvangEigenaar en relatiesActiviteiten en historieHerhaalbaarheid en breekpunt
HubSpot geavanceerde importMeerdere standaardobjecten en activiteiten kunnen in één of meer bestanden worden geïmporteerd. De importdocumentatie is bijgewerkt op 7 oktober 2026.Koppel een bron-eigenaar aan een doelgebruiker; velden en relaties moeten vooraf bestaan.Standaard bevat de recordexport alleen de huidige weergave en maximaal 1.000 gekoppelde ID’s per associatiekolom. Kies All properties and associations on records en All associated records (alleen CSV) om alle relaties mee te nemen. Exporteer taken via CRM > Tasks > weergave > Export; andere verkoopactiviteiten via Custom Report Builder of Engagements API. Bestaande taken, afspraken en notities worden niet bijgewerkt.Bruikbaar voor standaardobjecten en een gecontroleerde import. Bewaar bron- en doel-ID’s voor herhaalruns; herstel activiteiten niet zonder bewezen matchsleutel.
Pipedrive spreadsheetimportDe spreadsheetimport accepteert CSV, XLS en XLSX; de op 19 oktober 2026 bijgewerkte instructie noemt maximaal 200.000 rijen en 50 MB per bestand. Dezelfde importinstructie beschrijft de ondersteunde recordtypen.De import ondersteunt een eigenaarveld en systeem-ID. Importpreview toont veld- en recordkoppelingen.Personen, organisaties, deals, activiteiten en notities kunnen worden geïmporteerd. Activiteiten, notities en bestanden exporteer je apart.Een bestaande Pipedrive-record werk je bij met de Pipedrive System ID. Die update-instructie noemt nog 50.000 rijen, dus gebruik dat lagere maximum voor bulkupdates totdat de accountimport anders bevestigt.
Salesforce Data Import WizardDe wizard importeert maximaal 50.000 records per keer voor ondersteunde objecten. De beschikbaarheid hangt af van object en Salesforce-editie.Veldmapping hoort bij de import. Voor relaties moet je doel-ID’s vooraf kennen of een geteste lookup instellen.Geschikt voor ondersteunde objecten en eenvoudige imports. Behandel taken, notities en andere geschiedenis als aparte object- of archiefkeuze.Trailhead adviseert de wizard onder 50.000 records en voor ondersteunde objecten. Het is een handmatige route, niet je geplande delta-import.
Salesforce Data Loader met externe ID’sGebruik Data Loader wanneer de wizard het object of de bewerking niet dekt. De tool verwerkt één gekozen object per handeling.Upsert gebruikt een Salesforce-ID of externe ID als matchsleutel. Een relatie kan via de externe ID van het ouderrecord worden gelegd.Importeer activiteiten als eigen objecten met hun doelrelaties. Controleer iedere foutregel; een geslaagde batch kan nog gedeeltelijk zijn.Een niet-unieke externe ID levert een fout op. Gebruik een unieke sleutel; koppel niet op bedrijfsnaam als die meerdere records kan vinden.

Pipedrive heeft een eigen nuance bij duplicaten. Een persoon kan tijdens import als dubbel gelden zodra één van organisatie, telefoon of e-mail overeenkomt. Een dealnaam is daar geen duplicaatsleutel. Dat is een reden om deals altijd met een bron-ID te volgen en kandidaatpersonen handmatig te beoordelen.

De route die het minste handwerk vraagt, is niet per se de veiligste. Een standaardimport is goed als de gegevens eenvoudig zijn en de relatievelden kloppen. Een API of begeleide batch verdient zijn kosten als je meerdere objecten herhaalbaar moet koppelen of als een foutieve eigenaar direct een verkoopactie laat vallen. Leg de bron en het doel naast elkaar totdat iedere open taak een plek, eigenaar en datum heeft. Dan is de verhuizing klaar.

Veelgestelde vragen

Alisina Nawabi
Geschreven doorAlisina Nawabi

AI Product Engineer & Solutions Architect

CRM-migratie zonder giswerk

Ik denk met je mee over wat mee moet, ontwerp de veld- en eigenaarsmapping en realiseer de import, terugleescontrole en koppelingen tot je team in het nieuwe CRM werkt.

Meer informatie

Dit artikel is geproduceerd samen met het Agent Team. Meer over de redactie.

Gerelateerde artikelen

Welk CRM past bij jouw MKB: HubSpot, Pipedrive of Salesforce?
Gids
Uitgebreide gids11 min

6 jul 21:01

Welk CRM past bij jouw MKB: HubSpot, Pipedrive of Salesforce?

Kies het CRM dat bij je teamgrootte, salesproces en budget past. Een eerlijke vergelijking van HubSpot, Pipedrive en Salesforce, met prijzen, een beslis-kader en wanneer een lichter alternatief nog volstaat.

AI-gespreksverslag voor je salesteam: van opgenomen verkoopgesprek naar CRM-notities en actiepunten
Gids
9 min

29 jun 23:01

AI-gespreksverslag voor je salesteam: van opgenomen verkoopgesprek naar CRM-notities en actiepunten

Een werkende keten van opname naar transcriptie, AI-samenvatting, CRM-notitie en ingeplande follow-up. Met de tools, de stappen, de valkuilen rond toestemming, en wanneer kant-en-klaar volstaat of maatwerk loont.

Van gewonnen deal naar uitvoering: bouw een vrijgavepoort
Gids
Uitgebreide gids17 min

24 okt 09:00

Van gewonnen deal naar uitvoering: bouw een vrijgavepoort

Een handtekening maakt een deal gewonnen, niet automatisch uitvoerbaar. Bouw een vrijgavepoort die scope, beloften, capaciteit, startdatum en eigenaar controleert vóór kickoff en klantcommunicatie.

Gatekeepergesprek naar CRM-opvolging: eigenaar, actie en datum
Gids
Uitgebreide gids15 min

22 okt 17:00

Gatekeepergesprek naar CRM-opvolging: eigenaar, actie en datum

Maak van een gatekeepergesprek een bronvast CRM-record met één eigenaar, concrete volgende actie en datum. Deze gids laat zien hoe je matcht, automatiseert en uitzonderingen behandelt.

AI-agent in je CRM veilig laten schrijven: van veldrechten naar menselijke vrijgave
Gids
Uitgebreide gids15 min

3 okt 09:00

AI-agent in je CRM veilig laten schrijven: van veldrechten naar menselijke vrijgave

Geef een AI-agent in je CRM precies genoeg rechten om leads te onderzoeken en voorstellen te maken. Blokkeer elke mutatie of klantmail tot bron, eigenaar, status en menselijke goedkeuring controleerbaar zijn.

Koude acquisitie na de opt-in wet van 2026: zo leg je toestemming aantoonbaar vast in je CRM
Gids
Uitgebreide gids10 min

8 jul 13:03

Koude acquisitie na de opt-in wet van 2026: zo leg je toestemming aantoonbaar vast in je CRM

Sinds 1 juli 2026 vervalt de klantrelatie als reden om te bellen: je hebt vooraf aantoonbare toestemming nodig. Een stappenplan om opt-in vast te leggen in je CRM, je koude lijst te filteren en je acquisitie om te bouwen.