Deel logoFreshservice logo

HR to ITSM

Deel to Freshservice integration: requesters per country and requests for employees, EOR and contractors

With an integration between Deel and Freshservice, everyone working through Deel becomes a requester in Freshservice, with department, country and manager, and KoppelHet submits an onboarding request when someone enters onboarding in Deel and an offboarding request on the last working day of their last contract. The type of working relationship from Deel determines which onboarding kit Freshservice selects.

What the integration does

Organisations that hire people in several countries through Deel and use Freshservice for IT often only hear about a new contractor or EOR employee by email after signing. The onboarding form in Freshservice then does not know whether a laptop must go abroad, and a contract that ends does not reach the service desk by itself.

  1. Deel reports a new or changed person; KoppelHet checks the signature and fetches only the fields it needs.
  2. KoppelHet creates or updates the requester in Freshservice, with the location of the country.
  3. As soon as the status is onboarding, KoppelHet submits the onboarding request with the type of working relationship.
  4. When the last running contract gets a last working day, the offboarding request follows.
  5. After that day KoppelHet deactivates the requester.
Deel → KoppelHet → FreshserviceSOURCEDeelTARGETFreshserviceKoppelHetmapping · logging · monitoringDeel → KoppelHet → FreshserviceSOURCEDeelTARGETFreshserviceKoppelHetmapping · logging · monitoring
Out: Requester with work email, job and department · Location per country · Manager as reporting manager and initiator · Onboarding and offboarding request

What to watch for with Deel and Freshservice

  • Deel has contractors, EOR employees, PEO and own employees among others. Freshservice selects the mandatory items of an onboarding request based on the fields filled in. KoppelHet fills in the type of working relationship, so a contractor with their own laptop only gets accounts and an EOR employee also gets hardware.
  • Someone can have several contracts in Deel, each with its own last working day. KoppelHet only creates an offboarding request when the last running contract ends, so a contractor who switches to an EOR contract keeps their access.
  • Deel returns the manager with their work address. KoppelHet uses a filter on that address to look up the requester in Freshservice and sets them as reporting manager and as initiator of the request, even when the manager works through Deel too.
  • People through Deel often work in a country without an own office. KoppelHet creates a location per country in Freshservice with that country's time zone, so the service desk sees where the laptop must go and notifications arrive at local time.
  • After ten failed deliveries Deel disables a webhook subscription, and it then has to be re-enabled by hand. KoppelHet monitors the subscription and compares all active people in Deel with Freshservice every day, so a disabled webhook does not leave a leaver behind.
  • The person record in Deel also contains data such as a social security number. KoppelHet uses a field list to request only name, work address, department, country, manager, type and dates, so the rest never reaches the KoppelHet platform.
  • A draft or an invitation not yet accepted already exists as a person in Deel. KoppelHet only creates a requester from the onboarding status onwards, so Freshservice does not fill up with people who never start.

This integration is also part of joiner, mover, leaver.

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

Does Freshservice have a Deel integration?

We found none from Freshworks or from Deel; only generic templates on automation platforms. KoppelHet builds on the APIs of both sides.

Do contractors also get a requester?

Yes, everyone who uses IT. The type of working relationship comes along, so the request for a contractor only covers accounts if that has been agreed.

Technical details for IT

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

  • Deel through GET /people with fields (worker_id, preferred_first_name, last_name, work_email, job_title, department, country, direct_manager, hiring_type, hiring_status, employments with termination_last_day) and the filters hiring_statuses and hiring_types. Webhooks with x-deel-signature (HMAC-SHA256) and x-deel-hmac-label, 200 within 30 seconds, ten attempts and then disabled; duplicate delivery recognised on event_id.
  • Freshservice through the API v2: requesters (create, filter, DELETE to deactivate), POST /api/v2/onboarding_requests and /api/v2/offboarding_requests with initiator_id and fields (for example cf_department, cf_location, cf_separation_type; the names depend on the form). initiator_id only with admin privileges.

Which fields are transferred

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

Field in DeelField in FreshserviceNotes
worker_idEigen aanvragersveld (custom_fields)Fixed key
preferred_first_name en last_namefirst_name en last_name
work_emailprimary_email
job_titlejob_title
department.namedepartment_ids
countrylocation_id en time_zone
direct_manager.work_emailreporting_manager_id en initiator_id
hiring_typeVeld in het onboardingverzoekDetermines the onboarding kit
employments[].termination_last_dayOffboardingverzoek, daarna deactiveren

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.