Skip to main content

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
Email 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 Email 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-869 for 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 Email
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

  1. Go to Class Editor.
  2. Select Add Teacher/Team.
  3. In the Select Person dialog, search for and select the first teacher, then click Add to Team. Repeat for the second teacher.
  4. Once both teachers appear in the top-left list, click OK.
  5. 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
Email Parent's email (one only)

Example:

ParentID First Last Email
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 like Email_Address or Teachers_Email_Address will import as extra data fields, not as the teacher/participant's login email.

Import Process

  1. Log into pickAtime and click Importer.
  2. Set Data Type to School.
  3. Select your event from the Event pull-down.
  4. Set File Type to Students.
  5. Click Browse, select your file, and click Import.
  6. 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):

  1. 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.
  2. Remove stored contacts: Global Setup / Contacts → Show Advanced Options → Remove All Customers, selecting Event Administrator as the level to delete. (This also removes parents.)
  3. 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:

  1. Go to Class Editor and delete all classes — this keeps your teacher roster on the Appointments and Class Editor pages.
  2. Import a new Class file and a new Enrollment file.

To remove students, teachers, classes, and enrollment — but keep parents:

  1. Create a new event using your last event as a template, then delete the old one (clears class/enrollment data).
  2. Take your old Student and Teacher files, add an Action column set to delete, 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

  1. From Events Preview, select your event and click Go to Event.
  2. Select Class Editor to see your teacher list. Select a teacher to see their classes; select a class to see enrolled students.
  3. 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.