Training and certificates
Sage People to StudyTube integration: team members as StudyTube users and certificates back as training records
With an integration between Sage People and StudyTube, every team member from Sage People automatically gets a StudyTube account in the team of their department, and that account is removed after departure. Earned StudyTube certificates come back as completed training in Sage People, through the Payflow upload for training data.
What the integration does
Organisations that use Sage People as their HR system and StudyTube as their learning platform create new colleagues in StudyTube by hand and clean up leavers later. Earned certificates stay in StudyTube, so HR puts two systems side by side for an audit or development review.
- HR records a new team member, a department change or an end date in Sage People.
- KoppelHet reads the changed team members and employments through the Sage People Salesforce API.
- The departments go to StudyTube as teams, then the user on their fixed uid in the right team.
- After the end date KoppelHet removes the StudyTube account, with StudyTube's backup switched on.
- New certificates go daily as a CSV file to Payflow, which imports them as training records.
Back: Earned certificates with name and date as completed training
What to watch for with Sage People and StudyTube
- StudyTube does not store a contract end date. A date in the past removes the user immediately, and a future date is ignored. KoppelHet therefore does not send the end date from Sage People at creation, but removes the account itself on the day after the employment ends.
- StudyTube accepts teams in one call up to five hundred at a time, but a child team only if the parent already exists. KoppelHet therefore sends the department structure from Sage People top down, so every team ends up under the right parent.
- Certificates in StudyTube have a name, a completion date and a flag whether they have been synced, but the API has no function to set that flag. KoppelHet therefore keeps track itself of which certificates have already gone into a Payflow file.
- Sage People imports training data from external suppliers through Payflow, as CSV on the Payflow SFTP site, creating new training records for team members who had none yet. KoppelHet delivers the StudyTube certificates in that format, so they appear on the team member's training page.
- A Payflow service in Sage People contains either an upload or a download, never both. This integration only needs an upload service: users go to StudyTube through the API, certificates come back through Payflow.
- Sage People recommends a separate integration user with read-only field access for the API. KoppelHet needs no more to create StudyTube accounts; salary fields are not in the permission set, so the integration never sees them.
- StudyTube looks up a user by uid and updates them if they already exist. KoppelHet uses the fixed ID of the team member in Sage People as uid, so a new work email after a name change does not create a second account.
How we build and run it
- The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
- Every sync and every error is visible in the functional log; on an error your administrator is notified.
- A change that cannot go through is not half-applied but queued for another attempt.
- KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
- After go-live we manage the integration and adjust it when your process changes.
- The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.
Implementation and price
This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.
A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.
Frequently asked questions
Does pay data go to StudyTube?
No. StudyTube receives name, work email, job title, employee number and team. The integration's Sage People user cannot see pay.
When is a leaver's StudyTube account removed?
On the day after the end date in Sage People, or later if you choose a retention period. StudyTube makes a backup first.
Can external training requests from StudyTube go along too?
Not in the first version. Sending attended external training with costs to Sage People can be added later as an extension.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Sage People through the Salesforce REST API (SOQL on the team member and employment objects, filtered on LastModifiedDate) with an External Client App (client credentials), Integration licence, Minimum Access – API Only profile and a permission set with read-only fields. Back through a Payflow upload service (CSV on the Payflow SFTP site; new Training Records where needed).
- StudyTube Academy API v2 with OAuth 2.0 client credentials (scopes read and write): POST /api/v2/users on uid (email, first_name, last_name, company_role, employee_number; contract_end_date is not stored), POST /api/v2/academy-teams/bulk/upsert (up to 500 teams, parents first), DELETE /api/v2/users/{id} with skip_backup off, GET /api/v2/certificates (name, completion_date, synced, created_at).
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Sage People | Field in StudyTube | Notes |
|---|---|---|
Team member ID (Salesforce) | uid | Fixed key for updates and removal |
Employee Number | employee_number | |
Werkadres | email | |
Functie | company_role | |
Afdeling | Team (academy-teams/bulk/upsert) | Parent teams first |
Einddatum dienstverband | DELETE /users/{id} na de einddatum | |
certificate name en completion_date | Trainingsrecord voltooid met naam en datum | Through Payflow upload |
Related
Sage People → Active Directory
Sage People to Active Directory integration: domain accounts for the Dutch office
Sage People → ADP iHCM
Sage People to ADP iHCM integration: salary records, bonuses and leavers of the Dutch payroll company to ADP
Sage People → AFAS Profit
Sage People to AFAS integration: Dutch employees and salaries from Sage People in AFAS Profit
Sage People → Arbodienst (SIVI)
Sage People to the occupational health service via SIVI: absence records as absence reports