Training and certificates
Factorial to StudyTube integration: teams and team leads from Factorial, earned certificates back as training
With an integration between Factorial and StudyTube, every employee in Factorial automatically gets a StudyTube account in the same teams as in Factorial, with the team leads as team managers. When they earn a certificate in StudyTube, it then appears as a completed external training on them in Factorial.
What the integration does
Organisations that use Factorial for HR and StudyTube as learning platform maintain teams twice and only see certificates in StudyTube. The training overview in Factorial therefore misses everything employees achieve online in the academy.
- Factorial reports a change; KoppelHet fetches the employee and their teams.
- The teams from Factorial become teams in StudyTube, from the top layer down.
- The employee joins all their teams; the team leads become team managers.
- Every day KoppelHet fetches new certificates and records them as completed external training in Factorial.
- On termination KoppelHet removes the account after the end date; if the termination is reversed, it comes back.
Back: Earned certificates with completion date as external training
What to watch for with Factorial and StudyTube
- Teams in Factorial can be nested, with a parent team and a depth per team. StudyTube only creates a child team under a team that already exists. KoppelHet therefore sorts the teams by depth and sends them layer by layer, with the Factorial ID as external_id.
- An employee can be a member of several teams in Factorial, and per team one or more members are lead. KoppelHet puts the employee in all those teams in StudyTube and makes the Factorial leads team managers per team, so every lead only sees their own team's progress.
- Factorial has separate notifications for a termination and for reversing it. If a termination is reversed after the account was already removed, KoppelHet reactivates the same StudyTube account on the Factorial ID, instead of creating a new account.
- Factorial retries a failed webhook up to twenty times in 48 hours and then disables the subscription. Notifications have no unique ID per delivery. KoppelHet therefore processes them on the employee ID, so a repeated notification does not cause a double team change, and compares everything once more every day.
- Factorial has external trainings with a provider. KoppelHet creates one external training per StudyTube certificate type with StudyTube as provider, and registers every employee who earns the certificate as a completed participant with the date from StudyTube.
- A participant in Factorial belongs to a session, and Factorial can send a notification on adding. KoppelHet adds employees to a self-paced session without notification, so nobody gets an invitation for a certificate they already have.
- StudyTube lists certificates with a filter on creation date. KoppelHet remembers up to which date it has processed certificates, so a certificate only reaches Factorial once, even if the daily run fails once.
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
Do we need the Factorial training module?
Only for certificates back. Accounts and teams in StudyTube also work without that module.
Does the PDF certificate also go to Factorial?
Not in the first version: name and date do, the file does not. Sending the PDF as an attachment can follow later as an extension.
What happens to teams that only exist in StudyTube?
KoppelHet leaves them alone. Only teams with a Factorial ID as external_id follow Factorial.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Factorial API (version 2026-10-01) with OAuth 2.0: webhooks for employees (create with contracts, updates, terminates, unterminates), GET /resources/teams/teams (employee_ids, lead_ids, parent_team_id, depth), employees and contract versions. Webhooks up to 20 attempts in 48 hours, then disabled. Back through /resources/trainings/trainings (external, external_provider), sessions (selfpaced), session_access_memberships/bulk_create (notify false), session_attendances/bulk_update (completed) and training_memberships/{id} (training_completed_at).
- StudyTube Academy API v2 with OAuth 2.0 client credentials (read and write scope): POST /api/v2/users (create, update or reactivate on uid), academy-teams/bulk/upsert up to 500 teams with parent, academy-teams/bulk/membership with keep_existing_teams, academy-teams/{id}/managers/sync, DELETE /api/v2/users/{id} and GET /api/v2/certificates (created_at, name, completion_date, user_id).
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Factorial | Field in StudyTube | Notes |
|---|---|---|
employee id | uid | |
first_name en last_name | first_name en last_name | |
email | email | |
Functie uit de contractversie | company_role | |
teams (parent_team_id) | Teams met external_id en parent | |
lead_ids van een team | Teammanagers van dat team | |
Beëindiging en terugdraaien | DELETE na de einddatum, POST /users om te heractiveren | |
Certificaat name | Training (external, external_provider StudyTube) | Return path to Factorial |
Certificaat completion_date | training_completed_at |
Related
Factorial → 4PS Construct
Factorial to 4PS Construct integration: fitters and site managers with their cost centre as a dimension in 4PS
Factorial → Active Directory
Factorial to Active Directory integration: domain accounts from Factorial
Factorial → ADP iHCM
Factorial to ADP iHCM integration: contract versions and terminations of the Dutch entity to ADP
Factorial → AFAS Profit
Factorial to AFAS integration: employees and contracts from Factorial in AFAS Profit Payroll