Importing your children data into ChurchSuite
In this article
Getting started
Preparing your data
Importing the CSV file
Children module import file specifications
Getting started...
At its most basic level, the Children module is a repository for children and young people's contact profiles and parent/carer connections. The module is also home to your various age-based gatherings and group attendance.
This article explains how to prepare and import your existing "children" data, perhaps exported from another system, into the module. The ChurchSuite Support team is happy to help you import your data—contact us at support@churchsuite.com—but if you're ready to get started, here's how.
Your existing 'people' data should ideally be divided into two files - one for adults and one for children, with each person having a separate row in the data file. Each file is imported separately into the Address Book and Children modules.
This article outlines the process for importing children's and young people's data, but the same process is used to import contacts to the Address book. See our related support article for further information. When children are imported to the Children module, any parent/carer details specified in the data are stored against the child, creating an unlinked child. However, after both imports are complete, you can easily link children to parents/carers in the Address Book, making an unlinked child a linked child.
Preparing your data
Here's a checklist of things to do or review before importing your data:
1. Make sure the data is in the right format and file type
To import data to ChurchSuite, the data must be presented in a CSV, comma-separated value format (UTF-8). Spreadsheet applications such as MS Excel, Apple Numbers, and Google Docs allow you to save data easily as a CSV file in the correct format. Similarly, many contact management applications let you export data as a CSV file.
UPPERCASE or lowercase or Mixed Sentence Case?
When preparing the CSV file, we encourage you to use mixed sentence case formatting rather than UPPERCASE formatting, especially for first name and last name fields - in this way, when you are using ChurchSuite's communication 'merge fields' you can personalise communications as "Dear James" rather than "Dear JAMES".
2. The first row must contain column header labels
The ChurchSuite importer will use the column header labels to map the data in each column of the CSV file to the correct field in ChurchSuite. You will be able to override the default mapping before completing the import - perhaps to correct a wrongly-mapped field - but by using ChurchSuite's field-naming convention, the data will be auto-mapped to the correct ChurchSuite fields, making the process even simpler. The 'people' data must start from row 2 in the CSV file, with one row only per child - a child profile will be created for each row in the CSV file.
Do not use the same column header label more than once in the CSV file, otherwise, columns will be ignored during import - column header labels in row 1 only must be uniquely named.
3. Review the Children module settings
Ensure any Optional Child Fields used in the CSV are first enabled in the module's settings - accessed via the cogwheels icon in the top-right corner of the module. For example, you may find it helpful to enable all optional fields before import and then disable any that are not needed after the import is completed.
4. Set up custom fields in ChurchSuite before import
Ensure that any custom fields and custom field response values are correctly set up in ChurchSuite and ready to receive your data - see the related support articles for further information about custom fields. For any custom fields set as required in the Children module's settings, valid values must be supplied for every child in the CSV file.
For "checkbox list" (multi-select) type custom fields - where a child may be assigned multiple options, each option should be presented comma-separated in the CSV file - like this example, where columns C and D are both multi-select custom fields - both these custom fields and all the possible options for each must be set up first in ChurchSuite before import. The option-naming convention must be consistent between the CSV file and ChurchSuite.
5. Review the default Communication options, My ChurchSuite & Privacy settings
Unless explicitly set for each child in the CSV file, ChurchSuite will assign default communication options and privacy settings specified in the module settings to each child added.
6. For data being imported as Tags...
You can optionally use a special column header label prefix of tag_ so that ChurchSuite will auto-map that column as a Tag. See our related support articles for further information about Tags. There's no limit to the number of columns in a CSV file that can be imported as Tags. The prefix is removed when the tag is created.
For example, tag_Member will create a 'Member' tag and assign it to each person whose column value is 1, yes, true, y, or * (case sensitive), and a blank value (or 0, no, false, or n) is ignored and the person is not tagged. In the following example the tag "Member" in column C will be assigned to each child in rows 2 to 6 - all of these values mean the respective child should be tagged. By comparison, the tag "Holiday Club" in column D will not be assigned to any of the children in rows 2 to 6 - these are all examples of values that would not result in a tag being assigned, including a blank value in cell D6.
Multiple tags can also be assigned from a column that contains comma-separated tag names, For example, a column header label of tag_Role and a value of 'Leader, First Aider' will assign that child to a Leader tag and a First Aider tag. In this context, the column header label name is not saved. Make sure you use a consistent tag-naming convention throughout the CSV file to avoid unexpected variations on a theme! Here are some examples in columns C and D - some children will be assigned multiple tags and some just a single tag.
7. For data being imported as Key Dates...
You can optionally use a special column header label prefix of kd_ so that ChurchSuite will auto-map that column as a Key Date. See our related support articles for further information about Key Dates. There's no limit to the number of columns in a CSV file that can be imported as Key Dates. The kd_ prefix is removed when the Key Date is created. Each key date column can only contain one value per child. A key date may optionally contain a key date 'Description' too - for example:
Column Header: kd_First Communion
Data: 23/07/2019 Bishop Alison presiding
Key Dates must be formatted in either the ISO format (yyyy-mm-dd) or your local date format (e.g. UK: dd/mm/yyyy or North America: mm/dd/yyyy).
Note that invalid key dates cannot be corrected during the import process. If key date errors are detected, you can either remove those children and re-import them separately with fixed data, or cancel the import and re-import the file afresh once the invalid key dates are fixed.
8. For data being imported as Notes...
You can optionally use a special column header label prefix of notes_ so that ChurchSuite will auto-map that column as a Note. See our related support articles for further information about Notes. There's no limit to the number of columns in a CSV file that can be imported as Notes. The notes_ prefix is removed when the Note is created. If multiple columns of notes are to be imported, use the format notes_<note-name> for each note column, e.g. 'notes_Family', notes_Special'. For each person with a note column entry in the CSV, a separate note will be added, but the suffix name <note-name> is not saved.
9. Children's groups
Where each child's existing groups are recorded in the CSV file, these should be imported as Tags in the first instance. Later, after completing the import, you can add your children's groups and gatherings in the Children module and then bulk-assign children to their correct groups from those Tags. It's not possible to map group data in the CSV file directly to groups in ChurchSuite.
10. Date format consistency
All dates in the CSV file, including dates of birth and 'date' type custom fields, must be formatted in either the ISO format (yyyy-mm-dd) or your local format (e.g. UK: dd/mm/yyyy or North America: mm/dd/yyyy).
11. All rows in the CSV file will be imported into the Children module
Every person in the CSV file will be imported to the Children module, regardless of the person's date of birth. Therefore, you should remove any over 18s/adult contacts that do not require Children module functionality and add them instead to the Address Book CSV file (see the related support article). Note that you can easily move children to the Address Book (and vice versa) after import if you spot a mistake later.
12. Linking parents/carers and children
ChurchSuite never assumes an Address Book parent/carer link during an import - imported children will not be linked to potential Address Book contact parents/carers during the import process. However, after completing both module imports, you can use the Potential Parent/Carer Match report in the Children module's Reports section to quickly and easily link children to a parent/carer in the Address Book.
13. Multi-site considerations
When importing multi-site children data, make sure you set up Sites in ChurchSuite first and specify "sites" as a column in the data so that each child is assigned to their correct site/s during the import process (the site-naming convention in the CSV file must match the site naming convention used in ChurchSuite). Any children without a site specified will be imported as "All sites", but their site can be later changed if necessary.
Important: To avoid unexpected errors during import, make sure that the logged-in User performing the import has "User Site" permissions for all of the sites specified in the CSV file - a User can only import/create data in sites they have permissions for. A validation error will occur for all rows with an unexpected or invalid site specified, including a designation for a site the User is not authorised to access.
14. International support - accented characters
You may experience an issue with accented characters during import. This will be evident in the upload "preview" stage (see below) - you may see � characters in place of accented characters, e.g.
This issue is generally restricted to CSV files created using Microsoft Excel. Cancel the import and follow these 'workaround' steps to resolve the issue. While you can still prepare your data in Microsoft Excel, you must use alternative software to produce the final CSV file(s) in the correct UTF-8 format. For Mac, we recommend using Apple's native "Numbers" spreadsheet application. For Windows, we suggest using "OpenOffice". Working within the alternative software, re-save the data in CSV format and then import the new CSV file into ChurchSuite.
Importing the CSV file
From the Children section of the Children module, click Import children.
Next, make sure the CSV file is in the right format - see the previous section in this article. The Import children page includes a helpful section titled Creating your CSV file where you can Download an example CSV file and view a list of supported Field names and the expected valid data format for each piece of data. A full list of the accepted fields with the relevant header information can be found at the end of this article.
You do not need to have a column for every field - ChurchSuite will only import those fields you supply in the CSV file; however, you must ensure every incoming field that you supply in the CSV file is correctly "mapped" to a ChurchSuite field (otherwise it won't be imported) and is in a valid format - this is explained later.
The minimum data required for each person is their First name and Last name. Make sure that these two fields are the very first two columns in the CSV file. For any custom fields that are set as required in the Children module's settings, valid values must also be supplied for every child in the CSV file.
Please note that it is not possible to import profile images for children - instead, these must be uploaded separately against each child's profile after the data is imported. Linked primary parents/carers can also easily upload and manage their children's profile images in the My Children section of My ChurchSuite.
Once you are ready to proceed - and with the CSV file ideally located on your desktop - click Choose File to browse to the CSV and then click Import CSV File.
The first 5 records of the data are now 'previewed'. Note the CSV Header column - this can help ensure ChurchSuite correctly maps each field in the CSV file to the correct field in the Children module. If you've followed ChurchSuite's suggested field-naming convention, the CSV Headers will be auto-mapped to the correct field in ChurchSuite (shown in the Import As column).
Items marked with a yellow warning symbol will not be imported and require attention. You can leave them as Do not import or choose the appropriate Import As field.
Having carefully reviewed the preview, select the Import All Records button at the bottom of the page to complete the upload.
The incoming data is validated during the upload. All valid rows are distinguished by a green tick to the left of each child's name. A yellow warning triangle next to a child's name indicates there is invalid data. Details of the invalid data are summarised in the Errors column. Note the Action menu to View or Edit any child or to Remove a child from the import altogether. Selecting Edit opens a pop-up of the child's details. Errors (shown in red) must be resolved before the child's details can be imported.
You can Delete an import entirely at any time - perhaps if you spot a catastrophic error affecting all children that may be better resolved within the CSV file and then re-uploaded. You can Process valid records at any time. You can also Pause an import...
...and later, Resume a partial import by returning to the Import children section and choosing to Resume or Delete the import from the Imports tab:
Each time you click Process, the imported children are assigned to an Import Tag in the Tags section of the Children module - the naming convention "Import [date and time]" is used, making it easy to identify newly imported children (and to bulk-delete them if the import didn't go as expected!). You can safely delete these tags after import once satisfied that the imported data is correct.
Children module import file specifications
CSV Header | Imported Into | Sample Data |
full_name | broken into First Name and Last Name fields | Janey Bloggs or Bloggs, Janey |
first_name | will be imported into the First Name field | Janey |
middle_name | will be imported into the Middle Name field | |
last_name | will be imported into the Last Name field | Bloggs |
formal_name | will be imported into the Formal Name field | Jane |
maternal_name | will be suffixed to the Last Name to become "Paternal name Maternal name" | Paternal name: Hancock, Maternal name: Jones, becomes "Hancock Jones" |
known_as | will be imported into First Name and First Name becomes Formal Name | Janey |
sex | will be imported into the child Sex field | m OR f OR male OR female OR boy OR girl OR u (unknown) |
date_of_birth | will be imported into the child's Date of Birth field | 31-01-1970 (i.e. dd-mm-YYYY) |
telephone | will be imported into the parent/carer Telephone field |
(parent/carer telephone number) |
mobile | will be imported into the child Mobile/Cellular field | 07700 900077 |
will be imported into the child Email field | janey123@hotmail.com | |
parent_name | will be imported into the Parent/Carer Name field | Joseph Bloggs |
parent_first_name | First name - Part of the Parent/Carer Name field | Joseph |
parent_last_name | Last name - Part of the Parent/Carer Name field | Bloggs |
parent_mobile | will be imported into the Parent/Carer Mobile field | (primary parent/guardian mobile number) |
parent_email | will be imported into the Parent/Carer Email field | joseph.bloggs@company.com |
parent_relationship | The parent/carer relationship with the child - will be imported into the Parent/Carer Relationship field | Parent OR Grandparent OR Aunt/Uncle OR Guardian OR Stepparent OR Foster-parent OR Other |
parent_receive_email | will be imported into the Parent/Carer receive general emails field | 1 OR 0 (Yes OR No) |
parent_receive_sms | will be imported into the Parent/Carer receive general SMS field | 1 OR 0 (Yes OR No) |
full_address | breaks on commas into Address, Address 2, City, County and Postcode fields | 1 Queens Drive, Beeston, Nottingham, Notts, NG1 1AB |
address | will be imported into the Address field | |
address2 | will be imported into the Address 2 field | |
address3 | will be imported into the Address 3 field | |
city | will be imported into the City field | |
county | will be imported into the County/State field | County or State/Province |
postcode | will be imported into the Postcode field | Postcode or Zip code |
country | will be imported into the Country field | |
house_name | House name, with house number & street imported into the Address field | The Cottage => The Cottage, 45 River Lane |
house_number | House number, with house name & street imported into the Address field | 45 => The Cottage, 45 River Lane |
house_street | House street, with house name & number imported into the Address field | River Lane => The Cottage, 45 River Lane |
doctor_details | will be imported into the Doctor field | Dr S Rudrashetty, 1 Surgery Road, Nottingham |
doctor_name | Doctor name - part of the Doctor field | Dr S Rudrashetty |
surgery_name | Surgery name - part of the Doctor field | Wellbeing Surgery |
surgery_address | Surgery address - part of the Doctor field | 1 Surgery Road, Nottingham |
surgery_phone | Surgery phone number - part of the Doctor field | 0115 496 0550 |
medical | will be imported into the Medical field | Has a serious nut allergy |
medical_short | will be imported into the Medical (Short) field | Nut allergy |
special_needs | will be imported into the Additional Needs field | |
info | will be imported into the Additional Info field | Additional Information |
checkin_barcode | will be imported into the Barcode field | Any alphanumeric string |
school | will be imported into the School field | Town Primary School |
school_year_offset | will be imported into the School Year Offset field | Range from -2 to +2, imported into the School Year Offset field |
notes | will be imported into the Notes field | |
tags | will be imported into the Tags field | Member, Tuesday Club |
keydate | will be imported into the Key Date field | Key Date 'name' in CSV Header, Date in a row. Optional description |
receive_general_email | will be imported into the child Receive general emails field | 1 OR 0 (Yes OR No) |
receive_general_sms | will be imported into the child Receive general SMS field | 1 OR 0 (Yes OR No) |
receive_phone | will be imported into the child Receive phone field | 1 OR 0 (Yes OR No) |
receive_post | will be imported into the child Receive post field | 1 OR 0 (Yes OR No) |
receive_rota_email | will be imported into the child Receive rota reminder emails field | 1 OR 0 (Yes OR No) |
receive_rota_sms | will be imported into the child Receive rota reminder SMS field | 1 OR 0 (Yes OR No) |
public_login | will be imported into the Allow My ChurchSuite login field | 1 OR 0 (Yes OR No) |
public_visible | will be imported into the Name is visible field |
1 OR 0 (Yes OR No) |
public_address | will be imported into the Address is visible field | 1 OR 0 (Yes OR No) |
public_telephone | will be imported into the Telephone is visible field | 1 OR 0 (Yes OR No) |
public_mobile | will be imported into the Mobile is visible field | 1 OR 0 (Yes OR No) |
public_email | will be imported into the Email is visible field | 1 OR 0 (Yes OR No) |
consent_use_internal | will be imported into the Internal Use Consent? field | 1 OR Yes OR True (Consent granted) 0 OR No OR False (Consent denied) Null or Empty (Consent unknown) |
consent_use_external | will be imported into the External Use Consent? field | 1 OR Yes OR True (Consent granted) 0 OR No OR False (Consent denied) Null or Empty (Consent unknown) |
sites | will be imported into the Sites field | Site name/s specified exactly as named in your Account Settings, with multiple sites specified comma-separated. An empty sites value is treated as "All sites" |