What is the simplest way to import Membership information and corresponding contribution information together from .CSV files?


1 Answer 1


You cannot do this in one import. You have to update one table per import.

You will likely need the API csv Import extension.

First step will be to create your csv files. 1. If they do not have it already, give each member a unique id number. 2. If your contact info and contribution are all on the same report, divide those into two csv files. You will need to assign the unique contact id # to each contribution.

After you have your csv files ready, you can import the contact files and then the contribution files. I recommend that your first import only have 2-3 contacts and then another with 2-3 related contributions. This way you can test it without making a mess of all 300 contacts.

You may need the API csv Import extension to import the Contributions. It depends on your setup and which fields you are importing.



  • 1
    The issue is that this will not link the membership and contribution payments - though if you have the API csv import extension, you can generate MembershipPayment entities, which will solve you problem. Commented Jul 17, 2017 at 15:21
  • Jon G, it WILL link the contacts and the contributions IF you import the contacts with an ID and import the contributions with the same contact ID. It is easy if you have the contact ID in both imports. The other way to do it is to import the contacts without a Contact ID. Then you can add the Civi generated Contact ID with the contributions. But this is a much more difficult method.
    – Iowa Boy
    Commented Jul 18, 2017 at 18:31
  • Parthibaraj Rajasekar, civicrm.org/extensions/api-csv-import-gui/11 Is needed because (at least historically) the core Civi import process does not give you access to match to all tables/fields. The extension gives you access to more tables/fields.
    – Iowa Boy
    Commented Jul 18, 2017 at 18:32
  • As an example, I believe you need the API csv Import extension to have the Contact ID with the Contribution import. I could be wrong but I think this is the case. You definitely need the extension if your Civi setup includes Price Sets for contributions. The core import process does not include the Line Item table matching.
    – Iowa Boy
    Commented Jul 18, 2017 at 18:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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