What do I need to know if I am using the Blackbaud Integration?


Q: What do I need to know if I am using the Blackbaud Integration?


A: If you are considering, or are already set up with, the Blackbaud Integration, it is important to review the following information:


Table of Contents



About the Blackbaud Integration


  • Data Imports: Users, Classes and Roster will automatically be imported from EducationEdge into PowerSchoool Learning.  
  • Import Frequency: Data imports are scheduled to take place three times a day, at 3:15am, 1:15pm and 4:15pm Eastern Standard Time.
  • Parents: Parents (and parent usernames) will be included in data imports.
  • Authentication: At this time, this integration will not allow for SSO.  Blackbaud has decided not to make this available for our initial implementation, but may be willing to revisit this option at a later date. Passwords cannot be passed from Blackbaud to PowerSchool Learning at this time.  
    • Any users not using Google Apps or Active Directory will need to use auto generate usernames and a default password to gain access. Please reach out to our Support Team, and we will set up the default password for your domain.  


  • Note: At this time, PowerSchool Learning does not have plans to integrate with other Blackbaud tools like NetCommunity or FAWeb.


Important Considerations


Below are points to consider before getting started with the Blackbaud integration.


When should I switch to the Blackbaud integration?

  • We recommend that you transition to the Blackbaud integration during Summer break. It is often difficult to map Class import_ids already in PowerSchool Learning to new IDs in Blackbaud.  Switching over during the summer ensures that you can simply leave your old Classes as-is and bring in new Classes for the new school year via import.


What if I have existing user Accounts already in PowerSchool Learning?

  • If you have connected a Google Apps domain with PowerSchool Learning, please make sure that Google Apps email addresses in Blackbaud are in the appropriate email field.  You can see which field this is per user type at the bottom of this article.
  • If you are not using Google Apps there will most likely be a need to map import_ids in your live domain to what is coming over from Blackbaud.  Because Account import_ids in your live domain are different from those in Blackbaud, without a mapping process, duplicate accounts would be created, and the current records deactivated/deleted.
  • Please note: This mapping process does not need to be completed if you are a Google Apps enabled domain and all of your imported users are using Google to sign-in to PowerSchool Learning.


Can Grades push back to Blackbaud?

  • No, our integration with Blackbaud allows for a one-way transfer of information from Blackbaud into PowerSchool Learning.


How do I get started with the Blackbaud integration?

  • It is easy to get started. Just drop a note to powerschoollearningsupport@powerschool.com!


Table of Contents


Configuring Blackbaud Integration


  • Customers will provision the Web Services givingPowerSchool Learning access to your database. For on-premise customers, Web Services will need to be installed on your server.  
  • To set up Blackbaud Integration for your domain, our Integrations Team will need the following details: 
    • Import Host URL
    • Database Number
    • Database Key (This may change after restarting WebServices so please confirm Key in case it has changed)
    • Default Student and Faculty Password
  • As a fail-safe for this integration type, once a user is set to use Google Apps SSO authentication, their authentication type can only be adjusted manually.  If a user is not automatically set to this authentication type via the import, the user can be set manually from within your domain, and subsequent imports will not change their authentication type.

  • The School ID field in Blackbaud (which you can find by viewing/editing a School) must be greater than 3 characters, otherwise, it will not be imported into PowerSchool Learning.  This field maps to the Organization name field in PowerSchool Learning, which has a minimum character requirement of 3.


Table of Contents


PowerSchool Learning Domain Settings


  • First, you'll need to set up your Blackbaud Config page.  To do so, navigate in your domain to Manage Domain (gear icon) -> Blackbaud Config.  You will be setting up the following information:
    1. School, Year, Session and Term
    2. Email address contact field for Teachers, Students, and Parents
    3. Parent relationships: please list all relationship types which PowerSchool Learning should consider to be parents (i.e. Father, Mother, etc.).



  • If you ever make changes in Education Edge (for example, adding a new School Year) and you don't see it in the Blackbaud Config in PowerSchool Learning, click the Refresh Cached Values button in the bottom right.


  • Make sure the “Autogenerate usernames at time of import” option is turned on while using the Blackbaud Integration (through the Manage Domain > Domain Settings > General tab). Checking this option will ensure that an imported user without a username or Google email address will not fail to be imported.  If the user fails and is the owner of a class, roster and class creation will also fail. This setting acts as a fail-safe for users who do not have a username stored in Blackbaud.



  • Passwords are not passed via the Blackbaud Integration.  PowerSchool Learning can set default passwords for you.  Be sure to check the option that reads "Imported passwords are temporary" prior to running an import if you would like imported passwords to be temporary.  This option can be adjusted through the Manage Domain > Settings > Users area.



  • At this time, School Years are pulled from Blackbaud via the year_id, not the year_description. The reason behind this is that the year_id is guaranteed to be unique, while the year_description is not. We recommend that you make a one-time change to the name of every new School Year added into PowerSchool Learning so rather than seeing an id, you can put the actual name of the year.

          In order to do this, please follow these instructions:

          1) Navigate to Manage Domain (small gear icon on the right) -> School Years
          2) Click Manage School Year next to a year and then Edit
          3) Change the Name to the actual name of the year, rather than the id (i.e. High School 2014)
          4) Click Save




  • School Years are unique per School in Blackbaud, so if you have four Schools in Blackbaud you would see four School years in PowerSchool Learning.



Table of Contents




Below are steps to follow if you are experiencing issues with the Blackbaud importer tool:

  1. First, ensure that Web Services is running in Blackbaud.
  2. If you are receiving a "404" error (your imports are coming through, but when you view the Logs tab in PowerSchool Learning, you receive only 1 error with code 404), try refreshing Web Services.  To refresh Web Services, if your instance of Blackbaud is on-premise first navigate to the Education Edge Web Services screen and click Configure the service.  On the Configure the service screen, click the Refresh button, which is the third icon on the right with two arrows.  If your instance of Blackbaud is hosted, then simply open Web Services and it will be refreshed automatically.
  3. If your imports are not running as they are supposed to, please visit the Web Services page in Education Edge. If you are a hosted customer, revisions may be available that will run automatically. If you are on-premise, you will have to click the button to run the revisions. In many cases this will resolve the issue.
  4. Ensure in your firewall that port 443 is open to allow outbound HTTP connections.
  5. Ensure TCP ports 9350 to 9354 are open in your firewall to allow outgoing TCP communication.
  6. Reach out to powerschoollearningsupport@powerschool.com and have us confirm your Blackbaud Web Services credentials (Web Services URL, Database Number, Database Key). 
  7. If you've complete all of the above steps and are still having issues with the Blackbaud import, please uninstall and reinstall Web Services.  Note that this will generate a new Database Key, Number, and Web Services URL, which you will need to pass on to PowerSchool Learning Support.


Table of Contents




User Mappings

PowerSchool Learning  Values Blackbaud
import_id user -> ea7_record_id
first_name user -> first_name
middle_init user -> middle_name
last_name user -> last_name
suffix ''
nickname user -> nickname
login user -> online_user_id
password Default must be set before creation 
email Contact field selected when configured 
user_type "T","S" or "P"
organization_id year -> school_id
enabled "1"
display_id user -> user_defined_id
google_email_address Checks that the email listed in email is a part of the list of Google domains and if it is lists it here



Faculty need to be associated with a class in order to be pulled into PowerSchool Learning. To bring faculty over not associated with a class, you can create a dummy Administration Class for this academic year/session and associate the non-teaching faculty with that class.

Parents must be associated with a child in Blackbaud in order to be pulled into PowerSchool Learning.


Organizational Mappings

PowerSchool Learning  Values Blackbaud
eclass_id year -> school_id
name year -> school_name



Class Mappings

PowerSchool Learning  Values Blackbaud
import_id year -> ea7_academic_year_id + "-" + course -> course_id + "-" + course -> section
name course -> course_name
shortname Auto-generated on creation.
description ""
code course -> course_id + "-" + course -> section
year year -> ea7_academic_year_id
teacher_id First listed in course, adjusted to handle co-teachers
organization_id section year -> school_id

In Blackbaud, the first teacher listed on a class will be pulled into PowerSchool Learning as the Primary teacher, while the others will be Co-Teachers.


For classes to be pulled into PowerSchool Learning, they must be a part of a selected scope, which you can choose by navigating to Manage Domain -> Blackbaud Config.

Classes Custom Mappings

PowerSchool Learning Values Blackbaud
eclass_id see import id in class section above
custom_field_1 course -> ea7_class_id (the lowest available one is chosen, which should correspond with the earliest term (scope) selected in the Blackbaud Config in your domain)
custom_field_2 ea7_term_id (scope): ea7_class_id (for each term)




For each section at a school we make a request to get the roster for that section.

PowerSchool Learning Values Blackbaud
eclass_id see import id in class section above
user_id see import id in student section above
role  "S"



Grade Levels

PowerSchool Learning Values Blackbaud
import_id user -> ea7_record_id
grade Level person -> grade_level



Please note: In Blackbaud, you can either drop or withdraw a student from a class.  When you withdraw a student from a class, their grades and class history are kept.  You will see their roster entry still present if you navigate to the Class roster from the Class view, but if you first navigate to the User's page in Blackbaud and then view their Classes, you will not see the class in question.  In this case, the user will continue to be brought over via the integration as part of the class roster.

When you drop a student from a class, all of their related class history (including grades) is deleted, and they no longer will appear on the roster.  In addition, they will not be brought over via the integration as part of the class roster.


Parent Child

Parent relationships chosen within the Blackbaud Config area will automatically link parents to their associated children. You can avoid importing parents by leaving the parent relationships list blank.

Table of Contents