Rippling logoStudyTube logo

Training and certificates

Rippling to StudyTube integration: workers, departments and managers from Rippling in the academy

With an integration between Rippling and StudyTube, every new worker in Rippling automatically gets a StudyTube account, in their department's team, with their manager as team manager and in their own language. After the end date in Rippling the account is removed from StudyTube again.

What the integration does

Organisations that use Rippling for HR and StudyTube for onboarding and mandatory training often load new colleagues into the academy with an export. Departments and managers in StudyTube then lag behind, and contractors get the same licence as employees.

  1. KoppelHet fetches new worker changes from Rippling, on the date they were saved.
  2. Departments become teams in StudyTube, parents first.
  3. An accepted worker gets an account without invitation; on the start date StudyTube sends the invitation.
  4. The manager from Rippling becomes team manager of the worker's team.
  5. After the end date KoppelHet removes the account.
Rippling → KoppelHet → StudyTubeSOURCERipplingTARGETStudyTubeKoppelHetmapping · logging · monitoringRippling → KoppelHet → StudyTubeSOURCERipplingTARGETStudyTubeKoppelHetmapping · logging · monitoring
Out: User with name, work email, title and language · Teams from Rippling departments, with parent department · Team manager from the worker's manager · Licence per employment type

What to watch for with Rippling and StudyTube

  • Rippling only sends webhooks for custom objects, not for workers. KoppelHet therefore reads the worker changes feed, and filters on the date a change was saved. Filtering on the effective date would miss a departure that only takes effect in a month.
  • The worker changes feed is a separate entitlement that the Rippling technical account manager switches on. If you do not have it, KoppelHet compares all workers with StudyTube every day, in pages of at most a hundred.
  • Rippling separates the worker, the employment with department and manager, from the user, the person with name and language setting. KoppelHet expands the user when fetching the worker, so a colleague opens the academy in the language they chose in Rippling.
  • A worker in Rippling goes through the statuses INIT, HIRED, ACCEPTED, ACTIVE and TERMINATED. KoppelHet creates the StudyTube account at ACCEPTED without invitation, and only has StudyTube send the invitation at ACTIVE, so someone who withdraws their acceptance gets no email from the academy.
  • Rippling has CONTRACTOR and EMPLOYEE as employment type, and also PEO, EOR and COR. Per type we agree whether StudyTube assigns a content licence; a contractor can thus follow the mandatory security training without a full licence.
  • Departments in Rippling have a parent department and a hierarchy. StudyTube only creates a child team under an existing team. KoppelHet therefore sends the departments from the top down, with the Rippling ID as external_id, so a renamed department stays the same team.
  • Rippling hides fields the token has no rights for and reports them as redacted. KoppelHet only requests the scopes for workers, users and departments, and does not read a redacted manager field as an empty manager, so a permission problem does not remove team managers.

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, architecture and compliance

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.

Price indication · Basic

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Why not instantly on every change?

Rippling has no webhooks for workers. Fetching changes every hour is well in time for onboarding, because hires are usually recorded in advance.

Do certificates come back to Rippling?

Not in the first version. Rippling has custom fields that can be filled through the API; putting the latest certificate there can follow later as an extension.

Do you use Rippling Learning?

This integration assumes StudyTube is your learning platform. If Rippling Learning also runs, we agree which trainings live where.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Rippling REST API v2 at https://rest.ripplingapis.com with an API token: GET /workers (limit up to 100, cursor, filter on status and updated_at, expand user, manager, department, employment_type), GET /worker-changes filtered on applied_on (scope worker-changes.read, separate entitlement), GET /departments (parent_id, department_hierarchy). Webhooks only for custom objects.
  • StudyTube Academy API v2 with OAuth 2.0 client credentials (write scope): POST /api/v2/users on uid (language, assign_licence, send_invite), POST /api/v2/users/{id}/reinvite, academy-teams/bulk/upsert up to 500 teams with parent, academy-teams/managers/sync and DELETE /api/v2/users/{id}.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in RipplingField in StudyTubeNotes
worker iduidOpaque Rippling ID, fixed per worker
user.name (voornaam, achternaam)first_name en last_name
work_emailemail
titlecompany_role
user.localelanguage
department (met parent_id)Team met external_id en parent
managerTeammanager
employment_type CONTRACTOR of EMPLOYEEassign_licence ja of nee
status ACCEPTED, ACTIVE, TERMINATEDAanmaken, uitnodigen, verwijderen

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.