How does the integration work? 

Receiving Data

Our servers have to receive the student data before we can process it. There are two main way’s that our current integrations receives data...

1. API: If the SIS has an API, this allows us to REQUEST data directly from your system at will. We make a network request using credentials (e.g. username/password for OnCampus (Blackbaud) or API Key for iSAMS) to get the data.


Example integrations: OnCampus(Blackbaud), iSAMS, Veracross, 3sys.

2. Local export and Send: If the SIS does not have an API (can’t send data over the internet), then what we do is create an export of the data on their local machine, i.e. it saves it to a file on their computer. Then we create a small script (program) which takes that file and sends it over the internet to our servers.

The export is set to run daily to update the exported file on the computer, then a scheduled task is set up to run the script soon after the send the freshly exported data to our servers. This system takes a lot more effort to set up as there is work to be done on the school's end.

Example integrations: Engage

Processing Data

Once we have the data in our servers, we have to process it to transform it from its current structure, into the BOARDINGWARE structure to then save into the database.

This process is basically the same for all integrations, with only the actual transformation of the structure specific to the SIS being the difference. Sometimes the given data does not fit very well into our structure so we try to to mould it as best we can.

Parent/ contact information

The SIS might only provide some contacts (e.g. Parents) so that is all we have to work with, or they might provide ALL contacts and we (try to) filter them down on our end to only pull over main contacts.

Distinguishing day and boarding students

If the integration type has the option “Include Day Students” (which all of them do currently), then that means that the integration can distinguish between Boarding and Day students by some field in the student data. When it is turned off, only current boarding students will be pulled over. If it is turned on, all current students will be pulled over.

It is possible the school might neglect this field in their SIS and not keep it updated, resulting in incorrect information.

Setting up an integration

Enabling the integration

To enable an integration, simply open the Admin Console page within Boardingware, select the ‘Integration’ tab, then click the school’s SIS, and input the required information to start syncing data.

Already have students in boardingware or seeing duplicates? 

When the integration is initially enabled we will attempt to match them to the imported students from the SIS. This process may lead to some double ups (if they don't match successfully). Once the sync is finished, you can view a summary of the result within the "Debugger" tab in the Integrations page. Any potential double up of students is made obvious here and can be merged.

Integration FAQs

How often is data synced?

Pupil information in Boardingware will update automatically with automatic syncs that occur periodically (every 6 hours /nightly) or alternatively, you can perform a manual sync with a single click which will sync pupil information instantly.

Does all data sync in these automatic syncs or is it only selected data?

We refresh all data each time the sync occurs, including student profile photos (if this is available within your integration schema.

Can a school turn off one of the syncing fields? For example: student reference.

As it stands, this is not available to our customers or through our backend. 

What if a school makes changes in Boardingware on information that get synced over with the integration?

These changes will be reverted back to what is in the SIS. It is import to that these core updates are managed within your SIS otherwise you will be double handling the data.

Did this answer your question?