Bulk Records — Import & Export
The Team Certifications page can export every member record in your agency to a CSV, and import a CSV back. The same flow handles every record type: certifications, background checks, and so on.
This is most useful for:
- Backups: a periodic full export of agency records.
- Loading many records at once: when you onboard a new agency or move from another system, build a CSV and import it.
- Changing many records at once: export, edit a column in Excel, import again; matched rows update in place.
The CSV holds record details only. Supporting documents (PDFs, photos) aren't included; see Supporting documents below.
The record lifecycle
A record can be waiting for review, or verified and locked. That state controls who can edit what.
| State | How it gets there | Who can edit | What can be edited |
|---|---|---|---|
| Pending review | Created by a member, or arrives through an import | The record's owner (the named member) and anyone with Edit certifications for any member | All fields |
| Verified (locked) | A reviewer selects Verify in the record's detail panel | Only notes can be changed, by an Agency Admin or a member with Edit certifications for any member. An Agency Admin or a member with Validate certifications can unlock the record to correct other details | Notes only, until unlocked |
Notes:
- A record stays editable until it is verified. The owner can still attach a file, fix a typo, or replace a wrong value. After it's verified the owner can renew it but can't edit or delete it.
- Verify needs the Validate certifications permission (administrators always have it). It asks you to confirm, because the record locks. Request changes is next to it, for sending a record back.
- Unlock for editing is in the record's detail panel and in the row menu on Team Certifications. A confirmation explains that unlocking removes the verified status. The record goes back to pending review, can be edited, and must be verified again. Its validation history shows who unlocked it and when.
- A template can turn Require validation off. Records from that template are then marked valid when entered and show a Self-attested badge. See Record & Certification Templates.
Exporting
- Open Certifications in the left menu, then the Team Certifications tab.
- Open the ⋮ (More actions) menu on the top bar and select Export records (CSV).
It runs as a background task with a progress window (Exporting Team Certifications), and a notice tells you when it's ready.
The same menu has PDF report and Point-in-time report; those are separate from this CSV.
The exported file contains every record where the subject is a person in your agency.
CSV columns
| Column | What it is | What import does with it |
|---|---|---|
Record ID | The record's unique ID | Optional. When present, the import matches the CSV row to that exact record, even if it was renamed. When blank, import falls back to matching by (member email, record name, record type). Leave blank for fresh imports so the import creates new records instead of trying to update non-existent ones. |
Record Type | CERTIFICATION, BACKGROUND_CHECK, or OTHER for member records | Required. |
Subject Type | Always PERSON for member records | Required. |
Template Name | The name of the agency record template, if the record was created from one | Optional. If present, the import looks up that template by name; if not found, the record is still created but template-linked fields (lock flags, notification timing) won't apply. |
User Email | The agency member's login email | Required. Lookup is case-insensitive but the user must already exist in the agency. Rows with unknown emails are skipped with an error. |
User First Name / User Last Name | Display only | Ignored on import — the user is identified by email. |
Record Name | The cert / record name | Required. |
Description | Free text | Optional. |
Issuing Organization | Who issued it | Optional. |
External Record ID | The ID printed on the certificate, if any (different from Record ID above) | Optional. |
Issue Date | YYYY-MM-DD | Required. |
Expiry Period | Months until expiration. Falls back to the template's value if blank. | Optional. |
Status | ACTIVE, EXPIRED, etc. — recalculated from Issue Date + Expiry Period on save. | Ignored — the system computes it. |
Validation Status | valid, pending, invalid | Optional. Defaults to pending when blank or unrecognized. Setting valid doesn't lock the record, and it means Verify can never be used on it afterward. See Validation Status and the import below. |
Training Hours, Location, Instructor, Certification Level, Notes | Free-text / numeric metadata | Optional. |
First / Second / Third / Final Notification Days | Days before expiration to send each notification. Falls back to the template's values if blank. | Optional. |
Type Specific Data | Extra details for one record type, such as check_type for Background Checks, written as {"check_type": "..."} | Optional. |
Created By Email | Audit trail | Ignored on import — the importer's email is recorded. |
Importing
- On Team Certifications, open the ⋮ menu and select Import records (CSV).
- In the Import records window, pick your CSV and select Import.
- The import runs in the background. When it finishes, an Import finished window shows how many rows were read, created, and updated, and lists any rows that couldn't be imported.
You need Import certifications for any member (and Export certifications for any member for exports). Without them the menu items are unavailable. See Roles & Permissions.
Imported records arrive pending review. Supporting documents can be uploaded afterward.
What the import does, row by row
- Find the user by
User Email(case-insensitive). Skip the row with an error if not found. - Check for an existing record:
- If
Record IDis present and matches a record in your agency, update that record. - Otherwise, look for an existing record with the same (user, Record Name, Record Type). If found, update it.
- Otherwise, create a new record.
- If
- Apply the CSV's values to the record.
- Files aren't affected. Existing files on existing records survive untouched.
Import results
The results window reports:
- Created: new records added.
- Updated: existing records where one or more fields changed.
- Errors: per-row messages (for example, "Row 47: User with email orphan@example.com not found in agency"). Other rows in the same file still import normally.
Validation Status and the import
Importing never locks a record. Locking happens only when a reviewer selects Verify.
Recommendation: leave Validation Status blank. Records arrive as pending, a reviewer checks each one and selects Verify, and the lock happens when they sign off, just like records created by members. An unrecognized value is treated as pending.
If you're moving from another system where approvals already happened, you can set Validation Status to valid. Those records show as Verified, but they aren't locked, and because they are already valid, Verify will refuse them ("Record is already validated"), so they never lock. Members can't edit a record marked valid, but an Agency Admin or Edit certifications for any member holder still can. Use valid only for records you're happy to leave unlocked.
Other ways to keep imports clean
- Don't worry about
Record ID. If you're seeding fresh records, leave the column blank (or omit it entirely) and the import will create new rows. StatusandCreated By Emailare read-only. The system computesStatusfrom issue date + expiry; the importer's email is recorded asCreated Byautomatically. Anything you put in those columns is ignored.
Export, edit, and import again
The most reliable way to change many records:
- Export the CSV from Team Certifications.
- Open in Excel; edit only the cells you want to change.
- Re-import. The
Record IDcolumn ensures every row matches the original record; only your edits are applied.
This avoids two records with the same name being merged, which can happen when rows are matched by name alone.
Supporting documents
The CSV doesn't include file attachments. To add a supporting document to a record:
- Open the record from Team Certifications (or the member's own My Certifications page).
- Choose Edit from the row's actions menu.
- Attach the file in the Supporting Documents section.
- Save.
This works for records created by a member or imported from a CSV. A verified (locked) record can't take new files.
For agencies that need a full backup including files, contact support. A file-bundle export isn't available yet.
Permissions summary
Permissions are named as they appear on the Access Roles screen. Agency Admins have all of them.
| Action | Permission |
|---|---|
| Export CSV | Export certifications for any member |
| Import CSV | Import certifications for any member |
| Edit a record (before it's verified) | The record's owner, or Edit certifications for any member |
| Verify a pending record | Validate certifications |
| Change a verified (locked) record's notes | Edit certifications for any member (or Agency Admin) |
| Unlock a verified record | Validate certifications (or Agency Admin) |
| Delete a record | The owner (until it's verified), or Delete certifications for any member (or Agency Admin). It goes to Archives → Certifications, where it's recoverable for 180 days, then destroyed |