Overview
CiviPlus includes a built-in importer that allows administrators to create or update memberships in bulk using a CSV file. This is commonly used when migrating data from another system, onboarding a large group of members, or correcting membership records at scale.
This article explains how to prepare your data and use the Membership Importer tool in CiviPlus successfully.
When to Use the Membership Importer
The Membership Importer is appropriate when you need to:
Create new memberships for existing contacts
Create contacts and memberships at the same time
Update existing membership records, such as status, dates, or membership type
Perform one time data migrations or large batch updates
Preparing Your Import File
File Format
The file must be in CSV format
Each row represents one membership record
Required Columns
At a minimum, your file should include:
Contact identifier
External Identifier, or
Contact ID, or
A combination of First Name, Last Name, and Email for Individuals
Membership Type
Membership Start Date
Depending on your configuration, additional fields may be required.
Common Optional Columns
You may also include:
Membership End Date
Membership Status
Join Date
Source
Owner Membership ID (for inherited or organization based memberships)
Financial Type and Total Amount, if linking memberships to contributions
Dates should be formatted consistently, typically as DD-MM YYYY.
Data Quality Tips
Ensure membership type names exactly match those configured in CiviCRM
Avoid extra spaces or inconsistent capitalization
Verify that contacts can be uniquely identified to prevent duplicates
Running the Membership Import
Step 1: Navigate to the Import Tool
Go to Contacts
Select Import
Choose Memberships as the data type to import
Step 2: Upload Your CSV File
Upload your prepared CSV file
Select the correct character encoding if prompted
Choose whether to skip or update records on error
Step 3: Configure Import Options
You will be asked to configure how CiviCRM handles the import:
Select how contacts should be matched or created
Choose whether to create new memberships or update existing ones
Decide how to handle duplicate memberships
For updates, you will typically need to include the Membership ID or a combination of Contact ID and Membership Type.
Step 4: Map Fields
Map each column in your CSV file to the appropriate CiviCRM membership field
Required fields must be mapped before continuing
Unmapped fields will be ignored
Take time to review mappings carefully, especially for dates and status fields.
Step 5: Preview and Import
Review the preview screen to confirm mappings and sample data
Start the import
Wait for the import process to complete
Large files may take several minutes to process.
Reviewing Import Results
After the import completes, CiviCRM will display a summary including:
Number of memberships created
Number of memberships updated
Number of rows skipped or failed
Error messages with row references
It is strongly recommended to download and review the error file if any rows failed.
Common Issues and How to Avoid Them
Membership type not found
Ensure the membership type name exactly matches the configuration in CiviCRM.
Duplicate memberships created
Use Membership ID or clear matching rules when updating existing records.
Incorrect membership status
If status is not provided, CiviCRM may calculate it based on start and end dates.
Contacts not matched correctly
Always test with a small sample file before importing large datasets.
Best Practices
Test imports in a staging or sandbox environment first
Start with a small sample file to validate mappings
Keep a backup of your original data
Document import settings used for future reference
