The student information system stays the system of record. Salesforce integrates with Banner, Colleague, Jenzabar, and PeopleSoft only through supported APIs or a hub the institution owns, never through direct database writes. Catalog flows from the SIS to Salesforce, enrollments and payments flow back, and learner identity flows both ways. ElevateActual agrees the design with the SIS owner first.
What Is the One Rule?
Every integration between Salesforce Education Cloud and a student information system follows one rule: the SIS remains the system of record for the student, the term, the course, the enrollment, and the account balance. Salesforce reads from it and writes to it only through interfaces the SIS vendor supports or the institution has contracted for. Nobody writes to a Banner, Colleague, Jenzabar, or PeopleSoft table directly, no matter how convenient the credentials look.
The reason is not purity. Direct writes bypass the validation the SIS runs, break when the vendor patches the schema, void vendor support, and leave the registrar unable to explain where a record came from. UNE Online's storefront runs beside Banner on exactly this basis: Banner is the system of record, integrated only through supported Banner APIs, never direct database writes.
What Flows Each Way?
Three kinds of data cross the boundary, each with a natural direction.
- Course catalog, from the SIS to Salesforce. Programs, courses, sections, terms, instructors, and seat counts originate in the SIS and land on
LearningProgram,LearningCourse,CourseOffering, andAcademicTerm. Noncredit offerings that exist only in Salesforce are fine; the ones the SIS knows are mastered there. - Enrollments and payments, from Salesforce to the SIS. When a learner applies, registers, or pays on a Salesforce storefront or portal, the resulting
IndividualApplication,CourseOfferingParticipant, and order records are written back so the SIS can post the enrollment and finance can post the payment. - Learner identity, in both directions. A new learner is usually created in Salesforce first, by an inquiry or a guest checkout. The SIS issues the student ID, which comes back to the Person Account and becomes the shared key. Why that key matters is covered in the Education Cloud data migration checklist.
Write these three flows down with their field lists before anyone opens a tool. Most integration overruns come from a fourth flow someone assumed and nobody specified.
How Does Banner Integrate?
Banner institutions have two supported paths. The first is Ellucian Ethos, the vendor's integration platform, which exposes Banner data through Ethos APIs and a common data model. The second is an integration hub the institution already owns and operates. We have worked with institution-contracted hubs such as Axiom and with iPaaS tools such as Jitterbit, in each case as the institution's tool rather than ours. Campus IT owns the hub; our work is the Salesforce side: the objects it writes to, the external IDs it matches on, and the Flows that react when a record arrives.
The Banner-specific trap is term and section identity. Banner's term codes and course reference numbers are the keys the registrar thinks in, so they belong in external ID fields on AcademicTerm and CourseOffering, exactly as Banner formats them.
How Does Colleague Integrate?
Colleague institutions use either Colleague's own web API connector or Ethos, since Colleague and Banner share the Ethos platform. The pattern matches Banner: catalog in, enrollment and payment out, identity both ways, with the institution's integration team owning the connector and ElevateActual owning the Salesforce side. The Colleague-specific trap is the person record. Colleague's person ID is often issued at inquiry, so decide whether Salesforce creates the person and receives the ID, or Colleague creates the person and Salesforce receives the record. Either works; doing both produces duplicates.
How Does Jenzabar Integrate?
Jenzabar institutions most often integrate through staging tables with scheduled ETL in both directions. The institution's database administrator provisions tables beside Jenzabar that Salesforce may read and write; scheduled jobs on the Jenzabar side move data between those tables and the live schema, applying Jenzabar's own validation on the way in. Salesforce never touches the live tables.
This is the pattern we built for a health-sciences university with graduate and doctoral programs that moved recruitment and admissions off TargetX onto standard Education Cloud. Admitted students flow from IndividualApplication into the staging tables, Jenzabar's jobs pick them up, and the admissions office no longer re-keys admits. The Jenzabar-specific trap is schedule drift: if the Salesforce job runs before the Jenzabar job finishes, Salesforce reads yesterday's data and nobody notices for a week. Agree the schedule, add a run timestamp to each table, and have Salesforce check it.
How Does PeopleSoft Integrate?
PeopleSoft Campus Solutions integrates through Integration Broker, its web services layer, or through MuleSoft, which Salesforce owns and many PeopleSoft campuses already license. Integration Broker exposes component interfaces as services; MuleSoft gives the integration team a managed layer with connectors for both ends. The PeopleSoft team owns the services and their security, and ElevateActual owns the Salesforce objects and automation they map to. The PeopleSoft-specific trap is effective dating: PeopleSoft keeps history as effective-dated rows, and a naive integration sends every row. Decide which effective date Salesforce needs, usually the current one, and filter at the source.
Where Does Canvas Fit?
Canvas is the learning management system, and in most designs it is an enrollment target rather than a source. Once a learner is enrolled, in the SIS for credit or in Salesforce alone for noncredit, Canvas needs a user and a course enrollment. Canvas supports this through its REST API and its SIS import, and the LMS administrator owns both. For noncredit programs that never touch the SIS, a Flow on CourseOfferingParticipant can trigger the Canvas enrollment directly, one reason we keep enrollment automation in Flow, as described in Flow-first automation for enrollment.
Which Path, Who Owns It, and How Fast?
Latency is a design choice, not a product limit; every path below can be scheduled or made near real time if the institution's team can operate it that way.
| System | Typical path | Who owns the path | Typical latency |
|---|---|---|---|
| Banner | Ellucian Ethos APIs, or an institution-owned hub (for example Axiom, or an iPaaS such as Jitterbit) | Campus IT; ElevateActual owns the Salesforce side | Near real time for identity and enrollment; nightly for catalog |
| Colleague | Colleague web API connector or Ethos | Campus IT; ElevateActual owns the Salesforce side | Near real time or scheduled, by flow |
| Jenzabar | Staging tables with scheduled ETL in both directions | Institution DBA runs the jobs; ElevateActual defines the tables and the Salesforce side | Scheduled, hourly to nightly |
| PeopleSoft Campus Solutions | Integration Broker services or MuleSoft | PeopleSoft team, or the MuleSoft team where one exists | Near real time through services; scheduled through batch |
| Canvas | Canvas REST API or SIS import, as an enrollment target | LMS administrator | Minutes through the API; nightly through SIS import |
| Any SIS, interim | Daily file push to and from a secure folder | Campus IT runs it; retirement date agreed in writing | Daily |
What Does the Storefront Need From the SIS?
A continuing education storefront on Salesforce Commerce raises the stakes, because money is involved. We build what we call Commerce on Core: B2B or D2C Commerce on the Salesforce Platform with an LWR Experience Cloud storefront, connected to Education Cloud so that checkout creates the enrollment. The storefront needs catalog and seat counts from the SIS; the SIS needs the enrollment and the payment reference back. The campus payment processor, TouchNet or Transact CashNet, stays where it is and the storefront integrates with it. The storefront-specific trap is seat counts: a nightly cache oversells a popular section by the end of a registration day, so bring seat counts in near real time or hold a Salesforce-side reservation the SIS confirms.
What If the Real-Time Step Is Not Ready at Go-Live?
It often is not. The Salesforce build finishes on schedule and the campus integration team is three projects deep. The interim pattern we use is a daily file push that the institution's IT runs: an export from Salesforce to a secure folder each morning, an import into the SIS by the campus team, and a return file with student IDs and posting results the next day. It is not elegant. It is supportable, auditable, and keeps the SIS as system of record on day one.
Two conditions make it safe. The file layout is the field list the real-time integration will use, so nothing is redesigned later. The retirement date is in the project plan with an owner, because an interim file that works will otherwise run for years. University of Denver's DU Learning Exchange is launching after DU completes its identity and SIS integration steps, the other acceptable answer: sequence the launch behind the integration. Portal implications are covered in building an applicant portal on standard Education Cloud.
What to Agree With the SIS Owner Before Building
We work through this list with the registrar, the SIS administrator, and campus IT before building. Each item prevents a specific late surprise.
- System of record for each entity: student, term, course, section, enrollment, payment, noncredit offering. Prevents two systems both owning the enrollment.
- The identity key and who issues it. Prevents duplicate learners.
- The supported interface and its version, with the vendor documentation and the institution's license. Prevents a design that depends on an interface nobody has paid for.
- The field list per flow, with transformations. Prevents the fourth flow nobody specified.
- Schedule and latency per flow, including what happens when a job fails and who is paged. Prevents schedule drift.
- Error handling and reconciliation: where rejected rows go, who reviews them, and the daily count proving both sides match. Prevents silent loss.
- A test SIS environment with realistic terms and sections. Prevents testing against production.
- Security and credentials: a named integration user, least privilege, a rotation owner. Prevents a shared admin password in a Flow.
- The interim plan and its retirement date. Prevents a permanent interim.
- Who supports it after launch, named on both sides. Prevents the integration becoming nobody's job.
Treat the signed list as a living document. Integrations are never done done: the SIS gets patched, the term structure changes, and the list is where the next change gets recorded.
Questions We Hear
Can Salesforce replace our SIS?
No, and we do not design as if it could. Education Cloud is a CRM and engagement platform with a learner, program, and enrollment model; the SIS remains the system of record for academic and financial records, degree audit, and compliance reporting. Recruitment, continuing education commerce, advising, and service happen in Salesforce while the SIS keeps the official record.
Do we need MuleSoft?
Not necessarily. MuleSoft is a strong choice when the institution already licenses it or plans several integrations beyond Salesforce. Many institutions already run an integration hub or an iPaaS, and we build to that. Jenzabar campuses usually do well with staging tables. Pick the tool that the team operating it for the next five years already knows.
How long does an SIS integration take?
The Salesforce side of a catalog-in, enrollment-out integration takes weeks once the field list is agreed. The campus side depends on the integration team's backlog and whether a test SIS environment exists, which is usually the long pole. Agreeing the checklist above in the first month is the best predictor of being ready at go-live rather than running on an interim file.
What if our SIS vendor says they have a Salesforce connector?
Evaluate it like any other supported path: which entities, which direction, what latency, what error handling, which license. Vendor connectors are often built for recruitment and may not cover noncredit enrollment or payment write-back. Where a connector fits, use it; where it does not, the supported API or staging-table pattern beside it is still better than writing to the database.
Who owns the integration after go-live?
The institution owns the SIS side and the integration layer it contracted for; the Salesforce administrator owns the Salesforce side. ElevateActual documents both ends, trains the administrator on the Flows and the reconciliation report, and stays available through the first term. Named people on both sides are written into the checklist, so a failed job on a Monday morning has a known owner.

