I need to import from an external database 1500 contacts with their memberships and contributions.

Everything I read about it in Stackexchange was written between 2015 and 2017.

Is the following still up-to-date?

  • I can't import everything within a single .csv file, CiviCRM is not build this way
  • It takes 3 steps:
    1. import contacts with external id connection prevents to look up for contact ID within Civicrm
    2. import memberships with external id field
    3. import contributions with the proper membership_type
  • Using CSVimporter is the proper tool

Should I do this way or do is there a quicker way?

best regards,



The "normal" import tools tend to focus on a single entity (contact, contribution membership, participants...) indeed, so as you identified, it needs several separate imports and trying to find some common keys so civi knows how to link them

If you have complex/composite structures to import, it might be easier to write a simple php script that calls all the needed apis to create the entities. If you are familiar with php and the civicrm apis, it might be simplier (and it makes it way easier to "replay" the import)

good luck!

  • thanks Xavier! The TBS (tears, blood and sweat) extension will do the job! Apr 9 '20 at 8:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.