# Workday ServiceNow integration

*Workday → ServiceNow*

**In short:** A Workday to ServiceNow integration keeps ServiceNow's user records, HR Service Delivery cases, and downstream provisioning in sync with Workday as the HR system of record. When a worker is hired, changes jobs, moves org, or is terminated in Workday, the pipeline reads the completed business process, matches the worker to the right sys_user, and applies the change on its Workday effective date - creating onboarding and offboarding lifecycle events, updating manager, department, cost center, and location, and deactivating leavers. Done properly it is not a nightly CSV drop: it is an idempotent, effective-date-aware pipeline that keeps identity and ITSM correct without HR re-keying anything.

## What a Workday to ServiceNow integration actually does

Workday is where a worker's life at the company is recorded: the hire, the position, the supervisory organization, the cost center, the promotion, the transfer, the leave, the termination. ServiceNow is where that same worker needs to exist as an identity - a `sys_user` with the right manager, department, and location - and as the subject of HR Service Delivery cases and IT provisioning: a laptop, an account, access to the right systems on day one.

The gap between those two worlds is where the work lives. Without a pipeline, HR enters a hire in Workday and someone re-keys it into ServiceNow, hopefully before the start date, hopefully with the right manager. A Workday to ServiceNow integration closes that gap automatically: it reads each completed business process from Workday, matches the worker, and applies the change to ServiceNow on the correct effective date - so onboarding fires on time and offboarding actually removes access when someone leaves.

## What data moves

| Workday event / object | Becomes in ServiceNow | Notes |
| --- | --- | --- |
| Hire business process | New / updated `sys_user` + HRSD onboarding lifecycle event | Keyed on Worker ID; pre-hires handled before a mailbox exists |
| Termination | User deactivated on effective date + offboarding event | History, groups, and roles preserved for audit, not hard-deleted |
| Job change / promotion | `sys_user` title, job, grade updated | Applied on the Workday effective date, not the entry date |
| Supervisory organization | Department / `sys_user_group` mapping | Reorgs cascade; org-to-group mapping agreed once |
| Manager change | `sys_user.manager` reference | Manager must exist first, or the change is deferred and retried |
| Cost center | Cost center / department field | Used for ITSM assignment and charge-back |
| Location | `cmn_location` reference | Drives location-based fulfillment and routing |
| Contact & personal data | `sys_user` email, phone, name fields | Works-council-sensitive fields scoped deliberately |

The exact correlation field, org-to-group mapping, and which lifecycle events fire are agreed once with your ServiceNow and HR teams and encoded in the pipeline. After that, nobody maps a worker by hand.

## The details that break naive syncs

A nightly CSV export or a generic connector gets you 80% of the way and leaves the expensive 20% on your desk:

- **Worker identity.** A ServiceNow user matched on email breaks the moment a name changes or a pre-hire has no mailbox yet. You need a stable Workday Worker ID or Employee ID mapped to a fixed correlation field, plus a rule for contingent workers versus employees, or you generate duplicates that pollute assignment and reporting.
- **Effective dating.** Workday is effective-dated; ServiceNow's `sys_user` is not. A promotion or transfer entered today may take effect in six weeks. Apply it immediately and ServiceNow shows the wrong manager and title for a month. The pipeline has to hold future-dated changes and release them on the effective date.
- **Business process, not snapshot.** Workday events fire on business process completion, and transactions get rescinded or corrected. A sync that reads a raw snapshot misses the difference between a hire that completed and one that was reversed the next morning.
- **Ordering and dependencies.** A new hire's manager may not exist in ServiceNow yet, and a reorg can move a whole supervisory org at once. The manager reference has to resolve in the right order, with deferral and retry when the parent record is not there yet.
- **Multiple jobs and international workers.** Workday supports a worker holding multiple positions and workers across several countries and legal entities. Flattening that naively overwrites one job with another or mislabels the primary position.
- **Rate limits and delta.** Workday Web Services and RaaS reports throttle, and a full extract every run does not scale. The pipeline pulls changed-since deltas and respects the integration user's limits instead of hammering the tenant.

## How we build and run it

We treat this as a pipeline, not a batch job. Workday hire, job-change, org-move, and termination events are pulled on a schedule - via Workday Web Services or a Report-as-a-Service (RaaS) extract - or received as they complete, validated, matched to the correct ServiceNow user, and written through the ServiceNow Table API or Import Set, triggering HR Service Delivery lifecycle events where onboarding and offboarding call for it.

The pipeline is idempotent: every Workday worker and event carries a stable identifier, so a retry or a re-run never creates a duplicate user or fires onboarding twice. Future-dated changes are held and applied on their effective date. It runs on cloud-native, fully EU-hosted AWS infrastructure, so worker and personal data never leaves the EU - which keeps your DPA / AVV and GDPR obligations, and any works-council agreement on HR data, clean.

And then we keep it running. Monitoring, alerting, incident response, and - critically - watching for Workday Web Services version changes, RaaS report edits, and ServiceNow Table API changes are our responsibility under contract. A new hire having access on day one stops depending on someone remembering to run a sync.

## When this integration is worth building

If you hire a handful of people a quarter and IT provisions them by hand from an email, a manual process is genuinely fine and we will tell you so. The integration earns its place when hiring volume climbs, when day-one access and clean offboarding become a security and audit requirement, when reorgs and effective-dated changes make manual updates unreliable, or when the cost of a leaver keeping access - or a new hire waiting a week for a laptop - is higher than the pipeline that would have prevented it.

## Frequently asked questions

### Which direction does the integration run - Workday to ServiceNow or both ways?

Workday is the HR system of record, so the primary flow is Workday to ServiceNow: hires, job changes, org moves, and terminations push into ServiceNow user records and HR Service Delivery. A reverse flow exists where it earns its place - for example an HRSD onboarding or data-change case that should open a corresponding transaction or task back in Workday. We scope the directions explicitly rather than syncing everything both ways and creating loops.

### How do you match a Workday worker to the right ServiceNow user?

Never on name or email alone. We key on a stable Workday identifier - the Worker ID or Employee ID - mapped to a chosen ServiceNow correlation field (employee_number or a dedicated u_worker_id), so a name change, a marriage, or a pre-hire without a mailbox never creates a duplicate. Contingent workers and employees are distinguished, and workers with multiple positions are handled deliberately rather than overwriting each other.

### Does it respect Workday effective dates, or does everything apply immediately?

It respects them. Workday is effective-dated: a promotion entered today can take effect next month. The pipeline reads the effective date on the business process and applies the change to ServiceNow on that date, not when the transaction was entered. Future-dated changes are held and released on the day they take effect, so ServiceNow never shows a title or manager before it is real.

### How are onboarding and offboarding handled versus a plain user update?

A hire is more than a new sys_user row. We can trigger the ServiceNow HR Service Delivery lifecycle event so onboarding fires the right cases, fulfillment tasks, and provisioning. A termination deactivates the user on the effective date and triggers offboarding, while preserving history, group membership, and role records for audit rather than hard-deleting. The exact cases and tasks are agreed with your ServiceNow team up front.

### Who operates it after go-live?

We do. The pipeline runs on cloud-native, fully EU-hosted infrastructure that we monitor. When Workday moves to a new Web Services version, changes a RaaS report, or ServiceNow alters a Table API field, that is our problem to fix under contract - not a surprise your HR or IT team discovers when a new hire has no access on day one. You get a named owner, alerting, and an SLA rather than a script somebody has to remember to run.

## Related integrations

- [BambooHR ↔ Workday](https://seamless.engineering/integrations/bamboohr-workday/): BambooHR Workday integration
- [Personio ↔ Workday](https://seamless.engineering/integrations/personio-workday/): Personio Workday integration
- [SAP SuccessFactors ↔ Workday](https://seamless.engineering/integrations/successfactors-workday/): SAP SuccessFactors Workday integration
- [Greenhouse ↔ Workday](https://seamless.engineering/integrations/greenhouse-workday/): Greenhouse Workday integration
- [ServiceNow ↔ Jira](https://seamless.engineering/integrations/servicenow-jira/): ServiceNow Jira integration
- [ServiceNow ↔ Salesforce](https://seamless.engineering/integrations/servicenow-salesforce/): ServiceNow Salesforce integration

## Browse by system

- [All Workday integrations](https://seamless.engineering/integrations/workday/)
- [All ServiceNow integrations](https://seamless.engineering/integrations/servicenow/)

## Request a scoping call

Need this integration built and permanently operated? Tell us which systems connect and what data has to move. Fixed-price scoping quote within 48 hours.

- Email: hello@seamless.engineering
- Contact form: https://seamless.engineering/#contact
