BambooHR logo4PS Construct logo

HR naar ERP

BambooHR 4PS Construct koppeling: medewerkers uit BambooHR in de 4PS-administratie van hun vestiging

Met een koppeling tussen BambooHR en 4PS Construct komt elke medewerker van een vestiging die in 4PS werkt automatisch in de bijbehorende 4PS-administratie, met tussenvoegsel, functie, werkmail, datum in dienst en kostenplaats. Een vertrek uit BambooHR zet de einddatum in 4PS, en een herintreder krijgt zijn bestaande 4PS-kaart terug in plaats van een tweede.

Wat de koppeling doet

Organisaties die HR in BambooHR doen en de bouw-, installatie- of onderhoudsbedrijven in 4PS Construct laten werken, typen monteurs en uitvoerders over in 4PS. Komt een oud-medewerker terug, dan maakt iemand in 4PS een tweede kaart, en zijn oude en nieuwe uren raken verdeeld over twee nummers.

  1. HR legt een nieuwe medewerker of wijziging vast in BambooHR, op een vestiging die in 4PS werkt.
  2. BambooHR meldt de wijziging; KoppelHet haalt de medewerker op.
  3. KoppelHet maakt de medewerker aan in de 4PS-administratie van de vestiging, of werkt de bestaande kaart bij.
  4. De kostenplaats uit BambooHR komt als standaarddimensie op de medewerker, als hij in 4PS bestaat.
  5. Bij een vertrek zet KoppelHet de einddatum; na de laatste werkdag gaat de status naar beëindigd.
BambooHR → KoppelHet → 4PS ConstructBRONBambooHRDOEL4PS ConstructKoppelHetmapping · logging · monitoringBambooHR → KoppelHet → 4PS ConstructBRONBambooHRDOEL4PS ConstructKoppelHetmapping · logging · monitoring
Heen: Medewerker met nummer, naam en tussenvoegsel · Functie en werkmail · Datum in dienst, einddatum en status · Kostenplaats als standaarddimensie

Waar je op let bij BambooHR en 4PS Construct

  • BambooHR heeft geen apart veld voor een tussenvoegsel, de medewerkerkaart onder 4PS wel een veld voor de middelste naam. KoppelHet haalt een bekend tussenvoegsel zoals van of de uit de achternaam en zet het in dat veld, als jullie dat willen, zodat sorteren en zoeken in 4PS op de achternaam werkt.
  • Komt een oud-medewerker terug, dan bewaart BambooHR de oorspronkelijke datum in dienst naast de nieuwe. KoppelHet herkent hem aan het personeelsnummer, zet de bestaande 4PS-kaart terug op actief met de nieuwe datum in dienst en maakt de einddatum leeg, zodat alle uren onder één nummer blijven.
  • BambooHR meldt het als een medewerker wordt verwijderd, bijvoorbeeld omdat hij per vergissing dubbel is aangemaakt. De API onder 4PS kan een medewerker verwijderen. KoppelHet doet dat alleen als er geen tijdregistraties op de kaart staan; anders zet het de kaart op inactief en meldt het aan HR.
  • BambooHR heeft standaard geen kostenplaatsveld; die staat in een eigen veld of een eigen tabel. Voor eigen tabellen stuurt BambooHR geen webhook. KoppelHet haalt dagelijks de gewijzigde tabelgegevens op, en zet een kostenplaats die in 4PS als dimensiewaarde bestaat op de medewerker.
  • Dimensiewaarden zijn in de standaard-API onder 4PS alleen te lezen. Een nieuwe kostenplaats uit BambooHR maakt KoppelHet dus niet zelf aan. De medewerker komt zonder die dimensie binnen en finance ziet in het platform welke code nog moet worden aangemaakt.
  • Een webhook uit BambooHR wordt bij een serverfout tot vijf keer herhaald, en bij een andere fout niet. KoppelHet bevestigt elke melding direct en verwerkt de medewerker daarna, zodat een tijdelijke storing aan de kant van 4PS geen meldingen kost. De dagelijkse controle vangt de rest op.
  • Alleen medewerkers van vestigingen die in 4PS werken, gaan mee. BambooHR geeft de vestiging in de job info met een ingangsdatum. Verhuist een monteur naar een vestiging met een andere 4PS-administratie, dan zet KoppelHet een einddatum in de oude administratie en maakt hem op de ingangsdatum aan in de nieuwe.

Hoe we het bouwen en beheren

  • De koppeling draait op het KoppelHet platform, gehost in een datacenter in de EU.
  • Elke synchronisatie en elke fout is zichtbaar in de functionele logging; bij een fout krijgt jullie beheerder een melding.
  • Een mutatie die niet door kan, wordt niet half doorgezet maar klaargezet om opnieuw te proberen.
  • KoppelHet is ISO 27001-gecertificeerd. Gegevens gaan versleuteld over en blijven niet langer op het platform dan nodig.
  • Na livegang beheren wij de koppeling en passen we hem aan als jullie proces verandert.
  • De koppeling past naast je bestaande integratielaag. Alleen de velden uit het ontwerp gaan over; het platform houdt geen eigen registratie bij.

Implementatie, architectuur en compliance

Implementatie en prijs

Dit is geen app die je aanzet. We bouwen de koppeling voor jullie organisatie op ons platform, met bouwstenen die we steeds opnieuw gebruiken. Zo is het maatwerk, zonder dat we bij nul beginnen.

Een consultant bereidt de intake voor en analyseert beide systemen. Daarna leggen we de mapping en uitzonderingen per veld vast, testen we in de test- of acceptatieomgeving en gaan we live op een moment dat jij kiest. De kosten bestaan uit een eenmalig bedrag voor de inrichting en een maandbedrag voor platform, monitoring en beheer.

Prijsindicatie · Basis

Laat je zakelijke e-mailadres achter, dan zie je de prijsindicatie direct.

We gebruiken je adres alleen om je vraag over deze koppeling op te volgen.

Veelgestelde vragen

Waar staat de kostenplaats in BambooHR?

BambooHR heeft er geen vast veld voor. We spreken een eigen veld of tabel af, of leiden hem af van de afdeling, voordat de koppeling live gaat.

Gaan uren uit 4PS terug naar BambooHR?

Niet in deze koppeling. Dat kan later als uitbreiding.

Technische details voor IT

Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.

  • BambooHR via de REST API met een API-sleutel van een gebruiker. Event-based webhooks (employee.created, employee.updated met monitor fields, employee.deleted; herhaling tot vijf keer bij 5xx, niet bij 4xx) en het endpoint voor gewijzigde tabeldata. Velden employeeNumber, firstName, lastName, jobTitle, workEmail, location, hireDate, originalHireDate en terminationDate.
  • Naar 4PS via de Business Central API v2.0 per company: employees (POST, PATCH en DELETE met If-Match; number, givenName, middleName, surname, jobTitle, email, employmentDate, terminationDate met 0001-01-01 als lege datum, status Active, Inactive of Terminated), timeRegistrationEntries per medewerker en defaultDimensions met parentType Employee. dimensionValues is alleen te lezen.

Welke velden overgaan

De belangrijkste velden. De volledige mapping stellen we per klant vast.

Veld in BambooHRVeld in 4PS ConstructToelichting
employeeNumbernumber
firstNamegivenName
lastNamemiddleName en surnameTussenvoegsel apart, als jullie dat willen
jobTitlejobTitle
workEmailemail
location4PS-administratie (company)Via een tabel
hireDate en terminationDateemploymentDate, terminationDate en status
Eigen veld of tabel kostenplaatsdefaultDimensionsAlleen bestaande dimensiewaarden

Gerelateerd

Welke systemen wil je koppelen?

Vertel welke systemen je gebruikt en wat er automatisch moet gebeuren. Samen bepalen we de kleinste werkende oplossing, met een helder ontwerp en een offerte vooraf.