The integration between Teamtailor and Upsales supports several exciting functionalities. Note that these functionalities work best combined, but not separate of each other.
Create job drafts in Teamtailor: By activating the Upsales integration, you'll be able to trigger the creation of a new job draft in Teamtailor based on closed orders/deals in Upsales. Data fields from Upsales are then transferred to Teamtailor to create a job draft. You can optionally select a Teamtailor job template to create the job draft with.
Sync data to Upsales: you can connect your Teamtailor job custom fields to Upsales fields. Then, when you change the fields in the Teamtailor job it will sync the data to the Upsales fields.
On-hire trigger to Upsales: Transfer data of hired candidates from Teamtailor to Upsales, and automatically update the stage of the Upsales order.
Upsales is the revenue engine for Nordic B2B companies. Upsales offers an end-to-end platform with everything from professional pipeline management to recommendations on new business opportunities based on your data.
Getting started in Upsales
Note: setting up this integration requires knowledge about the Upsales webhook functionality. Teamtailor can't support with the set up in the Upsales platform.
Step 1 in Upsales - webhook set up
This integration requires you to set up a webhook trigger from Upsales to Teamtailor, to allow the transfer of the specific Upsales data fields you will use. Under settings in Upsales you can find rules (affärsregler) > triggers. You can create triggers that send the webhook.
You need to add a Webhook URL in Upsales, including your Teamtailor Company ID.
The Teamtailor Company ID can be found in the browser URL when you are logged in to your Teamtailor account. Example: https://app.teamtailor.com/companies/{teamtailorcompanyid}
Add the following webhook URL in Upsales, replacing the placeholder with your Teamtailor Company ID: https://ncg7t29sjb.execute-api.eu-west-1.amazonaws.com/production/syncjobs/{teamtailorcompanyid}
Make sure the webhook is set to POST and content-type is application/json.
Make sure the webhook body is configured for all the fields (read more here) that you need to transfer to Teamtailor.
Example of the body of the webhook (⚠️ don't copy/paste this body, it might not be complete or match to your own set up):
{
"action": "order-accepted",
"id": "{{Order.Id}}",
"description" : "{{Order.Description}}",
"date" : "{{Order.Date}}",
"contactId": "{{Order.ContactId}}",
"userId" : "{{Order.UserId}}",
"userName" : "{{Order.UserName}}",
"userEmail" : "{{Order.UserEmail}}",
"companyId" : "{{Order.ClientId}}",
"companyName" : "{{Client.Name}}"
}
Step 2 in Upsales - job template field
Create a custom order field in Upsales named 'job template name' (note: the field is case sensitive), and include this field in the webhook body. This field can later be used on the Upsales order to select the job template that should be used for the Teamtailor job draft.
Note: the integration supports 'multi branding' in case you are using a single Upsales platform, but multiple Teamtailor platforms. As the integration is driven by webhooks from Upsales, you could either set up several webhooks in Upsales with different triggers based on for example a 'brand' field in Upsales. Or create a single webhook and add the 'brand' conditions into that webhook. For each of those webhooks/conditions you could specify a different url to send the data to your different Teamtailor platforms.
Getting started in Teamtailor
Once the webhook in Upsales is set up you can go to your Teamtailor account and search for Upsales in the marketplace. You will connect you existing Upsales account to Teamtailor.
Step 1 in Teamtailor - activation
Activate the Upsales integration in the marketplace of the Teamtailor application.
Step 2 in Teamtailor - configuration
You will be redirected to the activations page in your Teamtailor settings where you need to add the required information. The fields with an * are mandatory.
Note: Initially only the fields for API keys will show. The additional fields will show once you fill in the Upsales and Teamtailor API keys.
Upsales API key (required): click here to read a support article.
Teamtailor API key (required): add a Teamtailor admin read/write API key (create via settings > api keys, click here to read a support article)
Order stage (required): name of the order stage in Upsales that should trigger the integration. The dropdown will show the order stages you have in Upsales. For example if a 'closed won' order should trigger the integration to create a job draft, the order stage you pick is 'closed won'.
Teamtailor Recruiter email: by default the recruiter linked to the Teamtailor job draft is based on the userEmail that is included in the Upsales webhook (note: a user with this email must exists in Teamtailor for it to work). You can use the 'Teamtailor Recruiter email' field to set a default fallback email of the lead recruiter. If you don't set a fallback email, the integration won't create a job draft if the userEmail doesn't match any user in Teamtailor.
Job template name: the integration allows you to specify in an Upsales field which template should used for the job draft (as described above). You can configure a fallback (default) job template that the integration will use if there is no template picked on the Upsales order.
Use template description: by default the job description for the job draft is taken from the description in Upsales. By ticking this option the job draft will always use the description of the selected job template instead.
Upsales Recruiter field: this field allows you to select a specific field from Upsales that will be used to set the recruiter on the job draft in Teamtailor. Using this field will overwrite the default use of the userEmail as described above. Note that the value in the selected Upsales field must be an email address, and a user with this email must exists in Teamtailor. If you have set a fallback email as described above, the integration will use that email in case the provided email doesn't match a user in Teamtailor.
Upsales Department field: from the dropdown you can select the field in Upsales that should be used as the Department in the Teamtailor draft job.
Upsales Employment Type field: from the dropdown you can select the field in Upsales that should be used as the Employment Type in the Teamtailor draft job.
Synchronize custom fields: you can link Teamtailor job custom fields to fields in Upsales. The integration can then automatically update (sync) fields in Upsales when you change the value of the linked job field in Teamtailor. Note: this is a one-way sync, changes made in the Upsales fields won't update the values in Teamtailor.
Step 3 in Teamtailor - job custom fields
Your next step is to set up job custom fields in Teamtailor. These are the fields where the data from Upsales will be filled in.
When you move an order in Upsales to 'closed won' (or any stage you specified during activation of the integration), it will automatically create a job draft in Teamtailor. Besides the discussed default Teamtailor fields (Recruiter, Department, Employment Type), the integration can also add job custom fields to the job draft based on fields you have in Upsales.
The supported standard Upsales order fields
In the table below you find the supported standard Upsales fields - the fields every Upsales order has. When creating job custom fields in Teamtailor (note: NOT candidate custom fields) you can set the title of that custom field to any value you like, as long as the api-name of the field in Teamtailor matches the table below (click 'Show API settings' to edit the api name when creating custom fields). Also make sure the field type in Teamtailor matches the table below.
Upsales Standard Order fields | Teamtailor job custom field api-name | Teamtailor field type |
order.id | order-id | text |
stage.name | order-stage | text |
client.id | job-company | number |
client.name | job-company-name | text |
contact.name | contact-name | text |
contact.email | job-contact-email | text |
contact | contact-cell-phone | text |
user.name | account-manager | text |
user.id | user-id | text |
contact.phone | contact-phone | text |
order title | ⚠️ Not a custom field, instead transferred to the title of the job draft. | n/a |
description | ⚠️ Not a custom field, instead transferred to the description of the job draft. | n/a |
userEmail | ⚠️ Not a custom field, instead transferred to the recruiter linked to the job draft. User must exist in Teamtailor. | n/a |
Mapping custom Upsales order fields
Any custom order fields you have in Upsales can be mapped towards Teamtailor based on name. For example if the field name in Upsales is "Brand" this can transfer the data to a job custom field in Teamtailor with a matching api-name.
Using the integration
A short reminder of the functionalities of the integration:
Create job drafts in Teamtailor
Sync data to Upsales
On-hire trigger to Upsales
Create job drafts in Teamtailor
Orders that reach the stage you have specified (for example 'closed won') will trigger the creation of a draft job in Teamtailor.
The job draft will have the same name as the Upsales order
The client.name from Upsales is automically added as a tag to the job draft (this tag can be used to filter jobs in Teamtailor)
The draft will include the default Teamtailor job fields you mapped during activation, and the job custom Teamtailor fields you set up.
⚠️ Note: the integration requires your Upsales orders to always have a client name and a description. These fields are used to create the job draft in Teamtailor. Without those fields the integration won't work.
As the integration allows you to create job drafts in Teamtailor based on closed orders in Upsales, you can also define which job template should be used for the creation of the job draft. Using a custom Upsales field on the order with the name 'job template name' allows you to specify which template should be used for the job draft, simply by filling out the Upsales field with the name of a job template you have in Teamtailor. Note: the field is case sensitive.
Sync data to Upsales
If you have linked Teamtailor job custom fields to Upsales fields (during activation of the integration), changes in the Teamtailor fields can automatically update (sync) to the linked Upsales fields.
Note: This is a one-way sync, changes made in the Upsales fields won't update the values in Teamtailor. The sync is only done for the Upsales order that is linked to the Teamtailor job based on order.id.
On-hire trigger
When you have hired a candidate you can transfer specific candidate data, and (optionally) all job custom fields, back to the original Upsales order. You can also automatically update the stage of the order (for example move it from 'Closed Won' to 'Ready for invoicing'). Note: the transfer is only done to the Upsales order that is linked to the Teamtailor job based on order.id.
Go into the Teamtailor job where you wish to add the Upsales trigger. Add a new trigger, and select the option "Send Upsales Webhook" from the dropdown menu. In the configuration page that appears you will be asked to select several options.
Stage: select to which stage the Upsales order should be updated (optional)
Send job custom fields: toggle on if you want the job custom fields from Teamtailor to transfer to Upsales. This will update the fields in Upsales.
Candidate name: select to which Upsales fields you want the candidate name to transfer.
Candidate email: select to which Upsales fields you want the candidate email to transfer.
Candidate phone: select to which Upsales fields you want the candidate phone to transfer.
Need support?
Contact Teamtailor directly via:
Chat: open your Teamtailor app and chat live
Email: support@teamtailor.com