SFTP Integration
Share
Explore
SFTP Integration
SFTP integration allows for schools/districts to make all changes to student, parent, and roster data in their SIS and the changes will be reflected in ParentSquare after the following sync. These instructions and specifications are intended for a data admin at your district/school or a contact person at your SIS.

The steps to SFTP include:
Upload your files to ParentSquare’s SFTP server via your favorite SFTP software.
Email ParentSquare to alert them that the files are ready for initial data load.
Automate your SFTP transfers to send in the early evening (optional, but highly recommended).


Set Up SFTP Credentials
You will need to establish a connection to the ParentSquare SFTP Server. ParentSquare will issue a username and you will create a secure password on the ParentSquare web interface.
Log into ParentSquare and go to Admin > School if you are a single-site school.
If you’re a district, please go to Admin > District from your district page. Districts only need to set up their SFTP connection once at the district level (not each school level) and send files that include all school sites. For example, the students.csv file will include all students in your district.
Scroll down and check the box for “Use SFTP for SIS integration.”
image.jpeg
SFTP Server: and port: 22.
Your username will be given to you.
Create a password.
Click “Save.”
(Optional) Test the connection by logging into the sftp server with your credentials. You can use an SFTP client software such as WinSCP or FileZilla to test your connection.

Export Your Data
Before you use ParentSquare SIS SFTP sync, you need to export information from your student information system (SIS) to CSV files. The specifications for each file are provided in the section below. A header row should be present in each file and match the specifications exactly. Most headers use underscores. Spaces or dashes are not acceptable substitutes. All data fields are ingested as strings.

Required files

Optional files


Schools Data
Filename: schools.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
Yes
no spaces
2
school_name
Yes
Yes
3
school_zip
Yes
No
4
school_address
Yes
No
5
school_city
Yes
No
6
school_state
Yes
No
7
principal_first_name
Yes
No
8
principal_last_name
Yes
No
9
principal_email
Yes
No
10
school_phone
Yes
No
There are no rows in this table
Terms Data
Filename: terms.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
Yes
no spaces
2
term_id
Yes
Yes
no spaces
3
term_name
Yes
No
4
portion
No
No
semester, trimester, quarter, etc.
5
start_date
Yes
No
mm/dd/yyyy or yyyy-mm-dd
6
end_date
Yes
No
mm/dd/yyyy or yyyy-mm-dd
7
school_year
Yes
No
school year to which the academic session contributes. Format is YYYY
There are no rows in this table
This file will sync automatically on a weekly basis, rather than nightly, and can be manually synced on the school terms page

Students Data
Filename: students.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces
2
student_id
Yes
Yes
no spaces
3
state_student_id
No
Yes
no spaces
4
first_name
Yes
No
5
last_name
Yes
No
6
grade_level
Yes
No
( -4 to 12, or 100 for no grades)
Example:
-4 = PreK 1
-3 = PreK 2
-2 = Junior Kindergarten
-1 = Transitional Kindergarten
0 = Kindergarten
1 = 1st Grade
2 = 2nd Grade
100 = No grades.
If you use grade levels other than those listed above, please tell us your codes and to which grade level they should map.
7
status
No
No
1 = active, 0 = incoming
8
student_email
No*
Yes
9
cellphone
No*
Yes
10 digits
10
address_line1
No
No
11
address_line2
No
No
12
city
No
No
13
postal_code
No
No
There are no rows in this table
Contacts Data
Filename: parents.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No (No spaces.)
no spaces
2
student_id
Yes
No (No spaces.)
no spaces
3
parent_id
No
No
no spaces. may be called contact_id
4
first_name
Yes
No
5
last_name
Yes
No
6
email
Yes*
No
A phone or email is required for a parent to be synced to ParentSquare
7
mobile
Yes*
No
10 digits. A phone or email is required for a parent to be synced to ParentSquare
8
language
No
No
We recommend using ISO 639-1, ISO 639-2 or common language names(’en’, ‘eng’ or English, ‘es’ ‘spa’ or Spanish…)
If you use another convention, please tell us and share a mapping of your codes to ISO 639-1.
9
primary
No
No
1 = Yes, 0 = No
10
relationship
No
No
1 = Yes, 0 = No
There are no rows in this table
Staff Data
Filename: staff.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces
2
staff_id
Yes
No
no spaces. Unique to the staff member, but the staff member can be at more than one school
3
title
No
No
4
first_name
Yes
No
5
last_name
Yes
No
6
email
Yes
Yes
a phone or email is required for a staff user to be synced to ParentSquare
7
mobile
No
Yes
10 digits. A phone or email is required for a staff user to be synced to ParentSquare
8
login
No
Yes
should include username values if we are implementing SAML and email addresses are not being used
There are no rows in this table
Section Data
Filename: sections.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
2
section_id
Yes
No
no spaces, should be unique per school
3
term_id
No
No
4
staff_id
Yes
No
no spaces
5
course_name
Yes
No
6
period_number
No
No
7
section_number
No
No
8
is_primary
No
No
can be used to denote which teacher is the primary teacher. Accepted values are 1 or 0. There may only be one primary teacher per section. The primary teacher’s last name will be used in the section name
There are no rows in this table
Roster Data
Filename: rosters.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces
2
section_id
Yes
No
no spaces
3
student_id
Yes
No
no spaces
There are no rows in this table
Attendance Data
Filename: attendance.csv
You may choose either version of the file. Both support period attendance or daily attendance. The attendance.csv file may include attendance data for all schools in your district.

Check that the codes in the file match those listed in your settings; notification codes are case sensitive and must match exactly.

Attendance notifications will be sent at the time selected in ParentSquare and will use the most recent attendance.csv available. We recommend sending the file ~15 minutes before your notification time. If multiple attendance notices are scheduled throughout the day, multiple attendance.csv files must be sent.

For more information on attendance, see .

Attendance by row (each student has as many rows as needed)
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
2
student_id
Yes
Yes
Attendance Code for all day
3
date
Yes
No
accepted date formats are mm/dd/yyyy and yyyy-mm-dd.
4
period
Yes
No
name of the class period or ‘all_day’ One line/record per period if not all_day
5
code
Yes
No
There are no rows in this table

Attendance by column (each student has one row with codes in as many columns as needed)
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
2
student_id
Yes
Yes
3
date
Yes
No
accepted date formats are mm/dd/yyyy and yyyy-mm-dd.
4
p0
No
No
attendance Code for Period 1
5
p1
No
No
attendance Code for Period 2
6
...
attendance Code for Period n
7
p9
No
No
attendance Code for Period 9
There are no rows in this table

Groups Data
Filename: groups.csv
This file establishes the list of groups that will be synced to your ParentSquare site.
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces
2
group_id
Yes
Yes
no spaces
3
group_name
Yes
No
4
category
No
No
There are no rows in this table
Filename: group_members.csv
This file establishes the student membership of your groups.
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces. school_id for the group
2
group_id
Yes
No
no spaces
3
student_id
Yes
No
no spaces
There are no rows in this table
Filename: group_user_members.csv
This file establishes non-student membership of your groups.
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces
2
group_id
Yes
No
no spaces
3
staff_id
No
No
no spaces
4
parent_id
No
No
the contact_id of the parent associated with student
5
email
No*
No
will be used to identify the group member if staff_id and parent_id are blank
6
mobile
No*
No
7
role
No
No
each user must have a value of ‘member’ or ‘owner’.
There are no rows in this table
Emergency Contacts Data
Filename: emergency_contacts.csv
Search
Column Header
Field Required
Unique Value
Notes
1
school_id
Yes
No
no spaces
2
student_id
Yes
No
no spaces
3
contact_id
Yes
No
no spaces
4
first_name
Yes
No
5
last_name
Yes
No
6
email
Yes*
No
7
phone
Yes *
No
one of email or phone is required
There are no rows in this table
Emergency contacts will only receive urgent alerts. They will not receive other types of communication. They will not have a ParentSquare account or be able to access the app.

Share
 
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.