Data Migration
If you are moving to Mission from another system, Mission's import engine handles bulk data import with validation and financial reconciliation. TheOneMigrate provides automated pipelines for RockRMS migrations; CSV import is available for any other source.
What You Can Import
| Data Type | Supported Sources |
|---|---|
| People (members) | RockRMS, CSV |
| Families | RockRMS, CSV |
| Groups | RockRMS, CSV |
| Donations (giving history) | RockRMS, CSV |
| Attendance records | RockRMS, CSV |
| Prayer requests | RockRMS (Church engine) |
RockRMS Migration (Automated)
For organizations migrating from RockRMS, use TheOneMigrate for a guided, automated migration.
What TheOneMigrate Does
TheOneMigrate connects directly to your RockRMS SQL Server database and:
- Extracts all people, families, groups, contribution records, and attendance
- Maps RockRMS data structures to Mission data models
- Validates the data and surfaces issues before import
- Performs the import in batches with financial reconciliation
- Generates a migration report with counts and any skipped records
Starting a RockRMS Migration
- Set up TheOneMigrate with your RockRMS database credentials (see TheOneMigrate documentation)
- In TheOneMigrate, create a new migration job targeting your Mission organization
- Configure the field mappings (defaults match common RockRMS setups)
- Run the verification pass to review data quality
- Approve and execute the migration
- Review the migration report
Run the verification pass before executing the full migration. It surfaces common issues like duplicate emails, malformed phone numbers, and donation records without matching funds. Fixing these before import saves significant cleanup time.
CSV Import
For organizations on other platforms (Planning Center, Breeze, Church Community Builder, spreadsheets), CSV import is available for all data types.
Import Limits
Mission processes imports in batches of up to 500 records per batch. For large datasets, split your CSV into multiple files.
CSV Format
People (members)
first_name,last_name,email,phone,status,joined_at,birth_date,gender,address,tags,notes
Jane,Smith,[email protected],555-0100,Active,2020-01-15,1985-03-22,Female,"123 Main St, Springfield, IL 62701",volunteer|small-group,
John,Smith,[email protected],555-0101,Active,2020-01-15,1983-07-10,Male,"123 Main St, Springfield, IL 62701",,
status: Active, Inactive, Visitor, Deceasedtags: pipe-separated listjoined_atandbirth_date: YYYY-MM-DD format
Families
family_name,address
Smith Family,"123 Main St, Springfield, IL 62701"
Johnson Family,"456 Oak Ave, Springfield, IL 62702"
After importing families, link members to families by editing their person records.
Donations
member_email,amount,fund_name,method,donated_at,reference_number,notes
[email protected],100.00,General Fund,check,2024-12-01,1001,
[email protected],50.00,Building Fund,cash,2024-12-08,,
method: cash, check, card, online, otherfund_name: must match an existing fund name exactlydonated_at: YYYY-MM-DD format
Groups
name,group_type,description,meeting_day,meeting_time,location
Young Adults,Small Group,Young adult community 18-30,Wednesday,7:00 PM,Fellowship Hall
Men's Bible Study,Bible Study,Weekly men's study,Saturday,7:00 AM,Room 101
Running a CSV Import
- Navigate to Settings → Import (or use the API endpoint directly)
- Select the data type (People, Families, Groups, Donations)
- Upload your CSV file
- Mission validates the data and shows a preview with any errors
- Review warnings (duplicate emails, missing required fields, fund name mismatches)
- Click Import to proceed
Financial Reconciliation
For donation imports, Mission performs financial reconciliation:
- Verifies that donor emails match existing member records
- Flags donations where the fund name doesn't match an existing fund
- Summarizes totals by fund for you to verify against your source system's records
After import, compare the totals Mission shows to your source system's giving report for the same period. If they match, your migration is complete.
Verification Before Import
The verification step is strongly recommended. It checks:
- Required fields are present (first_name, last_name for people; amount and fund for donations)
- Email addresses are valid format
- Dates are in the correct format
- Fund names in donation imports match existing funds
- Duplicate detection (same email in the import batch)
Issues are categorized as:
- Errors — rows that cannot be imported (missing required fields, invalid data)
- Warnings — rows that will import but may need review (duplicate emails, missing optional fields)
You can proceed with warnings but cannot proceed with errors.
After Import
After completing an import:
- Verify counts: Compare Mission's count of members/donations to your source system
- Check the relationship graph: Verify family connections appear correctly
- Spot-check records: Open 5-10 random records and verify the data looks right
- Review financial totals: Run the Giving Report and compare year-to-date totals to your source
Do not run a migration import on top of existing live data without careful planning. Imports do not automatically deduplicate against existing records — if you already have members in Mission, importing from a CSV with the same people will create duplicates. Run imports on a fresh organization or work with support for de-duplication strategies.
Import History
All import jobs are tracked. Go to Settings → Import History to see:
- Date and type of each import
- Records imported, skipped, and failed
- Who ran the import
- Full error log
Import records are retained permanently for audit purposes.