
HR to ERP
BambooHR to SAP S/4HANA integration: BambooHR employees as workforce persons with company code and cost centre
With an integration between BambooHR and SAP S/4HANA, every employee from BambooHR becomes a workforce person with a work agreement in SAP S/4HANA, with the company code from the division, a default cost centre and the hours per week from BambooHR. Job info changes take effect on their own date, and a termination closes the work agreement.
What the integration does
Organisations that use BambooHR as their HR system and SAP S/4HANA Cloud for finance, purchasing and expenses often load employees into S/4HANA with a template. Transfers between divisions and departures then arrive too late, and anyone who later switches to the API risks duplicate personnel numbers.
- BambooHR reports a changed employee; KoppelHet reads the job info and employment status tables with their dates.
- From that KoppelHet builds periods with company code, cost centre and hours.
- The periods go to S/4HANA through the replication API.
- KoppelHet checks that the business partner was also updated and reports errors per employee.
- A Terminated row in employment status closes the work agreement on that date.
What to watch for with BambooHR and SAP S/4HANA
- BambooHR lets the organisation assign the employee number itself; it is a free text field. S/4HANA accepts at most twenty characters as external person ID. During the initial load KoppelHet checks every number for length and uniqueness and lists exceptions for HR, before anything goes to S/4HANA.
- A division in BambooHR becomes a company code in S/4HANA, and a change of company code creates a new personnel number there. BambooHR records the division per job info row with its own date. KoppelHet only sends the move on that date and tells finance which old personnel number has remained.
- The termination date is read-only in BambooHR and comes from a Terminated row in the employment status table. KoppelHet reads that table with its date, so a termination entered ahead of time only closes the work agreement in S/4HANA on the right day.
- BambooHR has the pay type contract and the status Contractor for people who are not on the payroll. In S/4HANA that is a service performer, which requires a work order with supplier. KoppelHet only sends employees on the payroll and lists contractors for purchasing.
- SAP warns that a new integration channel can create duplicate personnel numbers or business partners for people already in S/4HANA. Organisations with BambooHR have often loaded employees earlier with a template. During the initial load KoppelHet compares the existing workforce in S/4HANA with BambooHR and uses the same external ID, so nobody is created twice.
- A BambooHR webhook for a changed employee only fires on fields chosen beforehand as monitored fields. KoppelHet monitors division, department, job title, hours and status, and also fetches the changed table data daily, so a change outside those fields is still seen.
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
Does salary from BambooHR go to S/4HANA?
No. The API user in BambooHR gets no access to compensation.
Does this also work with S/4HANA on-premise?
This page assumes S/4HANA Cloud Public Edition. For on-premise we choose the right interface at the start.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- BambooHR through event-based webhooks (employee.created, employee.updated with monitor fields and changedFields, employee.deleted) and the endpoints for changed table data (jobInfo with date, division, department, jobTitle; employmentStatus with date). terminationDate and employmentHistoryStatus are read-only. API key of a separate user without access to compensation.
- SAP S/4HANA Cloud Public Edition through the SOAP API Replicate Basic Master Data for Workforce from External HR Systems (WORKFORCEPERSONMASTERDATAREPLI, scope item 1FD, SAP_COM_0301). Replication in two steps: workforce data and then synchronisation to the business partner; errors in the response or in Message Monitoring Overview. PersonExternalID at most 20 characters; service performer requires a WorkOrder with Supplier.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in BambooHR | Field in SAP S/4HANA | Notes |
|---|---|---|
employeeNumber | PersonExternalID | At most twenty characters |
firstName, lastName | Voornaam en achternaam | |
workEmail | E-mailadres | |
jobInfo.division (met date) | Bedrijfscode | Lookup table |
jobInfo.department | Standaardkostenplaats | Finance table |
standardHoursPerWeek | WeeklyWorkinghours en WorkingTimePercentage | |
employmentStatus Terminated (date) | Einddatum werkovereenkomst |
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