STEP TWO: Import Data Files
Overview
The PTA scheduler requires 4 data files: Student, Teacher, Class, and Enrollment. Two additional files — Parent and Parent-Student Relationship — are optional and only needed for Single Sign-On setups.
All files must be tab-delimited text files (.txt from Excel, or .tsv from Google Sheets), with column headers in the first row, matching the exact field names below (no spaces).
Student File
| Field | Description |
|---|---|
| StudentID | Unique identifier for the student (key field) |
| First | Student's first name |
| Last | Student's last name |
| SecurityValue | A value (e.g., birthdate) parents enter to confirm they're selecting the correct child |
Example:
| StudentID | SecurityValue | First | Last |
|---|---|---|---|
| 4321 | 04/12/2012 | Amanda | Jones |
| 4322 | 08/04/2012 | Timothy | Smith |
⚠️ Don't recycle Student IDs without removing the old student first. If StudentID 101 belonged to Betsy Smith last year and is reassigned to William Johnson this year, Betsy's parent will see William listed as their child. If recycling IDs, remove all stored contacts first via Global Setup / Contacts Setup / Remove All Contacts.
Optional column: Action — set to delete to remove a previously imported row. Defaults to update if omitted.
Teacher File
| Field | Description |
|---|---|
| TeacherID | Unique identifier for the teacher (key field) |
| First | Teacher's first name |
| Last | Teacher's last name |
| Teacher's email (must be unique; one address only) | |
| Room | Where the teacher will be during conferences — useful for room-based reporting |
Example:
| TeacherID | First | Last | Room | |
|---|---|---|---|---|
| 234 | Angela | Frank | a@school.com | 106 |
| 225 | Bobby | Smith | b@school.com | Library |
Want team-taught conferences? See Creating Teams, below.
Optional columns:
| Column | Purpose |
|---|---|
| Password | Sets an initial password (min. 6 characters). If omitted, the teacher creates their own at first login. (Once a teacher sets their own password, future imports won't override it — use the Reset Admin Password button under Global Setup / Contacts Setup to reset instead.) |
| Virtual Room | Online meeting link, if manually generating your own (not needed if using pickAtime's built-in meeting integration) |
| AccessLevel | Sets admin access. 3 = Resource Administrator (can block their own schedule). Default is Appointment Viewer. |
| GroupName | Categorizes teachers (e.g., "Middle School," "Science") — useful for creating different slot durations per group, or displaying teachers grouped on the scheduler |
| Action | Set to delete to remove a previously imported row |
Class File
| Field | Description |
|---|---|
| ClassID | Unique identifier for the class (key field — must be unique per teacher) |
| TeacherID | Must match a TeacherID in the Teacher file |
| ClassName (optional) | Display name shown on the CUI legend |
| GroupName (optional) | Categorizes teachers for grouped slot creation or display |
Example:
| ClassID | TeacherID | ClassName |
|---|---|---|
| Math-Sec200 | 234 | Math |
| Math-Sec201 | 235 | Math |
⚠️ ClassID must be unique per teacher. If your school has one "English 9" course taught by multiple teachers, give each section its own ClassID — e.g.,
Eng9-869for the section taught by teacher 869. Make sure your Enrollment file uses this same exact ClassID.
Optional columns:
| Column | Purpose |
|---|---|
| Action | Set to delete to remove a previously imported row |
| PTAN | Number of appointments allowed per parent for this class (default: 1) |
| Max | Maximum students allowed to enroll (default: a very high number) |
Enrollment File
| Field | Description |
|---|---|
| StudentID | Must match a StudentID in the Student file |
| ClassID | Must match a ClassID in the Class file |
Format Option 1 — One class per row (multiple rows per student if enrolled in multiple classes):
| StudentID | ClassID |
|---|---|
| 123 | English-SecB |
| 123 | Science |
Format Option 2 — One row per student, with each class in its own ClassID column:
| StudentID | ClassID | ClassID |
|---|---|---|
| 123 | English-SecB | Science |
| 456 | Math | Gym |
Optional column: Action — set to delete to remove a previously imported enrollment row.
Creating Teams
You can set up team-taught classes either during import or after import, depending on your situation.
Option A: Via Import
Method 1 — Import the team as a single "teacher" Use this if you're importing team data directly (not individual teacher data), and the team members won't also have individual conferences.
- Create a new "teacher" record representing the team (e.g.,
Team Smith-Jones), with its own unique TeacherID. - This team's class should include all students from both teachers' rosters.
- You can optionally use one teacher's email, or leave it blank — but it can't duplicate an email already used by another teacher.
- Make sure the individual teachers (Smith, Jones) aren't also separately bookable at the same times as the team.
- To grant the individual teachers visibility into the team's schedule: Go to Contacts, locate each teacher, and under Resource Access, grant them access to the team resource.
Method 2 — Combine individual teachers into a team via the Class file Use this if you're importing individual teacher data and want to combine some into a team. In the Class file's TeacherID column, concatenate teacher IDs with a semicolon.
Example:
Teacher File:
| TeacherID | First | Last | |
|---|---|---|---|
| T123 | Anne | Smith | asmith@school.com |
| T124 | Harold | Rice | hrice@school.com |
Class File:
| TeacherID | ClassID |
|---|---|
| T123;T124 | Math101 |
| T123 | Biology |
| T124 | English |
Here, Anne Smith and Harold Rice team-teach Math101. A parent with a student in Math101 books with the team; a parent with a student in Biology or English books with the individual teacher. The system prevents double-booking — booking with Anne Smith (individually) automatically blocks the corresponding slot for the Smith/Rice team.
This same technique works for cases like pairing a general education teacher with a special education teacher for select students — create a combined class (e.g., "English/Special Ed") and enroll only the relevant students in it, while others remain in the standard "English" class.
Option B: After Import
- Go to Class Editor.
- Select Add Teacher/Team.
- In the Select Person dialog, search for and select the first teacher, then click Add to Team. Repeat for the second teacher.
- Once both teachers appear in the top-left list, click OK.
- Either manually create a class for the team, import a class/enrollment file for them, or move existing classes from an individual teacher to the team.
Booking with the team blocks the corresponding slot for each individual member, and vice versa — this prevents double-booking automatically.
To add a room number for a team: Go to Appointments, and enter the room number to the right of the team's name.
Parent File (Optional — Single Sign-On only)
| Field | Description |
|---|---|
| ParentID | Unique identifier for the parent |
| First | Parent's first name |
| Last | Parent's last name |
| Parent's email (one only) |
Example:
| ParentID | First | Last | |
|---|---|---|---|
| 123 | John | Smith | js@parent.com |
| 456 | Susie | Smith | ss@parent.com |
Both ParentID and Email should be unique — duplicate rows will simply update the same contact rather than create a new one.
To prevent parents from manually attaching/detaching students: Go to Global Setup / Business Setup / Miscellaneous, and uncheck "Allow parents to attach and detach students."
Parent-Student Relationship File (Optional — Single Sign-On only)
| Field | Description |
|---|---|
| ParentID | Must match the Parent file |
| StudentID | Must match the Student file |
Example:
| StudentID | ParentID |
|---|---|
| 37890 | 4451 |
| 37891 | 4478 |
Mistakes to Avoid
- Don't export a full year of class data if you only need half a year.
- If parents won't recognize a numeric Student ID: Use a first+last name concatenation instead (e.g.,
BenjaminFranklin). You don't need to create this field manually — check "Use First + Last Name as StudentID" under Global Setup / Business Setup / Parent Login, then customize the prompt text under CUI Messages / Student / StudentID. - Watch for leading zeros. Opening a numeric ID column in Excel may strip leading zeros automatically.
- If Student IDs changed from last year, remove the old stored student data first (see Previous Users of pickAtime).
- If Student IDs are reassigned annually (not tied to a permanent record), also remove old stored data first.
- Cleaning up old data: You can now delete an event's existing classes/enrollment (and their associated teacher resources) directly from the Importer page — no need to leave the page. Select Class under File Type, then click Remove Existing Classes.
- Email column naming: The column must be labeled exactly
Email. Variants likeEmail_AddressorTeachers_Email_Addresswill import as extra data fields, not as the teacher/participant's login email.
Import Process
- Log into pickAtime and click Importer.
- Set Data Type to School.
- Select your event from the Event pull-down.
- Set File Type to Students.
- Click Browse, select your file, and click Import.
- If the import succeeds with no errors, repeat steps 4–6 for Teachers, Classes, and Enrollment (in that order), changing the File Type each time.
Data Type should be set to School for all four files.
Import logic: Each row has a unique key (StudentID, TeacherID, or ClassID). Re-importing the same data won't create duplicates — the system checks for an existing match and either updates it or creates a new record. This also means you can safely import a file containing only missing rows to fill in gaps.
⚠️ Always confirm the number of rows imported matches your file — silent partial imports can be easy to miss.
Import order matters:
- Fix all Teacher file errors before importing the Class file.
- Fix all Class file errors before importing the Enrollment file.
Error Messages on Import
General
"Incorrect file type was supplied." Your file must be tab-delimited. Re-save/re-export and try again.
Student File Errors
| Error | Cause / Fix |
|---|---|
| "The file does not have a column labeled 'First' or 'First Name'" / "...labeled 'StudentID'" | Column headers must match exactly (e.g., StudentID, not Student Lunch Number) |
| "The ID field is empty for XX" | A required field (name, StudentID, birthdate) is blank in that row |
Teacher File Errors
| Error | Cause / Fix |
|---|---|
| "Found contact with teacherid of ABC and a different contact with the email of [email]" | Your import row has TeacherID ABC + a specific email, but the Admin UI already has two separate existing contacts — one matching the TeacherID, one matching the email — and the system can't tell which to update. Fix: In Contacts, find the conflicting record(s), delete the outdated one, and re-import. |
| "The ID field is empty for XX" | A required field (name, email) is blank in that row |
| "The password field should be 6 characters or more for XX" | Check the Password column for that row |
Class File Errors
| Error | Cause / Fix |
|---|---|
| "Could not find teacher with teacherID XX" | This TeacherID isn't in your imported Teacher file — import teachers first, or correct the ID |
| "Class 'Math' already exists with a different teacher than '123'" | ClassID must be unique per teacher — two rows are using the same ClassID for different teachers. Fix by appending a section/teacher identifier (e.g., Math-123), and update your Enrollment file to match. (See "Removing a bad class" below to clean up the incorrect entry first.) |
Enrollment File Errors
| Error | Cause / Fix |
|---|---|
| "Student ID not found" | This StudentID isn't in your Student file — import students first |
| "Class XX not found" | This ClassID isn't in your Class file. (Safe to ignore if it's a non-conference class, like Study Hall.) |
| "No class ID found for student XX" | This row has a StudentID but no associated ClassID |
| "Student XX not in class YY" | Appears when deleting enrollment — the student wasn't actually enrolled in that class |
| "Class XX has reached maximum enrollment. Student XX has been skipped." | The class's Max setting was reached. Check/adjust this value in Class Editor under the teacher → class → Maximum column |
Parent File Errors
"The file does not have a column labeled 'First' or 'First Name'" Column headers must match the spec exactly.
Parent-Student Relationship File Errors
"Could not find Parent with ID 'XX' or Student with ID 'YY' as this parent/student was not imported" Double-check that both the ParentID and StudentID exist in their respective files and were successfully imported first.
How to Correct Bad Data
💡 Removing a bad class — quick reference (used throughout this section):
- Individually: Go to Class Editor, check "Show Only Classes," locate the class, and click the red X next to it.
- In bulk prior to an updated Class file import: On the Importer page, select Class under File Type, then click Remove Existing Classes — this also removes the associated teacher resources, without needing to leave the Importer.
Student File
| Issue | Fix |
|---|---|
| Names reversed | Correct the file and re-import |
| Incorrect Student IDs | Re-import the bad file with an added Action column set to delete, to remove the incorrect records |
| Forgot the SecurityValue field | Add the field and re-import |
| File was missing some students | Import the missing students, then import an enrollment file to enroll them |
Teacher File
Your fix depends on whether you've already imported your Class file — once imported, teachers become "resources" tied to Appointments and Class Editor, and can no longer be simply overwritten by re-importing the Teacher file.
If you have NOT yet imported your Class file:
| Issue | Fix |
|---|---|
| Names reversed | Correct the file and re-import |
| Teacher data was wrong | Re-import the bad file with an Action column set to delete |
| Teacher IDs incorrect | Same as above — re-import with Action: delete to remove, then import the corrected file |
If you HAVE already imported your Class file:
| Issue | Fix |
|---|---|
| Unwanted teachers present | Go to Class Editor and remove the teachers you don't need |
| Teachers assigned to wrong classes | Go to Class Editor, remove all classes, then re-import your Class file OR correct your class file, and prior to a new Class file import, check the box "remove existing classes." |
Class File
| Issue | Fix |
|---|---|
| Imported wrong/too many classes | Remove the bad classes (see quick reference above) |
| "Class A already exists but with a different teacher than Teacher B" | The same ClassID is assigned to two different teachers. Determine the correct teacher, then either fix and re-import the bad row, or go to Class Editor and move/delete the incorrect class assignment |
| Classes assigned to wrong teachers | Remove all classes (see quick reference above), then re-import your Class file |
| One class assigned to the wrong teacher | Simplest fix: in Class Editor, move the class to the correct teacher directly. (Just correcting your import file won't remove the original incorrect assignment — you must move it manually.) |
| Missed some classes | Add them to your Class file and re-import (or import a file with just the missing classes) |
Enrollment File
| Issue | Fix |
|---|---|
| Imported wrong/last year's enrollment | Remove all classes via Class Editor, then re-import a corrected Class file and Enrollment file |
| File was missing some enrollment | Import the missing enrollment data — no need to redo the full file |
How to Remove Imported Data
To remove everything (start completely fresh):
- Create a new event using your last event as a template (Events List → Add), then delete the old event. This clears class and enrollment data.
- Remove stored contacts: Global Setup / Contacts → Show Advanced Options → Remove All Customers, selecting Event Administrator as the level to delete. (This also removes parents.)
- Remove stored students: Click Remove Students Not Enrolled in a Class. (This may take a few minutes.)
If only your class and enrollment data is wrong (students/teachers are fine), you only need step 1.
To remove class data only, while keeping your teacher roster and slots:
- Go to Class Editor and delete all classes — this keeps your teacher roster on the Appointments and Class Editor pages.
- Import a new Class file and a new Enrollment file.
To remove students, teachers, classes, and enrollment — but keep parents:
- Create a new event using your last event as a template, then delete the old one (clears class/enrollment data).
- Take your old Student and Teacher files, add an
Actioncolumn set todelete, and re-import both.
Frequently Asked Questions
We accidentally imported last semester's data, but have too many parent appointments to start over. Can we just import new files?
Yes — new imports add to existing data rather than replacing it. New classes/enrollment will be added, but anything previously imported stays unless explicitly deleted (via Class Editor or an Action: delete import). Existing parent appointments are never affected by a new import.
We re-imported corrected class/enrollment files to remove some classes, but the old ones are still showing.
Imports only add or update — they never delete automatically. To remove classes, use Class Editor directly, or include an Action: delete column in your import file for the rows you want removed. The same applies to removing specific enrollment records.
We were missing some class/enrollment data. Will importing the missing data delete any booked appointments?
No. Importing additional class/enrollment data only adds what's missing — it will not disturb appointments already booked.
Viewing Your Imported Data
- From Events Preview, select your event and click Go to Event.
- Select Class Editor to see your teacher list. Select a teacher to see their classes; select a class to see enrolled students.
- Check "Show Only Classes" (far right) to view data organized by class instead.
See Modifying Teacher or Room Data to add/remove teachers, Moving a Class to reassign a class, and Modifying Enrollment Data to add/remove students from a class.
Missing Classes
- No manual changes made in Admin UI: Simply re-import updated Class and Enrollment files — new data will be added without disturbing existing data.
- Manual changes were made (e.g., reassigned teachers, moved students): Import a Class file with only the missing class(es), and an Enrollment file with only the missing enrollment.
Neither approach disturbs appointments already booked.
Missing Enrollment
If no manual changes were made, simply import an updated Enrollment file — subsequent imports never overwrite previously imported class/enrollment data; they only add new rows.