Skip to content

Paylocity technical integration

Integration options

Paylocity offers REST APIs through their developer program. Pick the approach that fits your partnership status and technical needs.

REST API integration

Use Paylocity’s REST API to trigger Tallyfy processes when employee events happen:

const handlePaylocityEvent = async (event) => {
if (event.eventType === 'employee.created') {
const employee = await paylocityAPI.get(
`/v2/companies/${companyId}/employees/${event.employeeId}`
);
// Launch a Tallyfy process (called a "run") from a template
const run = await fetch(
`https://go.tallyfy.com/api/organizations/${orgId}/runs`,
{
method: 'POST',
headers: {
'Authorization': `Bearer ${tallyfyToken}`,
'X-Tallyfy-Client': 'APIClient',
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({
checklist_id: 'TEMPLATE_ID_HERE',
name: `Onboarding - ${employee.firstName} ${employee.lastName}`,
prerun: {
employee_id: employee.employeeId,
full_name: `${employee.firstName} ${employee.lastName}`,
email: employee.workEmail,
department: employee.departmentCode,
location: employee.workLocation,
job_title: employee.jobTitle,
manager: `${employee.supervisorFirstName} ${employee.supervisorLastName}`,
start_date: employee.hireDate
}
})
}
);
return run.json();
}
};

Webhook integration

Register webhooks to get real-time notifications from Paylocity:

const express = require('express');
const crypto = require('crypto');
const app = express();
app.post('/paylocity-webhook', express.json(), async (req, res) => {
// Verify webhook signature
const signature = req.headers['x-paylocity-signature'];
const payload = JSON.stringify(req.body);
const expected = crypto
.createHmac('sha256', process.env.PAYLOCITY_WEBHOOK_SECRET)
.update(payload)
.digest('hex');
if (signature !== expected) {
return res.status(401).send('Invalid signature');
}
const { eventType, data } = req.body;
switch (eventType) {
case 'employee.hired':
await launchOnboardingWorkflow(data);
break;
case 'employee.terminated':
await launchOffboardingWorkflow(data);
break;
case 'payroll.completed':
await launchPayrollReviewWorkflow(data);
break;
}
res.status(200).send('OK');
});

Data mapping

Common Paylocity fields to map to Tallyfy kick-off form variables:

Paylocity fieldTallyfy variableDescription
employeeIdemployee_idUnique employee identifier
firstName + lastNamefull_nameEmployee full name
workEmailemailWork email address
departmentCodedepartmentDepartment code
costCentercost_centerCost center assignment
workLocationlocationWork location code
jobTitlejob_titleJob title
supervisorFirstNamemanagerDirect supervisor
employeeTypeemployee_typeFull-time, part-time, or contractor
hireDatestart_dateEmployee start date

Authentication

Paylocity uses OAuth 2.01 with the client credentials flow. Store credentials securely - don’t expose them in client-side code.

const getPaylocityToken = async () => {
const response = await fetch(
'https://api.paylocity.com/IdentityServer/connect/token',
{
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: new URLSearchParams({
grant_type: 'client_credentials',
client_id: process.env.PAYLOCITY_CLIENT_ID,
client_secret: process.env.PAYLOCITY_CLIENT_SECRET,
scope: 'WebLinkAPI'
})
}
);
return response.json();
};

iPaaS alternatives

If direct API work isn’t an option, consider these platforms:

  • Merge API - unified HRIS API with Paylocity support
  • Finch - employment system API with a Paylocity connector
  • Flexspring - HR integration platform
  • Workato - enterprise automation recipes

Bamboohr > BambooHR technical integration

BambooHR integrates with Tallyfy through REST API calls and SHA-256 HMAC webhook verification to automatically pull employee data and launch structured processes like onboarding or role changes based on HR events such as new hires and status updates.

Vendors > Paylocity

Tallyfy picks up where Paylocity stops by coordinating the cross-department workflows that employee events trigger — like IT provisioning and facilities setup and training enrollment and offboarding tasks — across every team involved in the employee lifecycle rather than just the HR department.

Workday > Workday technical integration

Tallyfy integrates with Workday through XML-based Integration Cloud or REST API methods to automatically launch structured processes like onboarding when HR events occur and also supports iPaaS platforms like Workato or MuleSoft as alternatives for teams without direct API access.

Netsuite > NetSuite technical integration

Tallyfy integrates with NetSuite through REST APIs or native SuiteScript to automatically launch structured workflow processes like employee onboarding when records are created in NetSuite and maps common fields like department and subsidiary into Tallyfy kick-off forms.

Footnotes

  1. Industry-standard protocol for secure third-party authorization without sharing passwords