ml-connector
Oracle PeopleSoftPaylocity

Oracle PeopleSoft and Paylocity integration

Oracle PeopleSoft runs human resources and payroll data for enterprise organizations. Paylocity runs cloud-based payroll processing and HR for mid-market US businesses. Connecting them keeps your employee records, pay dimensions, and payroll reference data synchronized across your on-premise ERP and cloud payroll platform. New hires, terminations, and pay grade changes made in Paylocity flow into PeopleSoft automatically, and payroll deductions and earnings stay aligned between the two systems.

How Oracle PeopleSoft works

Oracle PeopleSoft is a self-hosted on-premise ERP and HCM platform where each customer operates their own environment on their own servers or Oracle Cloud Infrastructure. It exposes employees, positions, pay grades, job information, and general ledger entities through REST APIs via RESTListeningConnector and SOAP APIs via PeopleSoftServiceListeningConnector. Authentication uses HTTP Basic Auth (OPRID and password) for all versions or OAuth2 Bearer token for PeopleTools 8.58 and later. Each customer has a unique hostname, port, and node name. Integration Broker supports asynchronous publish/subscribe messaging to push XML to external HTTP endpoints, but no webhooks are published; the recommended approach is polling with date-range filters. REST endpoints are primarily read-only inquiry operations, while write operations require SOAP Component Interface calls. There is no standardized pagination, and large result sets must be filtered by date range or other parameters.

How Paylocity works

Paylocity is a cloud-based HCM and payroll platform accessible through REST APIs at https://api.paylocity.com/api/v2 for production and https://dc1demogwext.paylocity.com for sandbox. It exposes employees, pay statements, deductions, earnings, pay grades, companies, and work locations. Authentication uses OAuth 2.0 client credentials flow with a Bearer token obtained via POST to the token endpoint; tokens expire after 3600 seconds. Paylocity supports webhook events including New Hire, Employee Change, Termination, and Payroll Processed, delivered as HTTPS POST JSON with 30-minute retries for up to 24 hours on failure. Webhook payloads carry identifiers only; full record data must be fetched via API calls. The platform requires TLS 1.2 minimum. Employee Change events may fire multiple times per minute, and client secrets must be rotated annually.

What moves between them

The main flow runs from Paylocity into Oracle PeopleSoft. Employee records including hires, terminations, and changes sync from Paylocity to PeopleSoft on a schedule you define. Pay grades, positions, deductions, and earnings reference data are pulled from Paylocity and aligned with PeopleSoft job and pay dimension tables. Paylocity webhooks trigger syncs when employee or payroll events occur, and ml-connector also polls on your payroll calendar cadence to catch any missed events. Data flows one direction; PeopleSoft employee updates do not write back to Paylocity.

How ml-connector handles it

ml-connector stores both credential sets encrypted: the Paylocity OAuth2 client ID and secret, and the PeopleSoft OPRID and password (or OAuth2 token if using PeopleTools 8.58+) plus the unique hostname, port, and node name. On the Paylocity side, it obtains a Bearer token via the OAuth2 client credentials flow and refreshes it before expiry every 3600 seconds. It registers a webhook endpoint with Paylocity to receive New Hire, Employee Change, and Termination events, and also polls both systems on your defined schedule since Paylocity webhooks carry identifiers only and the full record must be fetched. When employee records arrive from Paylocity, ml-connector looks up the matching PeopleSoft employee by EMPLID or external identifier, maps pay grades and positions to PeopleSoft job codes, and publishes the updates via SOAP Component Interface calls. Deduction and earning types are mapped to PeopleSoft pay codes by configuration. Because Paylocity Employee Change events can fire multiple times per minute, ml-connector deduplicates on the Paylocity timestamp and change event ID. Every record carries a full audit trail and can be replayed if a downstream PeopleSoft write fails.

A real-world example

A mid-sized professional services firm runs Oracle PeopleSoft as their on-premise ERP and HR system, and recently migrated payroll processing to Paylocity's cloud platform to reduce overhead and gain better reporting. Before the integration, each time Paylocity processed a payroll, the HR team exported the employee roster and pay grade changes from Paylocity and manually re-entered them into PeopleSoft. The finance team had to reconcile headcount and pay dimensions between the two systems monthly and frequently discovered mismatches that delayed close. With Paylocity and PeopleSoft connected, each new hire, termination, pay grade change, and deduction update flows from the cloud platform into the on-premise ERP automatically. The systems stay synchronized, headcount is always accurate, and the manual reconciliation step is eliminated.

What you can do

  • Sync new hires, terminations, and employee changes from Paylocity into Oracle PeopleSoft on webhook events and polling schedule.
  • Map Paylocity employees, pay grades, and positions to PeopleSoft job codes, emplids, and compensation tables.
  • Authenticate Paylocity with OAuth2 client credentials and Oracle PeopleSoft with HTTP Basic Auth or OAuth2 tokens, handling credential storage and renewal.
  • Deduplicate Paylocity Employee Change events that fire multiple times per minute and reconcile missed syncs via polling.
  • Maintain a full audit trail on every employee and payroll dimension record for compliance and replay on failure.

Questions

Which direction does data move between Oracle PeopleSoft and Paylocity?
The main flow is from Paylocity into Oracle PeopleSoft. Employee records, pay grades, deductions, and earnings sync from Paylocity to PeopleSoft on a schedule you define or when Paylocity webhooks fire. PeopleSoft employee updates do not write back to Paylocity; the integration is primarily one-way from cloud payroll into the on-premise ERP.
How does ml-connector handle the unique hostname and authentication differences between these systems?
Oracle PeopleSoft requires each customer to provide their own unique hostname, port, and node name since it is self-hosted on-premise. ml-connector accepts these per-customer, stores them encrypted, and authenticates with HTTP Basic Auth (OPRID and password) or OAuth2 Bearer tokens depending on your PeopleTools version. Paylocity authentication uses OAuth2 client credentials with automatic token refresh before expiry.
How does ml-connector handle Paylocity webhook identifiers that do not include full record data?
Paylocity webhook events carry only identifiers; they do not include full employee or payroll records. When a webhook fires, ml-connector uses the identifier to fetch the complete record from the Paylocity API, then maps and writes that data into Oracle PeopleSoft. ml-connector also polls both systems on your payroll calendar to catch any events that may have been missed or arrived out of order.

Related integrations

Connect Oracle PeopleSoft and Paylocity

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started