Ashby logoDeel logo

Recruitment to HR

Ashby to Deel integration: hires at the own entity as direct employee in Deel

With an integration between Ashby and Deel, a candidate hired in Ashby for the own legal entity becomes a direct employee in Deel, with team, entity, job title, start date and salary from Ashby. KoppelHet creates person and contract in one go, without Deel inviting the new employee weeks before the start.

What the integration does

Organisations that recruit in Ashby and use Deel for people in several countries still enter people who start at the own entity, and are in Deel only as an HR record, in Deel by hand, with team and seniority.

  1. The offer is accepted and the candidate is marked as hired in Ashby.
  2. KoppelHet looks at the legal entity on the offer and only takes over hires for the own entity.
  3. Team, department and seniority are looked up in Deel.
  4. KoppelHet creates the direct employee, with a contract and without an invitation.
  5. The Deel ID is stored with the application; errors reach HR as an alert.
Ashby → KoppelHet → DeelSOURCEAshbyTARGETDeelKoppelHetmapping · logging · monitoringAshby → KoppelHet → DeelSOURCEAshbyTARGETDeelKoppelHetmapping · logging · monitoring
Out: Candidate with name and email · Offer with start date, salary and custom fields · Opening with employment type and location · Direct employee with contract in Deel

What to watch for with Ashby and Deel

  • According to Deel's current guide, you create an own employee, paid through your own payroll, with one call that creates person and contract at the same time. Team, legal entity, nationality, country, seniority, job title, start date and salary with currency are required.
  • Ashby has no fixed field for nationality, and the legal entity is not on an offer by default. We add both as custom fields to the offer form; if either is missing, KoppelHet creates nothing and HR gets an alert.
  • A salary in Ashby is an amount with currency, without a period. Deel assumes a salary is annual if you give no period. KoppelHet therefore always sends a period, agreed per opening, so a monthly amount does not end up in Deel as an annual salary.
  • The opening in Ashby knows FullTime, PartTime, Intern, Contract and Temporary. Deel only creates a direct employee as full-time or part-time, and part-time requires a percentage. KoppelHet only carries over FullTime and PartTime and reads the percentage from a custom offer field; the rest stays with HR.
  • A location in Ashby has the country as a name, such as United States, not as a code. KoppelHet converts that name to the country code for Deel and stops on an unknown name, so a hire does not end up in the wrong country.
  • If you leave out the invitation, Deel sends the new employee an invitation straight away. KoppelHet switches the invitation off, so nobody gets mail from Deel weeks before the start date; HR invites when it suits.

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 Deel then also run payroll?

No. According to Deel a direct employee is paid through your own payroll; Deel is then the HR system.

Does the offer letter go to Deel?

Not in the first version. Carrying over files 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.

  • KoppelHet reads Ashby through the candidateHire webhook (Ashby-Signature; data.offer.latestVersion with startDate, salary with value and currencyCode, customFields and openingId) and the API for opening (employmentType, locationIds) and location (address.postalAddress.addressCountry).
  • To Deel through POST /rest/people (version 2026-01-01, scope people:write) with data.client (team.id, legal_entity.id, department.id), data.employee (email, country, first_name, last_name, nationality, external_id), data.employment (type FULL_TIME or PART_TIME, job_title, seniority, start_date, part_time_percentage), data.compensation_details (salary, currency, scale) and data.invitation.action DISABLE. Seniority from GET /lookups/seniorities, team from GET /teams.

Which fields are transferred

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

Field in AshbyField in DeelNotes
candidate.nameemployee.first_name en employee.last_name
candidate.primaryEmailAddressemployee.email
location addressCountry (opening)employee.countryCountry name converted to a code
Eigen aanbodveld nationaliteitemployee.nationality
offer.latestVersion.startDateemployment.start_date
job.titleemployment.job_title
opening employmentType (FullTime, PartTime)employment.type (FULL_TIME, PART_TIME)
offer salary (value, currencyCode)compensation_details.salary en currency
Eigen aanbodveld juridische entiteitclient.legal_entity.idLookup table
application.idemployee.external_id

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.