ADP Workforce Now logo4PS Construct logo

HR to ERP

ADP Workforce Now to 4PS Construct integration: employees with company, dimensions and statistics group in 4PS

With an integration between ADP Workforce Now and 4PS Construct, every employee from ADP appears automatically in the right 4PS company, with job title, default dimensions for department and cost centre, and a statistics group for the worker category. KoppelHet updates a rehire, transfer or termination in ADP in 4PS, so site managers only book hours on people who work there.

What the integration does

Construction and installation organisations that run HR and payroll in ADP Workforce Now and projects in 4PS Construct enter new technicians and site managers into 4PS by hand. Anyone who returns or moves to another site is still on the old card in 4PS, and hours land on the wrong dimension.

  1. HR records a hire or change in ADP Workforce Now; ADP sends an event notification.
  2. KoppelHet fetches the worker with the primary position and picks the 4PS company for their location.
  3. KoppelHet creates or updates the employee, with job title and statistics group.
  4. KoppelHet sets the default dimensions, if the values exist in 4PS.
  5. On a termination KoppelHet sets the termination date and after the last day the status terminated.
ADP Workforce Now → KoppelHet → 4PS ConstructSOURCEADP Workforce NowTARGET4PS ConstructKoppelHetmapping · logging · monitoringADP Workforce Now → KoppelHet → 4PS ConstructSOURCEADP Workforce NowTARGET4PS ConstructKoppelHetmapping · logging · monitoring
Out: Employee with number, name, job title and dates · 4PS company based on the location · Default dimensions department, cost centre and business unit · Statistics group for the worker category

What to watch for with ADP Workforce Now and 4PS Construct

  • ADP reports a different work location with its own event. The API under 4PS works per company. If the new location belongs to another 4PS company, KoppelHet creates the employee there and ends the card in the old company as of the day of the move.
  • For a returning employee ADP sends its own rehire event, with the same workerID. KoppelHet looks up the existing card with that number in 4PS and reactivates it with the new start date, instead of creating a second card that 4PS would not accept with the same number.
  • ADP reports separately when the worker category changes, for example from temporary to permanent. An employee under 4PS has a statistics group. KoppelHet sets the ADP category as the statistics group, so reports in 4PS can separate own staff and temporary workers.
  • One ADP event about the home organisation carries department, cost number and business unit together. Dimension values under 4PS are read-only through the API. KoppelHet sets the default dimension per part if the value exists in 4PS, and tells finance which value is missing, without holding back the rest of the change.
  • ADP lets you request workers as of a date. Business Central has no effective date on the employee for job title or dimensions. Every night KoppelHet requests tomorrow's state and only puts changes taking effect then into 4PS on that day, so today's hours still fall on the old cost centre.
  • An employee in ADP can have several positions, each with its own positionID, one of which is primary. An employee under 4PS has one job title and one default value per dimension. KoppelHet takes the job title and dimensions of the primary position.
  • ADP sends no events for changes that come in through the API, and returns workers in pages of at most a hundred. Business Central gives the time of the last change per employee. Every night KoppelHet compares all workers with the 4PS cards and only updates cards that really differ, with 4PS's version marker.

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, architecture and compliance

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.

Price indication · Basic

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Do hours from 4PS go back to ADP?

Not in this integration. Hours for payroll can be added later as an extension.

What if a cost centre does not exist in 4PS yet?

Then the employee comes in without that dimension and finance sees which value is missing. As soon as finance creates it, KoppelHet fills in the dimension.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • ADP Workforce Now through the Worker Management API: GET /hr/v2/workers ($top at most 100, asOfDate MM/DD/YYYY, workerID, positionID, primaryIndicator) and event notifications worker.hire, worker.rehire, worker.terminate, worker.workAssignment.homeOrganizationalUnits.modify, worker.workAssignment.homeWorkLocation.change and worker.workAssignment.workerType.change; events only for changes in Workforce Now itself.
  • To 4PS through the Business Central API v2.0 per company: employees (POST and PATCH with If-Match; number, givenName, middleName, surname, jobTitle, email, employmentDate, terminationDate, status Active, Inactive or Terminated, statisticsGroupCode, lastModifiedDateTime) and defaultDimensions with parentType Employee. dimensionValues is read-only.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in ADP Workforce NowField in 4PS ConstructNotes
workerID (idValue)numberFixed key
legalName (givenName, middleName, familyName1)givenName, middleName, surname
Job title (primaire positie)jobTitle
Home Work Location4PS-administratie (company)Through a table
Home Department en Home Cost NumberdefaultDimensions (afdeling, kostenplaats)
Business UnitdefaultDimensions (business unit)If that dimension exists in 4PS
workerTypestatisticsGroupCodeThrough a table
hireDate, terminationDate en workerStatusemploymentDate, terminationDate en status

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.