HiBob logoPaylocity logo

Payroll integration

HiBob to Paylocity integration: new US employees from Bob staged in Web Link

With an integration between HiBob and Paylocity, a new employee of a US entity in Bob is staged in Paylocity Web Link, under that entity's Company ID. The Paylocity administrator completes the record there, and KoppelHet uses the tracking number to follow whether that has happened.

What the integration does

Organisations with HR in HiBob and a US entity paid through Paylocity manage employees in Bob and pass on what changed every pay cycle. Without an integration the US payroll administrator types new hires, pay raises and days off into Paylocity again.

  1. HR records a new employee in a US entity in Bob.
  2. KoppelHet reads the employee through HiBob's People API.
  3. KoppelHet stages the record in Web Link, under that entity's Company ID.
  4. The Paylocity administrator completes the record; KoppelHet follows that with the tracking number.
HiBob → KoppelHet → PaylocitySOURCEHiBobTARGETPaylocityKoppelHetmapping · logging · monitoringHiBob → KoppelHet → PaylocitySOURCEHiBobTARGETPaylocityKoppelHetmapping · logging · monitoring
Out: New hires per Paylocity company · Tracking number per staged record

What to watch for with HiBob and Paylocity

  • Paylocity gives each payroll entity its own Company ID, and entities with different EINs can sit together in a company set. Paylocity APIs do not accept a company set as a key, so KoppelHet links each US entity in Bob to one Company ID.
  • For a new hire who is not yet complete in Bob, Paylocity has an endpoint that stages the record incomplete in Web Link, where the administrator finishes it. KoppelHet uses that endpoint and keeps the tracking number to see whether the record has been completed.
  • An employee ID in Bob is a long string of digits, while the employeeId in Paylocity may be at most ten characters. If the field is left empty, Web Pay assigns the next free number. KoppelHet therefore sends it empty and then records which Bob ID belongs to which Paylocity number.
  • Bob's salary table holds an amount with a payPeriod (Annual, Hourly, Daily, Weekly or Monthly) and a payFrequency. Paylocity only knows the pay types Hourly and Salary, and for Salary the amount is the gross pay per pay period. KoppelHet divides an annual salary by the number of periods of the payFrequency; a daily rate goes to payroll as a notification.
  • A Paylocity company that is still in its implementation phase cannot hire an employee with a future start date. HR often sets up a US starter in Bob weeks in advance. While implementation is running, KoppelHet waits with staging until the start date.
  • The job title field in Bob's work table contains the ID of an entry in the job title list, not the text. Paylocity wants text of at most fifty characters in jobTitle. KoppelHet requests the readable value with Bob's humanReadable option.
  • The manager is stored in Bob in the reportsTo field, and Paylocity expects the manager's Paylocity number in supervisorEmployeeId. KoppelHet looks that number up in its own table. If the manager is not in Paylocity yet, the field stays empty and the administrator sees it when completing the record.

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 · Complex

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

We have several US entities. Does that work?

Yes. In Paylocity each entity has its own Company ID, and KoppelHet links each US entity in Bob to one Company ID.

Technical details for IT

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

  • KoppelHet writes to Paylocity with POST /v2/weblinkstaging/companies/{companyId}/employees/newemployees (Employee Staging, 201 response with trackingNumber), with one Company ID per payroll entity. HiBob is read through the People API with a service user.

Which fields are transferred

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

Field in HiBobField in PaylocityNotes
Amerikaanse entiteit in BobcompanyId (Paylocity Company ID)One ID per payroll entity, at most nine characters
Nieuwe medewerker in BobStaged employee in Web Link, antwoord met trackingNumber
root.idemployeeId leeg latenPaylocity assigns the number; KoppelHet stores both IDs
root.firstName, root.surnamefirstName, lastNameAt most 40 characters per field
work.startDatestatus.hireDate
work.title (leesbare waarde)departmentPosition.jobTitleBob returns the list item ID by default; at most 50 characters
work.reportsTo.iddepartmentPosition.supervisorEmployeeIdTranslated to the manager's Paylocity number
Salaristabel (base, payPeriod, payFrequency)primaryPayRate (payType, baseRate of salary, payFrequency)Hourly or Salary; salary is the amount per pay period

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.