FE Colleges | April 2026
Overview
Use it to look up a message from your import output file, understand why it occurred, and find the fix.
How errors are reported
When you run a CSV import, Grofar writes the results to an output text file. Each problem appears on a separate line with one of the following prefixes:
Validation Error: — the record was rejected and not imported.
Warning: — the record was processed but with a note (e.g. a duplicate was skipped).
For per-record errors, the format is:
Validation Error: [RecordType] [Identifier] failed validation: [{errors}]
The {errors} placeholder contains a semicolon-delimited list of individual field errors. Each field error is listed in the reference tables below.
Dynamic values
Many error strings contain placeholder values shown in {curly braces}. These are replaced with the actual values from your file at runtime. For example, {StudentID} will show the student's ID from that row.
Import types covered
This reference covers errors from all eight Grofar CSV import functions:
Courses
Staff
Students
Student Contacts
Student Courses
Businesses (including department and contact fields)
Student Target Hours
Applicants
Common file-level errors (invalid headers, empty file, unreadable file) apply to all import types and are listed first.
Common file-level errors
These errors can occur with any import type when the CSV file itself cannot be processed. They are not repeated in each section below.
Error / warning message | What it means and how to fix it | Type | Field |
Failed to process the csv file: Invalid header: {headerName} | The CSV contains a column header Grofar does not recognise. The header name is shown in the error. Check spelling, casing and spacing against the import specification. | Validation error |
|
Failed to process the csv file: Invalid headers: {headerName1}, {headerName2} | Multiple unrecognised column headers found. Review all column names against the specification. | Validation error |
|
Invalid csv: The csv file contains no data. | The file has no data rows. Check you are uploading the correct file and that at least one data row exists below the header. | Validation error |
|
The imported csv file is invalid Inconsistent number of columns detected | The file could not be read as a CSV. It may be corrupted, saved in the wrong format, or have an unexpected encoding. Re-save as UTF-8 CSV from your spreadsheet application. Often this is due to inconsistent columns — most often caused by unqualified commas. | Validation error |
|
Failed to process row {rowNumber}: {message} | An unexpected problem occurred reading the row shown. Usually caused by a raw file formatting issue rather than a field value problem. | Validation error |
|
Courses
Parses course data. Each row represents a course (or course instance) together with its faculty, sector and programme area.
Error / warning message | What it means and how to fix it | Type | Field |
CourseCode is invalid: The CourseCode field is required. | Every course row must have a | Validation error | CourseCode |
CourseTitle is invalid: The CourseTitle field is required. | Every course must have a title. Cannot be blank. | Validation error | CourseTitle |
CourseTitle is invalid: Maximum number of characters allowed for Title is 200 | Course title exceeds 200 characters. | Validation error | CourseTitle |
CourseInstance is invalid: Maximum number of characters allowed for Title is 200 | Course instance identifier exceeds 200 characters. | Validation error | CourseInstance |
FacultyCode is invalid: The FacultyCode field is required. | A | Validation error | FacultyCode |
FacultyTitle is invalid: The FacultyTitle field is required. |
| Validation error | FacultyTitle |
FacultyTitle is invalid: Maximum number of characters allowed for Faculty Name is 200 | Faculty name exceeds 200 characters. | Validation error | FacultyTitle |
SectorTitle is invalid: Maximum number of characters allowed for Sector Title is 200 | Sector title exceeds 200 characters. | Validation error | SectorTitle |
ProgrammeAreaCode is invalid: The ProgrammeAreaCode field is required. | A | Validation error | ProgrammeAreaCode |
ProgrammeAreaTitle is invalid: The ProgrammeAreaTitle field is required. | A | Validation error | ProgrammeAreaTitle |
ProgrammeAreaTitle is invalid: Maximum number of characters allowed for Programme Area Title is 200 | Programme area title exceeds 200 characters. | Validation error | ProgrammeAreaTitle |
ProgrammeAreaLocation is invalid: Maximum number of characters allowed for Programme Area Location is 200 | Programme area location exceeds 200 characters. | Validation error | ProgrammeAreaLocation |
TargetPlacementType is invalid: The value must be one of the following: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | The value is not a recognised placement type code. Use one of the numeric codes 0–14. Refer to the import specification for the full name mapping. | Validation error | TargetPlacementType |
CourseLevel is invalid: The value must be one of the following: 0 1 2 3 4 5 6 | Must be one of: 0=Entry, 1=Level 1, 2=Level 2, 3=Level 3, 4=Level 4, 5=Level 5, 6=Level 6. | Validation error | CourseLevel |
CourseYear is invalid: The value must be one of the following: 0 1 2 3 4 5 | Must be a number from 0 to 5, representing the year of study. | Validation error | CourseYear |
CourseYear should be a number |
| Validation error | CourseYear |
The CourseStart date is not a valid date | Use DD/MM/YYYY format. | Validation error | CourseStart |
The CourseEnd date is not a valid date | Use DD/MM/YYYY format. | Validation error | CourseEnd |
The TargetPlacementHours is not a valid integer | Must be a whole number with no decimal points or text. | Validation error | TargetPlacementHours |
The TargetTLevelPlacementHours is not a valid integer | Must be a whole number. | Validation error | TargetTLevelPlacementHours |
The TargetStudyProgrammeHours is not a valid integer | Must be a whole number. | Validation error | TargetStudyProgrammeHours |
CourseCDFEligibility should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | CourseCDFEligibility |
The FacultyTitle is required |
| Validation error | FacultyTitle |
The SectorTitle is required |
| Validation error | SectorTitle |
The ProgrammeAreaTitle is required |
| Validation error | ProgrammeAreaTitle |
Cannot import ProgrammeArea with code {code} for Faculty {facultyCode} and sector {sectorCode} as there is already a ProgrammeArea with code {code} for faculty {facultyCode} and sector {sectorCode} | A programme area with this code already exists for this faculty and sector. Codes must be unique per faculty and sector. Check for duplicates or conflicting codes. | Validation error | ProgrammeAreaCode |
Staff
Parses staff member data. Each row represents a member of staff identified by their Reference.
Error / warning message | What it means and how to fix it | Type | Field |
FirstName is invalid: The FirstName field is required. | The | Validation error | FirstName |
LastName is invalid: The LastName field is required. | The | Validation error | LastName |
Reference is invalid: The Reference field is required. | The | Validation error | Reference |
EmailWork is invalid: The EmailWork field is required. | A work email address must be provided for every staff member. | Validation error | EmailWork |
EmailWork is invalid: The EmailWork field is not a valid e-mail address. | Not a properly formatted email address. Check for missing @ symbols, spaces or typos. | Validation error | EmailWork |
Phone is invalid: The Phone field is not a valid phone number. | The phone number cannot be validated. Use a standard UK format with no invalid characters. | Validation error | Phone |
A StaffMember with reference {Reference} has already been loaded from csv file. Only the first instance will be imported. | The same staff reference appears more than once. Only the first occurrence will be imported. Remove or correct the duplicate. | Warning | Reference |
Failed to import Reference: 403 - Unable to save staff member: The External login [Microsoft, Refernce] is already linked to another user in the system | The same external login has been issued to more than one user. | Validation error |
|
Students
Parses student data. Each row represents a student identified by their StudentID.
Error / warning message | What it means and how to fix it | Type | Field |
StudentID is invalid: The StudentID field is required. | The | Validation error | StudentID |
Firstname is invalid: The Firstname field is required. | The student's first name is missing. | Validation error | Firstname |
Surname is invalid: The Surname field is required. | The student's surname is missing. | Validation error | Surname |
EmailUnrestricted is invalid: The EmailUnrestricted field is required. | An email address is required for each student. | Validation error | EmailUnrestricted |
EmailUnrestricted is invalid: The EmailUnrestricted field is not a valid e-mail address. | Not a valid email format. Check for typos or missing characters. | Validation error | EmailUnrestricted |
TelMobileUnrestricted is invalid: The TelMobileUnrestricted field is not a valid phone number. | Invalid phone number format. Note: this column is deprecated. Use | Validation error | TelMobileUnrestricted |
Telephone is invalid: The Telephone field is not a valid phone number. | The telephone number cannot be validated. | Validation error | Telephone |
Mobile is invalid: The Mobile field is not a valid phone number. | The mobile number cannot be validated. | Validation error | Mobile |
Gender is invalid: The value must be one of the following: M F Male Female | Must be exactly one of: | Validation error | Gender |
AgeBand is invalid: The value must be one of the following: 16-18 19+ | Must be exactly | Validation error | AgeBand |
DoB is not a a valid date | Use DD/MM/YYYY format for date of birth. | Validation error | DoB |
IsWorkPlacementStudent should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsWorkPlacementStudent |
EducationalAndHealthCarePlan should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | EducationalAndHealthCarePlan |
SpecialEducationNeeds should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | SpecialEducationNeeds |
AcceptedDataProtectionPolicy should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | AcceptedDataProtectionPolicy |
LearningDifficultiesCsv: {value} is not a valid Learning Difficulty. | One of the ILR codes in this field is not recognised. Values must be from the approved list, separated by │ characters. | Validation error | LearningDifficultiesCsv |
LearningDifficultiesCsv: Failed to parse the Learning Difficulties CSV. The values must be separated by │ | ILR codes must be pipe-separated (│). Valid codes: 1=Visual impairment, 2=Hearing impairment, 3=Disability affecting mobility, 4=Profound complex disabilities, 5=Social and emotional difficulties, 6=Mental health difficulty, 7=Moderate learning difficulty, 8=Severe learning difficulty, 9=Dyslexia, 10=Dyscalculia, 11=Autism spectrum disorder, 12=Asperger's syndrome, 13=Temporary disability after illness, 14=Speech, language and communication needs, 15=Other physical disability, 16=Other specific learning difficulty, 17=Other medical condition, 18=Other learning difficulty, 93=Not known, 94=Not yet obtained, 95=No difficulty or disability, 96=Prefer not to say, 97=Unknown, 98=Not applicable, 99=Other. | Validation error | LearningDifficultiesCsv |
A Student with ID {StudentID} has already been loaded from the csv, only the first instance will be imported. | The same | Warning | StudentID |
The [TelMobileUnrestricted] column is no longer used and will be ignored. Use the [Telephone] or [Mobile] column instead | Deprecated column. Data in this column will not be imported. Switch to | Warning | TelMobileUnrestricted |
Failed to import Reference: 403 - Unable to save studenty: The External login [Microsoft, Refernce] is already linked to another user in the system | The same external login has been issued to more than one user. | Validation error |
|
Student Contacts
Parses student contact data (e.g. parents or guardians). Only the first contact per StudentID is imported.
Error / warning message | What it means and how to fix it | Type | Field |
StudentID is invalid: The StudentID field is required. | Every contact row must reference a student. The | Validation error | StudentID |
Surname is invalid: The Surname field is required. | The contact's surname is missing. | Validation error | Surname |
Surname is invalid: Maximum number of characters allowed for the Surname is 200 | Surname exceeds 200 characters. | Validation error | Surname |
Firstname is invalid: The Firstname field is required. | The contact's first name is missing. | Validation error | Firstname |
Firstname is invalid: Maximum number of characters allowed for the FirstName is 200 | First name exceeds 200 characters. | Validation error | Firstname |
HomePhone is invalid: The HomePhone field is not a valid phone number. | Invalid phone number format. | Validation error | HomePhone |
MobilePhone is invalid: The MobilePhone field is not a valid phone number. | Invalid mobile number format. | Validation error | MobilePhone |
Email is invalid: The Email field is not a valid e-mail address. | Invalid email format. | Validation error | |
Relationship is invalid: Maximum number of characters allowed for the relationship is 200 | Relationship field exceeds 200 characters. | Validation error | Relationship |
A Student Contact for student {StudentID} has already been loaded from the csv, only the first Student Contact will be imported. | More than one contact row exists for this | Warning | StudentID |
Student Courses
Parses student course enrolment data. Each row links a student to a course instance.
Error / warning message | What it means and how to fix it | Type | Field |
StudentID is invalid: The StudentID field is required. | The | Validation error | StudentID |
CourseCode is invalid: The CourseCode field is required. | The | Validation error | CourseCode |
Status is invalid: The Status field is required. | An enrolment status must be provided. | Validation error | Status |
Status is invalid: The value must be one of the following: Continuing Completed Withdrawn Transferred TemporarilyWithdrawn | Must be exactly one of: | Validation error | Status |
The Start date is not a valid date | Use DD/MM/YYYY format. | Validation error | Start |
The End date is not a valid date | Use DD/MM/YYYY format. | Validation error | End |
A Student Course [{StudentID} - {CourseCode} {CourseInstance}] has already been loaded from csv file. Only the first instance will be imported. | The same student and course combination appears more than once. Only the first row will be imported. | Warning |
|
Businesses
Parses employer (business), department and contact data. Each row can carry business, department and contact fields combined. Duplicate businesses and departments within the file are de-duplicated automatically.
Error / warning message | What it means and how to fix it | Type | Field |
BusinessID is invalid: The BusinessID field is required. | A | Validation error | BusinessID |
BusinessName is invalid: The BusinessName field is required. | The employer name is missing. | Validation error | BusinessName |
BusinessName is invalid: Maximum number of characters allowed for the Business Name is 200 | Business name exceeds 200 characters. | Validation error | BusinessName |
CompanyRegistrationNumber is invalid: Maximum number of characters allowed is 100 | Company registration number exceeds 100 characters. | Validation error | CompanyRegistrationNumber |
EmployerReferenceNumber is invalid: Maximum number of characters allowed is 100 | Employer reference number exceeds 100 characters. | Validation error | EmployerReferenceNumber |
Website is invalid: Maximum number of characters allowed for the Website is 500 | Website URL exceeds 500 characters. | Validation error | Website |
Website is invalid: The Website field is not a valid fully-qualified http, https, or ftp URL. | Must be a full URL starting with | Validation error | Website |
Profile is invalid: Maximum number of characters allowed for the Profile is 2000 | Employer profile text exceeds 2000 characters. | Validation error | Profile |
IndustrySector is invalid: The value must be one of the following: A B C D E F G H I J K L M N O P Q R S T U | Must be a single UK SIC top-level section letter. A=Agriculture/forestry/fishing, B=Mining and quarrying, C=Manufacturing, D=Electricity/gas/steam, E=Water/sewerage/waste, F=Construction, G=Wholesale and retail trade, H=Transportation and storage, I=Accommodation and food service, J=Information and communication, K=Financial and insurance, L=Real estate, M=Professional/scientific/technical, N=Administrative and support services, O=Public administration and defence, P=Education, Q=Health and social work, R=Arts/entertainment/recreation, S=Other service activities, T=Household employers, U=Extraterritorial organisations. | Validation error | IndustrySector |
JobCategory is invalid: The value must be one of the following: 1 2 3 ... 25 | Must be a number from 1 to 25. Refer to the import specification for the full category name mapping. | Validation error | JobCategory |
CompanySize is invalid: The value must be one of the following: 1 2-10 11-50 51-200 201-500 501-1000 1001-5000 5001-10000 10000+ | Must be exactly one of the listed band values. Use the exact string including hyphens and plus signs. | Validation error | CompanySize |
BusinessTagsCsv is invalid: Maximum number of characters allowed is 1000 | Business tags field exceeds 1000 characters. | Validation error | BusinessTagsCsv |
BusinessOtherSitesCsv is invalid: Maximum number of characters allowed is 1000 | Other sites field exceeds 1000 characters. | Validation error | BusinessOtherSitesCsv |
GrofarInternalBusinessID should be a number | If provided, must be a numeric value. | Validation error | GrofarInternalBusinessID |
HasPublicLiability should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | HasPublicLiability |
PublicLiabilityAmount is not a valid decimal | Must be a decimal number, e.g. | Validation error | PublicLiabilityAmount |
PublicLiabilityExpiresDate is not a valid date | Use DD/MM/YYYY format. | Validation error | PublicLiabilityExpiresDate |
HasEmployerLiabilityInsurance should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | HasEmployerLiabilityInsurance |
EmployerLiabilityInsuranceAmount is not a valid decimal | Must be a decimal number. | Validation error | EmployerLiabilityInsuranceAmount |
EmployerLiabilityInsuranceExpiresDate is not a valid date | Use DD/MM/YYYY format. | Validation error | EmployerLiabilityInsuranceExpiresDate |
DepartmentName is invalid: Maximum number of characters allowed is 200 | Department name exceeds 200 characters. | Validation error | DepartmentName |
DepartmentPhone is invalid: The DepartmentPhone field is not a valid phone number. | Invalid phone number format. | Validation error | DepartmentPhone |
DepartmentRiskLevel is invalid: The value must be one of the following: NotSet Low Medium High | Must be exactly one of: | Validation error | DepartmentRiskLevel |
DepartmentPostCode is invalid: Maximum number of characters allowed for the Post Code is 10 | Postcode exceeds 10 characters. | Validation error | DepartmentPostCode |
IsPrimaryDepartment should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsPrimaryDepartment |
DepartmentDbsCheckIsRequired should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentDbsCheckIsRequired |
DepartmentCscsCheckIsRequired should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentCscsCheckIsRequired |
DepartmentHigherRiskAssessmentRequired should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentHigherRiskAssessmentRequired |
DoNotContactDepartment should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DoNotContactDepartment |
DepartmentHealthAndSafetyChecked should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentHealthAndSafetyChecked |
DepartmentHealthAndSafetyCheckedDate is not a valid date | Use DD/MM/YYYY format. | Validation error | DepartmentHealthAndSafetyCheckedDate |
DepartmentHealthAndSafetyExpiresDate is not a valid date | Use DD/MM/YYYY format. | Validation error | DepartmentHealthAndSafetyExpiresDate |
DepartmentHasEmployerLiabilityInsurance should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentHasEmployerLiabilityInsurance |
DepartmentEmployerLiabilityInsuranceDoesNotRequireELI should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentEmployerLiabilityInsuranceDoesNotRequireELI |
DepartmentEmployerLiabilityInsuranceAmount is not a valid decimal | Must be a decimal number. | Validation error | DepartmentEmployerLiabilityInsuranceAmount |
DepartmentEmployerLiabilityInsuranceHasUnlimitedELI should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DepartmentEmployerLiabilityInsuranceHasUnlimitedELI |
DepartmentEmployerLiabilityInsuranceExpiresDate is not a valid date | Use DD/MM/YYYY format. | Validation error | DepartmentEmployerLiabilityInsuranceExpiresDate |
ContactEmail is invalid: The ContactEmail field is not a valid e-mail address. | Invalid email format. | Validation error | ContactEmail |
ContactPhone is invalid: The ContactPhone field is not a valid phone number. | Invalid phone number format. | Validation error | ContactPhone |
ContactTitle is invalid: Maximum number of characters allowed is 50 | Contact title (e.g. Mr, Dr) exceeds 50 characters. | Validation error | ContactTitle |
ContactName is invalid: Maximum number of characters allowed is 400 | Full contact name exceeds 400 characters. | Validation error | ContactName |
ContactFirstName is invalid: Maximum number of characters allowed is 200 | Contact first name exceeds 200 characters. | Validation error | ContactFirstName |
ContactLastName is invalid: Maximum number of characters allowed is 200 | Contact last name exceeds 200 characters. | Validation error | ContactLastName |
ContactGender is invalid: The value must be one of the following: M F Male Female | Must be exactly one of: | Validation error | ContactGender |
IsPrimaryContact should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsPrimaryContact |
IsDepartmentPrimaryContact should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsDepartmentPrimaryContact |
IsHealthAndSafetyContact should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsHealthAndSafetyContact |
ContactByEmail should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | ContactByEmail |
ContactByPhone should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | ContactByPhone |
ContactByPost should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | ContactByPost |
ContactByText should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | ContactByText |
ContactByWhatsApp should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | ContactByWhatsApp |
SubsribedToMarketingEmails should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | SubsribedToMarketingEmails |
SubscribedToMarketingEmails should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | SubscribedToMarketingEmails |
SubsribedToPostalMarketing should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | SubsribedToPostalMarketing |
SubscribedToPostalMarketing should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | SubscribedToPostalMarketing |
DoNotContact should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | DoNotContact |
GrofarInternalContactID should be a number | If provided, must be a numeric value. | Validation error | GrofarInternalContactID |
Student Target Hours
Parses target placement and study hours for a student on a specific course. Multiple rows for the same StudentID are consolidated into a single entry.
Error / warning message | What it means and how to fix it | Type | Field |
StudentID is invalid: The StudentID field is required. | The | Validation error | StudentID |
CourseCode is invalid: The CourseCode field is required. | The | Validation error | CourseCode |
Hours is invalid: The field Hours must be between 1 and 5000. | Hours must be a number from 1 to 5000. | Validation error | Hours |
TargetTLevelPlacementHours is invalid: Must be between 1 and 5000. | Value must be between 1 and 5000. | Validation error | TargetTLevelPlacementHours |
WEXHours is invalid: The field WEXHours must be between 1 and 5000. |
| Validation error | WEXHours |
StudyProgrammeHours is invalid: Must be between 1 and 5000. |
| Validation error | StudyProgrammeHours |
Student Target Hours have already been loaded from csv file for studentID [{StudentID}] Course: [{CourseCode}/{CourseInstance}]. | Target hours for this student and course already appear earlier in the file. Multiple rows are consolidated. Check for unintended duplicates. | Warning | StudentID |
Applicants
Parses applicant data. Each row represents a prospective student identified by their ExternalID.
Error / warning message | What it means and how to fix it | Type | Field |
ExternalID is invalid: The ExternalID field is required. | The | Validation error | ExternalID |
ExternalID is invalid: Maximum number of characters allowed is 100 |
| Validation error | ExternalID |
ExternalID should be a number | If | Validation error | ExternalID |
FirstName is invalid: The FirstName field is required. | The applicant's first name is missing. | Validation error | FirstName |
FirstName is invalid: Maximum number of characters allowed is 200 | First name exceeds 200 characters. | Validation error | FirstName |
LastName is invalid: The LastName field is required. | The applicant's last name is missing. | Validation error | LastName |
LastName is invalid: Maximum number of characters allowed is 200 | Last name exceeds 200 characters. | Validation error | LastName |
Email is invalid: The Email field is required. | An email address is required for every applicant. | Validation error | |
Email is invalid: The Email field is not a valid e-mail address. | Invalid email format. | Validation error | |
Gender is invalid: The value must be one of the following: M F Male Female | Must be exactly one of: | Validation error | Gender |
NationalInsuranceNumber is invalid: Please enter a valid national insurance number | The NI number does not match the expected UK format (e.g. AB 12 34 56 C). Check for spaces or invalid characters. | Validation error | NationalInsuranceNumber |
Ethnicity is invalid: The value must be one of the approved DfE codes | Must be an approved DfE ethnicity code. Main groupings: White British/Irish (WENG, WIRI, WSCO, WWEL, WBRI); White Other (WEUR, WEEU, WOTW etc.); Mixed (MACH, MWAO, MWAP etc.); Asian/Asian British (AIND, APKN, ABAN etc.); Black/Black British (BAFR, BANN, BCRB etc.); Other (CHKC, CHNE etc.); Special values: Unclassified, NOBT, REFU. Refer to the import specification for the complete list. | Validation error | Ethnicity |
Nationality is invalid: The value must be one of the approved nationality strings | Must be an exact nationality string from the approved list, e.g. British, French, Nigerian. Spelling and casing must match precisely. Refer to the import specification for the complete list. | Validation error | Nationality |
Telephone is invalid: The Telephone field is not a valid phone number. | Invalid phone number format. | Validation error | Telephone |
Mobile is invalid: The Mobile field is not a valid phone number. | Invalid mobile number format. | Validation error | Mobile |
PrimaryContactEmail is invalid: The PrimaryContactEmail field is not a valid e-mail address. | Primary contact email is not a valid format. | Validation error | PrimaryContactEmail |
PrimaryContactTelephone is invalid: The PrimaryContactTelephone field is not a valid phone number. | Invalid format. | Validation error | PrimaryContactTelephone |
PrimaryContactMobile is invalid: The PrimaryContactMobile field is not a valid phone number. | Invalid format. | Validation error | PrimaryContactMobile |
DateOfBirth is not a valid date | Use DD/MM/YYYY format. | Validation error | DateOfBirth |
GrofarInternalID should be a number | If provided, must be a numeric value. | Validation error | GrofarInternalID |
EnglishIsFirstLanguage should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | EnglishIsFirstLanguage |
IsCurrentOrPreviousStudent should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsCurrentOrPreviousStudent |
IsCarer should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | IsCarer |
HasLearningDifficultiesOrDisabilities should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | HasLearningDifficultiesOrDisabilities |
InResidentialCare should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | InResidentialCare |
EducationalAndHealthCarePlan should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | EducationalAndHealthCarePlan |
SpecialEducationNeeds should have value 'TRUE' or 'FALSE' | Only accepts | Validation error | SpecialEducationNeeds |
A Applicant with ExternalID {ExternalID} has already been loaded from csv file. Only the first instance will be imported. | The same | Warning | ExternalID |
Quick-reference: common causes
Most import errors fall into one of these categories:
Required field is blank — check the column contains a value for every row.
Invalid date format — Grofar expects DD/MM/YYYY. Dates exported from Excel may need reformatting.
Invalid boolean — only
TRUEorFALSEis accepted. Values such as 1, 0, Yes, No, or blank will fail.Invalid phone number — use a standard UK format. Remove spaces or special characters if the validator rejects them.
Invalid email address — check for missing @ symbols, trailing spaces or typos.
Unrecognised code value — for enumerated fields (Status, Gender, IndustrySector etc.), the value must match exactly, including casing.
Duplicate record — if the same identifier appears more than once, only the first row is used. The remainder generate a warning.
Unrecognised column header — the column name must match the specification exactly. Casing, spacing and spelling all matter.
