Before you start
This works only if you run hiring in Deel's own hiring module. If another ATS sends hires into Deel, connect that ATS instead.
You need a Deel user who can open the Developer area and create organization tokens. Deel's guide does not name the exact role, so ask your Deel admin if you can't see it.
Deel's hiring module must be turned on for your organization. If it is off, Deel refuses the connection.
You will paste two things into Metaintro:
A Deel API token
Later, the signing key Deel shows when you add a webhook
Create the credential in Deel
These steps follow Deel's guide to API tokens.
In Deel, go to More > Developer.
Open the Access Tokens tab.
Select Generate new token.
Choose Organization token.
Select these scopes:
ats:read,ats:write,ats.applications.notes:write,worker:read,worker:writeandorganizations:read.Review your settings and select Generate.
Copy the token and keep it somewhere safe until you paste it into Metaintro.
Connect in Metaintro
In Metaintro, go to Settings > Integrations.
Choose Deel.
In API token, paste the token you created.
Select Connect.
Then add the webhook, so stage changes reach Metaintro quickly. These steps follow Deel's guide to ATS webhooks.
In Metaintro, copy the Webhook address shown on your Deel connection.
In Deel, go to Organization settings > Developer > Webhooks.
Select Add endpoint and paste the webhook address.
Select the ATS events
ats.application.createandats.application.transitioned, then save.Copy the signing key Deel shows for the new webhook.
Back in Metaintro, paste it into Signing token and select Save token.
Then map your jobs, set your rules, check the preview and go live.
What Metaintro sends and reads
Metaintro only sends people who chose to share their profile with you for a specific job.
Jobs: Metaintro reads your open, paused, draft and approved jobs so you can map them.
Candidate: each person is added with their name, email and phone. If someone with the same email is already in Deel, Metaintro uses that record instead of making a new one.
Application: the person is added to the mapped job. The source is Metaintro if you have an application source with that name, and Sourced externally if you don't.
Résumé: uploaded as the candidate's CV when the person has one.
Proof card: a note on the application links to their proof card and includes their summary.
Stages: with the webhook, Deel tells Metaintro when an application moves to a new stage, and Metaintro reads its current stage. Metaintro also checks stages on a regular schedule. Hires, archived candidates and withdrawals are reported back as such.
Stage moves: when you change a candidate's stage in Metaintro, Metaintro moves the application to the matching stage of the job's interview plan. It does not start that stage's activities, such as scheduling emails.
Limits
Deel allows 5 requests per second for your whole organization, shared by every token. Metaintro stays under this, but busy periods can slow deliveries a little.
Each Deel job needs at least one employment type. Metaintro cannot add people to a job without one.
Metaintro can only move an application to a stage when the job has an interview plan. A stage with no clear match, such as a withdrawal, is left for you to set in Deel.
Deel needs an email for every candidate, so people without an email can't be sent.
If something goes wrong
The token is rejected: the token may be wrong, deleted or expired. Create a new organization token and connect again.
Deel says access is forbidden: the token is missing a scope from the list above, or Deel's hiring module is not turned on. Create a new token with every scope, or ask Deel to turn hiring on.
Stage changes arrive late: check that the webhook exists in Deel with both ATS events, and that the signing key is saved in Metaintro. Deel's webhook logs show failed deliveries.
Deliveries slow down: Deel is limiting requests. Metaintro waits and tries again on its own.
A candidate isn't sent: check that the mapped job still exists in Deel and has an employment type.