Class Enrollment Import Type

As of July 12, 2021, this "Learn Veracross" site has been deprecated.  It will remain live through December 2022, but will no longer be updated. All knowledge content has moved to the new Veracross Community.  Please update your bookmarks.

Here is the new version of this article in the Veracross Community.


The Class Enrollment Import allows schools to update information (outlined below) for courses that already exist in the database.
Uploading class information involves the following two steps:

  1. Preparing the data for upload using the Class Enrollment template, which is provided before data import on the Importer site.
  2. Uploading the data using the Veracross Data Importer

Preparing the Data for Upload

The user must prepare a comma-separated value (CSV) file containing all of the contact data to import. This file must contain all of the required columns in the order listed below, even if no content is populated in the columns. Each row of the CSV file should contain information for only one class (identified by the veracross_course_id column).

Fields in the Import Type Template

veracross_class_id (class_pk)Internal integer ID for the specific class. This may be found by navigating to the “Find Class” query on the System homepage, and then adding a second copy of the Internal Class ID field before running the query.

When importing Class Enrollment data, there are two options to identify with which class the data is to be associated. This value takes precedence over the other option, which is to use the next two values.

class_idText field. Run a Find Classes query to locate this. Please note: the maximum length for class_id is 20 characters.


School Year should refer to the values displayed in the class’ configuration page. Use these two values if the above value, veracross_class_id, is unknown. Please note: the school year MUST be in the xxxx format (eg. 2016 for the 2016-2017 school year).
veracross_student_idThe unique integer ID for the specific student. This ID is shown in the upper left of the person’s detail screen or can be found by displaying the Person ID field on a “Find Students” query.
enrollment_level_idThe integer ID for the desired enrollment level of the class. Navigate to “Enrollment Levels” under Academics on the System homepage to display a list of available enrollment levels. If enrollment levels are not applicable, please leave this column blank.

The following fields are only relevant for Dorm assignments for schools using the Boarding module: 

room_numberAn integer that assigns room number for dorm assignments. Is used by the boarding module to calculate roommates, among other uses.
floor_numberUsed by the boarding module.
bed_number Used by the boarding module.

Uploading the Data

After creating the CSV file, click the ‘Choose File’ button and select the appropriate CSV file.

Before clicking the ‘Import’ button to begin the import process, optionally click the ‘show’ link next to the Advanced Options heading in order to specify how the system should handle any duplicate rows that may exist within the CSV:

  • Allow duplicates to be inserted: the importer will insert the records exactly as they are found in the CSV. Duplicate records will be inserted into the database.
  • Automatically eliminate duplicates: the importer will automatically eliminate one of the duplicated rows before importing the records into the database.
  • Fail on duplicates: if duplicate rows are found, the import will fail and no records will be imported into the database.

Data Integrity Checks

The importer will check to ensure that the data present in the CSV is free from errors that would compromise data integrity. These checks are:

Class Enrollment Import

Too Many Characters

  • Class ID (20 characters)

Missing Records (No copy found in Veracross)

  • Class (veracross_class_id)
  • Class (class_id)
  • School Year
  • Student
  • Enrollment Level

Missing Data (No data was provided; these represent mandatory fields)

  • Class ID/Veracross Class ID (one of the two must be provided; we prioritize veracross_class_id over class_id and ignore the latter if the former is provided)
  • Student ID

Bad Data

  • School Year must be provided if Class ID is defined (only checked if veracross_class_id is blank or 0)
  • Class with Class ID “<class_id>” isn’t scheduled for <school_year> (we get here if a class with this ID exists for some other year, but not for this one)

If data integrity issues exist for any of these checks, an error will be thrown and the upload will fail.