This article explains the roster sync workflow from PowerSchool to Toddle for schools in the United States and Canada. If your school uses PowerSchool but is located outside the United States or Canada, refer to this article instead.
As an administrator, you can use the PowerSchool integration to sync students, staff,, courses, and classes into Toddle. This article covers the initial setup, automated daily syncs, and how to review and manage synced data.
In this article:
Set up the roster sync
Upload and register the plugin in Powerschool
Complete the sync setup
Initiate the roster sync
Review the sync report
Set up a daily sync
Manage exclusions
Set up sync for a new academic year
Frequently asked questions
Set up the roster sync
Setting up the roster sync is a collaborative process between three parties.
Your Toddle buddy is your primary point of contact at Toddle. They raise the integration request internally, coordinate with the Toddle team, and review the first sync report with you.
The Toddle team handles the technical configuration in the admin portal. This includes generating the PowerSchool plugin, verifying credentials, and initiating the sync report.
You, the school administrator, review and accept the first sync and manage ongoing sync settings, exclusions, and the daily sync schedule.
The setup process moves through four stages: discussing your sync requirements, uploading the plugin in PowerSchool, sharing credentials with Toddle, and completing the sync setup in the admin portal.
Note: The sync is one-way: changes made in PowerSchool flow into Toddle, but Toddle does not push roster data back to PowerSchool. For an overview of all the Student Information Systems Toddle supports, refer to this article.
Pre-requisites
The following must be configured in the PowerSchool portal before setting up the roster sync:
Classes- Classes must be created in PowerSchool so that they can be synced to Toddle.
Class assignments- All students and staff must be assigned to at least one class in PowerSchool; users without class assignments cannot be created on Toddle through the sync.
Courses- Courses must be created in PowerSchool and mapped to the classes so that they can be synced to Toddle.
Discuss sync requirements with your Toddle buddy
Set up a call with your Toddle buddy to discuss the scope of the roster sync. You will need to confirm:
Which fields should be used as the student UID and staff UID in Toddle
Whether any additional fields beyond the standard fields below need to be included
The standard fields synced from PowerSchool to Toddle are:
Category | Fields |
Student fields | First name, middle name, preferred name, last name, email, UID |
Student profile fields | Date of birth, first nationality, second nationality, first language, second language, address, contact information |
Course fields | Course title, course UID |
Class fields | Class title, class UID |
Staff fields | First name, middle name, preferred name, last name, email, UID |
Your Toddle buddy raises an internal request with the Toddle team based on your scope.
Upload the Toddle plugin in PowerSchool
Download and prepare the plugin file
1. Download the plugin file that matches your school’s location from the table below, and save it to your computer.
School location | Plugin file |
US and international schools | |
Canadian schools |
2. Open the file and locate the placeholder vendor Opportunity ID value.
3. Replace the placeholder with the 18-digit Opportunity ID included in your initial product provisioning email from Toddle.
4. Save the file.
Tip: The Opportunity ID uniquely identifies your school’s integration with PowerSchool. If you are unable to locate this ID or are not comfortable editing the file yourself, share your Opportunity ID with your Toddle buddy. They can update the file for you and send it back ready to upload.
Note: You only need to complete this setup once for your main PowerSchool account, even if it includes multiple schools under it. Once uploaded and enabled, the plugin gives Toddle access to roster data across all schools within that PowerSchool account.
Upload and register the plugin in PowerSchool
Once your plugin file is ready, upload it directly to PowerSchool.
1. Sign in to your PowerSchool admin portal and navigate to:
System Management → Server → Plugin Configuration
3. This opens the Plugin Install screen.
4. Click Choose File and select the edited plugin file (universal-rostering-plugin-us.xml or universal-rostering-plugin-canada.xml).
4. After the file uploads, PowerSchool opens a Plugin Registration window. This step connects the plugin to Toddle’s systems using the details from the file you uploaded, including the Opportunity ID you added earlier.
5. Review the registration details shown and confirm that the Registration Data field includes your correct Opportunity ID.
6. Click Register to complete the connection automatically.
Note: If you click Cancel instead of Register, PowerSchool asks you to send the registration information manually. Use Register unless your Toddle buddy has specifically asked you to complete this step manually.
7. Once registration is complete, PowerSchool confirms the connection with 3 success messages, including confirmation that PowerSchool was able to verify an inbound connection.
8. Click OK to close the results window.
Note: If registration fails, do not retry with the same file. Share the error details with your Toddle buddy so a corrected plugin file can be prepared for your school.
9. In the Installed Plugins list, locate the plugin named Toddle US or Toddle Canada, depending on the file you installed. Enable the checkbox next to it to enable the plugin.
Retrieve your credentials and share them with Toddle
Click the name of the plugin (Toddle US or Toddle Canada) in the Installed Plugins list.
Click Data Configuration.
Increase the Pagination limit to 1000.
In the OAuth Credentials section, record the Client ID and Client Secret.
Create a text file named PS_oneroster_credentials.txt.
Add the following fields to the file:
Institution Name
Institution ID
Primary Contact Name
Primary Contact Email
PowerSchool URL
Client ID
Client Secret
Save the text file, and share it with the Toddle team to complete the connection on Toddle’s side. The team uses these details to connect your PowerSchool instance with Toddle.
Complete the sync setup
After setting up the credentials, the Toddle team completes the sync setup in the admin portal on your behalf. You will not perform these steps directly, but the walkthrough below describes what happens during this stage, so you have full visibility into the configuration.
1. Navigate to Integration → Roster sync and click Sync setup.
2. Select one or more schools to include in the sync, then select PowerSchool as the SIS.
3. Enter the client credentials and click Verify credentials. Once verified, click Save to proceed.
4. Once saved, the Roster sync page displays a card for each school included in the sync. Click Manage sync on a school card to enter that sync workspace.
5. Open the Grades mapping section for the selected school and click Fetch data.
Note: Grade mapping is the first mandatory step. All other dashboard options remain disabled until grade mapping is complete.
6. Once Toddle grades appear in the list, click Edit to map each Toddle grade to its corresponding PowerSchool grade, then click Save changes. You can choose to Refetch the PowerSchool data by clicking the corresponding button on the right.
Note: Each section on the left, except for the Toddle exclusion, includes a Refetch option that pulls the latest data from PowerSchool. Hovering over the Refetch button displays the date and time the data for that section was last fetched.
Initiate the roster sync
Once the sync setup is complete, the dashboard becomes available, and the first sync can be initiated. Before running the sync, ensure the following are created on Toddle:
Year groups
Grading periods
Subjects
Note: To ensure a successful sync, all required users must be assigned to at least one class in PowerSchool. Any staff members or students without class assignments cannot be created via sync.
Configure sync settings
Before initiating the sync, begin with the sync Settings to control how the sync creates, updates, archives, or preserves data. These settings are grouped into five categories: Teacher courses, Classes, Students, and Staff
Note: Changing these settings will not affect any syncs that are under review or already completed.
Map grading periods
Map grading periods in Toddle to the corresponding grading periods in PowerSchool so the sync automatically assigns the right grading period to each teacher course.
Open Grading period mapping, and click Edit to map each Toddle grading period to its corresponding PowerSchool grading period. Once done, click Save to apply.
Note: Grading periods must first be created in Toddle from their dedicated section in the admin portal. For more on setting up grading periods on Toddle, refer to this article. Once created, each Toddle grading period can be mapped to a single PowerSchool grading period.
Map subjects
Map subjects in Toddle to the corresponding subjects in PowerSchool so the sync automatically assigns the appropriate subject to each teacher course.
Open Subjects mapping and click Edit. Map each PowerSchool subject to its matching Toddle subject from the dropdown, then click Save to apply.
Note: Subjects must first be created in Toddle from their dedicated section in the admin portal. Once they exist in Toddle, you can fetch and map PowerSchool data here. Each PowerSchool subject can be mapped to only one Toddle subject.
Map existing roster
If your school created entities such as courses, classes, students, or staff manually in Toddle before setting up the sync, and the same entities also exist in PowerSchool, use this section to link them. This prevents the sync from creating duplicate records.
You can map each Toddle entity to its matching PowerSchool counterpart across the different tabs.
Once the pre-sync configuration is complete, navigate to the Dashboard and click Sync in the top-right corner.
Toddle creates a new sync entry with the status Fetching data from PowerSchool. During this stage, the system pulls data from your PowerSchool portal. Once Toddle finishes fetching, the status changes to Awaiting approval, and a Review button appears.
Toddle also sends an email notification from Syncbot via Toddle to you (the initiator), informing you that the sync is ready for review.
The email subject follows the format “[Action required] Roster sync with PowerSchool for [school] is ready for review” and includes a Go to dashboard button that takes the recipient directly to the sync report.
Review the sync report
Once you enter a sync report, it will display entities across multiple tabs:
Overview: shows a summary table of what the sync will add, edit, archive, or exclude for each entity type.
Added: entities new to Toddle that the sync will create.
Edited: entities the sync will update, either because of changes from PowerSchool or because of manual changes on Toddle that PowerSchool does not reflect.
Note: During the first-time sync, any student profile information is synced automatically, but the sync report does not visually show these fields. In later syncs, if any of the profile information changes in the SIS, those updates appear under the Edited sub-tab within the Student tab.
Archived: entities that will no longer be visible in Toddle once you accept the sync. This happens in two scenarios:
Data was created manually in Toddle, and the corresponding data is not coming through PowerSchool. Unless you map the manually created data to its PowerSchool counterpart using Existing roster mapping, the sync archives it.
The sync originally created the data, and it has since become inactive in PowerSchool. The sync archives it on Toddle to reflect that change.
Excluded: entities you added to either the Toddle exclusion or PowerSchool exclusion list. The sync skips these.
Course codes: Lists the courses that will be created, edited, or archived, including the course name and its corresponding course code.
The course name is pulled directly from PowerSchool, while the course code is internally generated using the PowerSchool course UID and a system-defined prefix. This tab is read-only.
Teacher courses: lists all teacher courses that the sync will create, edit, or archive, along with their grades, subjects, grading period, course code, course type, response language, and levels (for DP).
Toddle pre-fills the Grade(s), Subject(s), Course code, Grading period(s), and All year checkbox columns where applicable; you can update them using the dropdowns if needed.
Depending on the SIS mapping, a course may either have specific grading periods selected or have the All year checkbox enabled. You can update this manually if required.
You must manually select the Course type (only for MYP- subject-specific or interdisciplinary), Response language (only for DP where it is not English), and Level (for DP).
If blueprint course sync is enabled, an additional column will appear for linking teacher courses to blueprint courses. If mapped, the remaining fields become view-only. Refer to the next section to understand more.
Each teacher course inherits its grade level from the students enrolled in its mapped class, so a teacher course without any enrolled students in PowerSchool will not appear here.
Blueprint courses: If your school has requested blueprint course sync, an additional tab will appear for managing blueprint courses. This ideally applies to schools where classes function as courses.
Since PowerSchool SIS does not natively support blueprint courses, Toddle automatically identifies and uses the SIS courses as blueprint courses.
Within the blueprint courses tab, you can:
Review and update synced details such as the associated Grade(s), Subject(s), Course code, and Grading period(s)
Enable the All year checkbox to apply a blueprint course across all grading periods
View all teacher courses linked to a blueprint course
The configured details are automatically reflected in the linked Teacher courses tab in view-only mode. This ensures consistency across all mapped courses while preventing edits at the individual teacher course level.
Classes: lists all classes the sync will add, edit, or archive, along with their teacher course, students, and staff assignments. You can update the Teacher course assignment manually if needed. Each class can be mapped to only one teacher course.
Students: lists all students the sync will add, edit, or archive, along with their grade, mapped classes, and year group. You can update the Year group manually if needed.
Staff: lists all staff members the sync will add, edit, or archive, along with the classes it maps them to. This tab is read-only.
By default, the sync assigns the Basic account user role to the staff at the account level, the Teacher role at the school level, and the Course editor role at the course level.
The sync only includes staff members who map to at least one class in PowerSchool. Administrators and other non-teaching staff, such as IT and library staff, are not fetched through the sync and need to be created manually in Toddle.
Each row on the Teacher courses, Blueprint courses (if applicable), Classes, Students, and Staff tabs has a three-dot actions menu that lets you exclude that specific item from the current sync.
Excluded items will appear greyed out. You can add them back to the sync at any time using the same three-dot menu.
The Changes filter at the top of the page lets you switch between All entries and those with Required actions. Select Required actions to view only the rows that require manual input, allowing for easy identification.
After reviewing the sync report and completing all required mappings, you can either accept or reject the sync.
Action | When to use | What happens | Next steps |
✅Accept sync | The sync report is accurate and matches your PowerSchool data | All changes shown in the sync report are applied to Toddle | Review carefully before accepting. Once accepted, the subject-to-course mapping cannot be modified. |
❌Reject sync | There are discrepancies or data needs to be corrected in PowerSchool | No changes are applied to Toddle | Update the data in PowerSchool, run the sync again, or contact your Toddle buddy |
Note: The Accept sync button stays disabled until you fill in all required fields across the tabs. Any manual mappings configured during the sync are preserved and carried forward in future syncs. Toddle does not overwrite these mappings unless a new change requires your review or you manually update the mapping again.
Set up a daily sync
Once you accept the first sync, you can enable a daily sync to keep Toddle data updated with changes from PowerSchool. The daily sync runs at a scheduled time and updates data from the previous 24 hours.
To enable the daily sync, toggle the Daily sync switch in the header of the dashboard.
Select the time the sync should run each day.
Add one or more administrators to receive email notifications about the sync status. This ensures someone receives an alert if the sync pauses for review.
Administrators added to the Daily sync settings receive one email per sync about the sync status for each school. By default, Toddle sends emails for successful syncs, failed syncs, and syncs that require review, as shown in the screenshots below.
Note: If you prefer to receive notifications only when a sync fails or requires review, ask your Toddle buddy to update this for you.
When a daily sync stops
A daily sync may stop for one of two reasons: it fails, or it pauses awaiting your approval.
Scenario 1: Sync failure
The sync status changes to Failed. This usually happens for one of two reasons:
API response failure: PowerSchool does not respond during the sync. Re-running the sync usually resolves the issue. If it persists, reach out to your Toddle buddy.
Credential or plugin changes: If anyone has updated or regenerated the PowerSchool plugin, the existing credentials may no longer be valid. Share updated credentials with your Toddle buddy. The Toddle team updates the credentials, after which you can re-run the sync.
Note: Reach out to your Toddle buddy if your sync fails.
Scenario 2: Sync awaiting approval
The sync status changes to Awaiting approval, implying that the sync has been completed successfully and is paused for admin review. Two common reasons:
Required fields need manual input: A newly added class or course in the sync may need fields such as subject, level, or grading period before you can accept it. Open the sync report, complete the required mappings across the relevant tabs, and then accept or reject the sync.
The sync detected archived data: If the sync marks classes, students, or staff for archiving, it pauses for review. The Archived column on the Overview tab shows the number of entities Toddle will archive if you accept the sync. Open each tab with a non-zero count, review the entities, and confirm before accepting. If something looks incorrect, click Reject, verify the data in PowerSchool, and run the sync again.
Note: By default, the sync pauses when it finds 1 archived record. If your school regularly archives more records and you would like to increase this limit (up to 10), please contact your Toddle buddy.
Note: If the sync for one school is pending review, all daily syncs across the account are paused until it is cleared.
Manage exclusions
The exclusion list lets you exclude specific entities from the sync in two directions: Toddle exclusion and PowerSchool exclusion. Changes to either exclusion list take effect on the next sync run and do not retroactively change syncs that are under review or accepted.
Toddle exclusion
This section allows for retaining data created manually in Toddle that does not exist in PowerSchool. Adding entries here ensures the sync does not archive them. This is useful for manually created classes, students, or other data managed outside PowerSchool.
To manage the Toddle exclusion list, open Toddle exclusion, switch to the relevant tab, and click Add in the top-right. This pulls in data created directly in Toddle, from which you can select the items to exclude. You can also remove items if you want them to be eligible for the next sync you initiate.
PowerSchool exclusion
This section allows skipping data coming from PowerSchool that should not be created in Toddle. This is useful for classes, students, or staff who are not relevant to Toddle.
To manage the PowerSchool exclusion list, open PowerSchool exclusion, switch to the relevant tab, and click Add in the top-right. This pulls the latest PowerSchool data that is synced, from which you can select the items to exclude. You can also remove items if you want them to be eligible for the next sync you initiate.
Set up sync for a new academic year
At the start of a new academic year, the academic year transition follows a specific flow. Notify your Toddle buddy once you have updated your PowerSchool instance with the new academic year data. Your buddy will then raise a request with the Toddle team.
The Toddle team will:
Create the new academic year in Toddle
Move all staff and students to the new academic year, without assigning them to classes at this stage
Run the first sync for the new academic year
During this sync:
The sync creates new classes
The sync assigns existing users to classes as per PowerSchool data
The sync adds new users and their enrollments
The sync automatically archives users who are no longer active in PowerSchool
After the sync completes, you can review the changes and accept the sync. If you notice any discrepancies, reach out to your Toddle buddy for support.
For DP:
During the academic year transition, the previous year’s DP1 classes transition to the new academic year as DP2 classes, retaining their titles and enrollments.
During the first sync, map new DP2 classes from PowerSchool to the existing DP2 classes using the Existing roster mapping option. Once you accept the sync, Toddle updates class titles and enrollments based on the latest PowerSchool data.
Frequently asked questions
Q. How can I prevent the sync from archiving manually created classes, students, or staff in Toddle?
There are two options. Enable the Preserve [entity] created on Toddle setting in the relevant settings category to protect all manually created entities of that type. Alternatively, add specific entities to the Toddle exclusion list for more granular control. For example, a non-teaching staff member created manually in Toddle stays protected when you add them to the Staff exclusion list.
Q. Why is a class or course not appearing in the sync report?
This usually happens because no students are enrolled in that class in PowerSchool. Toddle inherits grade levels of a class based on the students enrolled in that class, so a class without students cannot get a grade level, and the sync does not pull it in.
Q. What should I do if I encounter an error while uploading the plugin to PowerSchool?
Do not retry uploading the same file. Share a screenshot or description of the error with your Toddle buddy. Depending on your PowerSchool version or configuration, a modified plugin may need to be generated for your school.
Q. Can I test the integration before running it on my school’s live data?
Yes. This is particularly useful for a first-time setup. Ask your Toddle buddy to set up a separate test space where you can run the sync, review the results, and confirm that everything looks correct, all without affecting your school’s actual Toddle data.
Q. How long does a sync typically take?
Most syncs complete within 15 minutes. Avoid making changes to roster data in either system while a sync is in progress. Larger datasets may take slightly longer.
Q. Can I request custom fields, such as medical information, to be synced from PowerSchool?
Yes, if your school needs additional student profile fields synced, such as medical documents, reach out to your Toddle buddy with the specific requirements. They will confirm feasibility and include those fields in your sync.
For more on managing your school’s data after the sync, refer to these articles.
We hope you found what you were looking for. Explore other articles for more!
