
HR to ITSM
BambooHR to Jira Service Management integration: onboarding and offboarding requests from BambooHR
With an integration between BambooHR and Jira Service Management, KoppelHet automatically creates a request of the right request type for every new employee, change of job, department or location, and departure in BambooHR, with start date, job, location and manager in the fields. Employees become portal customers as soon as they have a work email, and after the termination date in BambooHR their portal access closes.
What the integration does
Organisations that use BambooHR for all employees and run an IT service desk in Jira Service Management receive new colleagues by email. IT often only hears about a departure when the laptop turns up in a cupboard.
- HR creates the new employee in BambooHR with hireDate, job, department, location and manager.
- BambooHR reports the new employee; KoppelHet fetches the data and remembers the start date.
- Four weeks before the start an onboarding request arrives in the location's service desk, raised on behalf of the manager as long as the new colleague has no work email yet.
- As soon as BambooHR holds a work email, the employee becomes a portal customer.
- One week before the terminationDate an offboarding request arrives; the day after KoppelHet revokes portal access.
What to watch for with BambooHR and Jira Service Management
- A notification from BambooHR contains only the employee number and the names of changed fields. For an update at least one field must be monitored in BambooHR. KoppelHet only monitors job, department, location, manager and termination date, so a new phone number does not create a request.
- At hire BambooHR often has no work email yet, because IT still has to create the mailbox. Jira Service Management cannot create a customer without an email address. The onboarding request is therefore first raised in the manager's name, and the new colleague becomes a customer as soon as the work email is in BambooHR.
- BambooHR gives the manager as an email address, and Jira Service Management also recognises customers by email address. KoppelHet therefore looks the manager up directly as a customer and puts them in the request, so an approval in the request type reaches them.
- BambooHR often holds every country of the company, while the service desk in Jira Service Management is set up per region. The location in BambooHR decides which service desk a request goes to; for a location without its own service desk KoppelHet creates nothing.
- When someone moves in BambooHR to a location with a different service desk, that is a departure for the old service desk and an arrival for the new one. KoppelHet then creates an offboarding request at one and an onboarding request at the other, and portal access stays.
- A deleted record in BambooHR is not a departure. KoppelHet then does not revoke portal access or create an offboarding request, but reports it to HR and IT.
- The BambooHR API key belongs to a user and sees what that user may see. We ask for a separate user without access to compensation, so pay data never reaches the KoppelHet platform or the portal.
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 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.
Frequently asked questions
What if the start date moves in BambooHR?
If the onboarding request is already open, KoppelHet adds a comment with the new date to it. No second request is created.
Can employees and laptops also go into Assets?
That can be added later as an extension, with an employee object per person. We start with requests and customers.
Do agents get a Jira licence through this?
No. This integration only manages portal customers. Agent accounts are handled through Atlassian administration.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- BambooHR is read through event-based webhooks (employee.created, employee.updated with monitor fields and changedFields, employee.deleted) and the changed-employees endpoint as a safety net. After a notification KoppelHet fetches the employee with fields including employeeNumber, workEmail, hireDate, jobTitle, department, division, location, supervisorEmail and terminationDate.
- Jira Service Management through /rest/servicedeskapi/ - POST customer (email and displayName), PUT customer/user/{accountId}/revoke-portal-only-access, and requests with POST /rest/servicedeskapi/request (serviceDeskId, requestTypeId, requestFieldValues and raiseOnBehalfOf with the customer's accountId). A comment on an open request through POST request/{issueIdOrKey}/comment.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in BambooHR | Field in Jira Service Management | Notes |
|---|---|---|
employeeNumber | Sleutel in KoppelHet | Linked to the customer's accountId |
workEmail | Klant: email | |
preferredName of firstName, lastName | Klant: displayName | |
hireDate | requestFieldValues: startdatum | |
jobTitle, department, division | requestFieldValues: functie en afdeling | |
location | serviceDeskId | Decides which service desk gets the request; locations without a service desk are skipped |
supervisorEmail | raiseOnBehalfOf en requestFieldValues: manager | Looked up as a customer by email |
terminationDate | Offboardingverzoek en portaaltoegang intrekken |
Related
Ashby → BambooHR
Ashby to BambooHR integration: hire, changed start date and employment status in BambooHR
BambooHR → 4PS Construct
BambooHR to 4PS Construct integration: employees from BambooHR in the 4PS company of their location
BambooHR → Active Directory
BambooHR to Active Directory integration: accounts in your own domain from HR
BambooHR → ADP iHCM
BambooHR to ADP iHCM integration: salary, bonuses and commissions to Dutch payroll