Importing Data

Importing members and creating membership cards

Use the Payment import template to bring historical membership records into Zeffy and automatically generate membership cards. All contacts included in the import are added to Zeffy automatically, so you do not need to complete a separate contact import.

Imported memberships are historical records. They do not transfer active recurring payments or enable automatic renewal in Zeffy. If you want members to receive a reminder to purchase a new membership before their current one expires, enable membership reminders under Campaigns > Edit on your membership page > Automated emails > Enable membership reminders.

Once imported, transactions cannot be edited. You cannot change the amount, date, or payment method of an imported transaction, and you cannot delete individual imported payments without undoing the entire import. Make sure your information is correct before you proceed.

The maximum number of payments per import file is 10,000. If you have more, split them into separate files.

Download the template

  1. Go to Payments in your Zeffy dashboard.

  2. Click New Payment, then Import.

  3. Download the template from the import setup screen.

You must use the template exactly as provided. Do not change column titles, column order, or add custom columns. Custom columns will not be imported.

Fill in the template

Required fields

If any mandatory field is blank, that row cannot be imported.

  • First Name: Text.

  • Last Name: Text.

  • Amount: Digits only. For example, enter 10,000.00 as 10000. Use a period for decimals: 100.30. If no amount exists, enter 0.

  • Type: Must be lowercase membership.

  • RateTitle: Enter the exact membership level or ticket type name (for example, "Annual Membership"). This is required for membership imports.

Membership-specific fields

  • Form Title: Use the same form name for all members you want to group together. If this name matches an existing active membership campaign exactly, the payments attach to it; otherwise Zeffy creates a new archived form.

  • Expiration Date: Enter the membership renewal date in dd/MM/yyyy format. If left blank, it defaults to 1 year from the import date.

  • Eligible Amount: Fill this in if you plan to generate tax receipts for the imported memberships.

Optional fields

  • Email: Valid email format. The email is the main contact identifier. If a contact already exists with the exact same email, the payment is linked to that contact and no duplicate is created. If the email does not match exactly, a new contact is created. If a contact is imported without an email and later makes a payment using one, they will have two separate contact pages.

  • Language: EN or FR. Defaults to EN if left blank.

  • Date: Format as dd/MM/yyyy with all zeros. For example, 3 March 2023 must be 03/03/2023.

  • Payment Method: card, cash, cheque, transfer, unknown, free, manual, pad, ach, applePayOrGooglePay, inKind, stocks, other, or TaptoPay.

  • Receipt URL: Valid URL to an existing receipt.

  • Ticket URL: Valid URL to an existing e-ticket.

  • Receipt Number: Text and/or numbers.

  • Company Name: Text and/or numbers. Used to generate receipts under a company name rather than an individual.

  • Note: Any text. Shows on the contact page.

  • Annotation: Any text. Shows only in the payment details.

  • Phone: A phone number.

  • Lists: Contact lists to associate with the imported contact.

  • Subscription Status: The subscription status for the imported contact.

  • Address, City, Region, Postal Code, Country: Address fields. Country must be a valid two- or three-letter country code (for example, CA, US, FR).

Match imported memberships to a campaign

Zeffy uses the Form Title column to decide where the payments live.

Import into an existing active membership campaign

To attach imported memberships to an active campaign, enter the campaign's exact name in the Form Title column. The name must match exactly, including capitalization, spacing, and punctuation. Copy the campaign name directly from your Zeffy dashboard to avoid typos.

The Type must also match the campaign type. When importing into a membership page, the type must be membership. Even if the campaign name matches exactly, the import will fail if the type is incorrect.

Make sure the RateTitle also matches exactly the membership level or ticket type name in Zeffy.

Import into a new archived form

If the Form Title does not match an active campaign, Zeffy automatically creates a new archived form in the Past section of your campaigns. These forms organize your historical data and cannot accept new payments through public links, but you can still filter and report on them.

Each separate import creates its own form, even if you reuse the same form name. For example, two imports both named "Donations 2025" will create two separate archived forms. To avoid duplicates, match an active campaign name exactly.

Import your file

  1. Go to Payments and click New Payment, then Import.

  2. Review the key points on the setup screen and download the template if you have not already, then click Next.

  3. On the Select a file to import screen, drag and drop your completed file or click Select a file. Supported formats: XLSX, XLS, CSV.

  4. Click Next.

  5. On the Map Fields screen, match your source columns to the destination fields. A data preview helps you verify the mapping.

  6. Select your import options:

    • Generate tax receipts: Choose whether to automatically generate tax receipts. Make sure the Eligible Amount column is filled in your file.

    • Send thank you emails: Available only for imports with fewer than 1,000 rows. If enabled, each member receives a thank you email that includes the membership card and receipt.

  7. Proceed through the remaining steps and confirm. Your file will be analyzed and then processed.

If your file is correctly formatted, the import is processed directly and your payments appear in Payments within a few minutes.

What happens after import

  • Payments appear in the Payments section alongside your regular transactions.

  • Contacts are created automatically or linked to existing contacts by exact email match.

  • Zeffy automatically generates a membership card (PDF) for each imported member. You can access and download these cards from the payment drawer when viewing any imported membership payment.

Fix import errors

If your file contains formatting errors, a popup indicates how many rows have issues. Click See ___ issues to review them in a workbook, with incorrect cells highlighted in red. You can also choose Import without ___ contacts to import only the valid rows.

Common errors:

  • At least one identifier: You must provide an email, first name, or last name. These cannot all be blank.

  • Invalid country: Use a valid two- or three-letter country code (for example, CA, US, FR).

  • Invalid type: Use only donation, ticket, or membership in lowercase.

  • Invalid email: The field must be a valid email address.

  • Invalid language: Use only EN or FR.

  • Invalid date: Format as dd/MM/yyyy with all zeros.

  • Invalid payment method: Use one of the listed payment method values, entered exactly as shown.

  • Too many rows: Your file exceeds the 10,000 row limit. Split it into smaller files.

Delete or undo an import

Delete individual membership payments

  1. Go to Payments.

  2. Click on the payment row (avoid clicking the donor name, which opens the contact page).

  3. Click Actions in the top right of the payment drawer.

  4. Click Delete.

Deleting a payment that has a membership card associated automatically cancels the membership card.

Undo an entire import

To undo an entire import, see How to delete or undo a data import.

To learn how members can renew after import, see Everything there is to know about monthly or yearly membership renewals.

Was this helpful?