> ## Documentation Index
> Fetch the complete documentation index at: https://usepike.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Workday

> Sync Workday workers, supervisory organizations, scheduled weekly hours and approved time off into Pike, and send approved hours to Workday Time Tracking.

The Workday integration syncs workers from Workday HCM into Pike [members](https://usepike.com/docs/members/overview.md), with their supervisory organization, job profile and scheduled weekly hours, and syncs approved time off and leaves of absence into Pike [time off](https://usepike.com/docs/members/time-off.md). For hourly workers, Pike can send approved hours to Workday Time Tracking as reported time blocks. Capacity, utilization and payroll then use the same people and the same hours.

## At a glance

| | |
| - | - |
| **Direction** | Workday to Pike for workers, organizations, schedules, time off, leave and compensation. Pike to Workday Time Tracking for hours, when turned on |
| **Who sets it up** | Workspace admins, with an API client and refresh token a Workday admin creates for an integration system user |
| **Plan** | All plans |
| **Sync** | Every 3 hours. On the Enterprise plan, changes sync in real time. |
| **Source of truth** | Workday for person fields, schedules and time off. Pike for capacity, allocations, projects, time and cost rates |

## Before you start

You need:

* The workspace admin role in Pike.
* A Workday admin who can run **Create Integration System User**, **Create Security Group**, **Maintain Permissions for Security Group** and **Register API Client for Integrations**.
* An integration system user (ISU) in an integration system security group. Give the group Get access to worker, organization, job profile, time off and leave of absence data. Add compensation data if you plan to turn on **Sync compensation to cost profiles**, and Put access to the **Process: Import Time Blocks** domain if you plan to send hours. Run **Activate Pending Security Policy Changes** after every change. The ISU syncs only the workers its security group can see.
* Workday Time Tracking, if you want to send hours. Without it, the integration reads from Workday only.
* Pike time off types for the Workday time off and leave types you use. You map each Workday type during setup. See [Time off](https://usepike.com/docs/members/time-off.md).

## Connect Workday

**1. Register an API client in Workday**

In Workday, run **Register API Client for Integrations**. Select the scopes
**Staffing**, **Organizations and Roles**, **Time Off and Leave**,
**Compensation** and **Time Tracking**, and select **Non-Expiring Refresh
Tokens**. Copy the client ID and client secret.

**2. Create a refresh token**

Run **Manage Refresh Tokens for Integrations** for the integration system
user, generate a new refresh token, and copy it.

**3. Open the integration**

In Pike, go to **Workspace settings → Integrations → Workday** and click
**Add integration**.

**4. Enter your credentials**

Enter the Workday REST API endpoint and token endpoint shown in **View API
Clients**, then the client ID, client secret and refresh token. Click
**Connect**. Pike checks the credentials and shows the Workday tenant name.

**5. Map time off types**

Under **Time off types**, choose a Pike time off type for each Workday time
off type and leave type. Pike suggests a mapping from the type names.

**6. Choose what syncs**

In the **What syncs with Workday** card, turn **Read** and **Send** on or
off for each entity, and choose whether to turn on **Invite new employees**.

**7. Import**

Click **Import data**. Supervisory organizations import first, then workers,
then time off and leave.

The integration page shows **Connected**, the Workday tenant name, **Last synced** and **Next sync**.

## What syncs

| Workday | Pike | Direction |
| - | - | - |
| Workers | Members | Workday to Pike |
| Supervisory organizations | Teams | Workday to Pike |
| Job profiles and business titles | Positions | Workday to Pike |
| Scheduled weekly hours | Capacity per week | Workday to Pike |
| Approved time off and leaves of absence | Time off | Workday to Pike |
| Compensation | Member cost profiles | Workday to Pike, when **Sync compensation to cost profiles** is on |
| Reported time blocks | Approved hours from a closed pay period | Pike to Workday, when **Send hours to payroll** is on |

### Workers

| Workday field | Pike field | Notes |
| - | - | - |
| Preferred name | Member name | The legal name when no preferred name is set |
| Email address with usage **Work** | Member email | Also used to match existing members |
| Business title | Position | The job profile name when the business title is empty |
| Supervisory organization | Team | A team is created when no Pike team has the same name |
| Manager | Manager | When the manager's work email matches a Pike member |
| Worker status | Member status | A terminated worker becomes a deactivated member. History is kept |
| Hire date | Hire date | |
| Pay rate type | Employment type | **Hourly** becomes an hourly member, **Salary** a salaried member |
| Scheduled weekly hours | Capacity per week | Spread over Monday to Friday. See [Working time](https://usepike.com/docs/members/working-time.md#work-schedule) |
| Cost center | Cost center | Shown on the member for reports |
| Employee ID | Workday ID | Shown on the member as the Workday marker |

To give a worker a different schedule, such as four days a week, set the work schedule in Pike. Pike uses that schedule as long as the weekly total matches Workday.

### Time off and leave

| Workday field | Pike field | Notes |
| - | - | - |
| Worker | Member | |
| Time off type or leave type | Time off type | Through your type mapping |
| Date, or first and last day of leave | Dates | The estimated last day until the worker returns from leave |
| Quantity in hours or days | Hours per day | A part-day entry removes only its hours from capacity |
| Status | Not stored | Only approved time off and leave import |

Default type mapping: vacation to Vacation, sick to Sick, parental to Parental, time off in lieu to Time off in lieu, unpaid to Unpaid leave, and every other type to Vacation. Each type counts toward the member's [norm hours](https://usepike.com/docs/members/working-time.md#norm-hours) as set on the Pike type.

### Compensation

**Sync compensation to cost profiles** is off by default. Only admins and finance users can turn it on.

| Workday field | Pike field | Notes |
| - | - | - |
| Total base pay, or hourly rate | Cost profile salary | Hourly rate for hourly workers |
| Frequency | Cost profile pay period | Hour, month or year |
| Effective date | Cost profile start date | Each compensation change adds a new row |

See [Cost profile](https://usepike.com/docs/members/cost-profile.md).

### Hours to Workday Time Tracking

**Send hours to payroll** is off by default. When on, closing a [pay period](https://usepike.com/docs/members/payroll.md) in Pike sends each hourly worker's approved hours to Workday Time Tracking through the Import Reported Time Blocks web service. Each day becomes a reported time block with the time entry code you choose under **Time entry codes**: normal hours to your regular code, and paid-out Overtime 1 and Overtime 2 to your overtime codes. Workday time calculations and Workday Payroll then use those blocks. Hours for salaried workers are not sent. Pike does not run payroll or calculate tax.

## Matching and duplicates

On the first import, Pike matches before it creates:

* A worker matches a Pike member with the same work email. A match links the two, and Workday values replace the Pike values for the fields in the mapping.
* A supervisory organization matches a Pike team with the same name. A business title matches a Pike position with the same name.
* Time off and leave always import as new time off. Time off already entered in Pike for the same member and dates stays, and the Workday entry is listed in **Sync issues** as an overlap.

A worker with no matching member appears under **Unmatched employees** on the integration page. Click **Invite** to send a Pike invite, or **Link to member** to link the worker to a member with a different email. With **Invite new employees** on, Pike sends the invite automatically with the default role the admin chose.

## Which system wins

| Entity | Workday owns | Pike owns |
| - | - | - |
| Members | Name, work email, position, team, manager, status, employment type, hire date | Role, rates, working time per weekday, project access, allocations |
| Capacity | Scheduled weekly hours | How the weekly hours spread over the days |
| Time off | Dates, hours and type of time off and leave from Workday | Time off requested in Pike |
| Cost profiles | Salary rows, when compensation sync is on | Cost profiles, when compensation sync is off |
| Time | Nothing | Time entries, approvals, overtime and pay periods |

Edit Workday-owned fields in Workday. Pike shows them as read-only with the Workday marker.

## Sync schedule

Pike syncs Workday every 3 hours. On the Enterprise plan, changes sync in real time. Closing a pay period sends hours to Workday straight away on every plan, as do **Import data**, **Sync now** and **Refresh** on a member. See [How sync works](https://usepike.com/docs/integrations/how-sync-works.md).

## Sync settings

While Workday is connected, the **What syncs with Workday** card is below the top button row on the integration page. Toggles save immediately.

| Entity | Read | Send |
| - | - | - |
| Workers | Yes | Not available |
| Supervisory organizations | Yes | Not available |
| Time off and leave | Yes | Not available |
| Compensation | Off by default, admins and finance users only | Not available |
| Hours to payroll | Not available | Off by default, hourly workers only |

New connections start with **Read** on for workers, supervisory organizations, and time off and leave, with **Invite new employees**, compensation and **Send hours to payroll** off.

Under **Teams from**, choose whether supervisory organizations or cost centers become Pike teams. Supervisory organizations is the default.

## How it works

```mermaid theme={"system"}
sequenceDiagram
  participant HR as HR in Workday
  participant Workday
  participant Pike
  participant RM as Resource manager in Pike
  HR->>Workday: Set scheduled weekly hours to 32
  HR->>Workday: Approve time off for Monday
  Workday->>Pike: Worker and time off, on the next sync or in real time
  Pike->>Pike: Capacity 32 h, less 8 h on Monday
  Pike-->>RM: Allocations show 24 h free that week
  RM->>Pike: Close the pay period
  Pike->>Workday: Reported time blocks for hourly workers
  Workday-->>Pike: Result per worker
```

## Use it in Pike

### Plan around approved leave

Open **Members → Allocations** to see each person's capacity for the week, set from their Workday scheduled weekly hours. Approved time off and leave show on the day with their type, and the hours are already removed from capacity, so an over-allocated day stands out before the work is due. See [Workspace capacity](https://usepike.com/docs/allocation/workspace-capacity.md).

### Onboard a new hire

When a new worker is hired in Workday, they appear in Pike with their team, position and weekly capacity on the next sync. Turn on **Invite new employees**, or click **Invite** under **Unmatched employees**, and the person can log time on their first day.

### Offboard a leaver

When a worker is terminated in Workday, the member is deactivated in Pike. Their logged time, allocations and history stay on every project, and they stop counting toward capacity from the termination date.

### Send hours for hourly workers

Approve time in Pike, then close the pay period. The pay period shows **Sent to Workday** with the number of time blocks. A worker Workday does not accept appears in **Sync issues** with the reason.

## Deletes and removed records

An integration never deletes Pike data. A worker removed from Workday, or no longer visible to the integration system user, is marked **Removed in Workday** on the member, stays in Pike with their history, and stops syncing. Time off canceled in Workday after approval is removed from Pike capacity on the next sync, and the change appears in the member's time off history. Time blocks already sent stay in Workday.

## Troubleshooting

| Symptom | Fix |
| - | - |
| A worker is missing in Pike | The security group cannot see the worker's organization. Change the group's access in Workday, then click **Sync now**. |
| A worker shows under **Unmatched employees** | The worker has no work email in Workday, or it differs from the member's email in Pike. Click **Link to member**, or correct the email in Workday. |
| Approved time off is missing | Check that **Read** is on for time off and leave, and that the entry is approved in Workday. Then click **Refresh** on the member. |
| Time off shows the wrong type | The Workday type maps to a different Pike type. Change it under **Time off types**. Existing time off updates on the next sync. |
| **Sync issues** lists an overlap | Time off for the same dates already exists in Pike. Delete the Pike entry, then click **Retry**. |
| **Sync issues** lists a permission error | The security group lacks a domain. Add it with **Maintain Permissions for Security Group**, run **Activate Pending Security Policy Changes**, then click **Retry**. |
| **Sync issues** lists an authentication error | The refresh token was revoked or the client secret changed. Generate a new token with **Manage Refresh Tokens for Integrations** and enter it under **Credentials**. |
| A time block is rejected | The time entry code is not on the worker's time entry template, or the period is locked in Workday. Change the code under **Time entry codes**, then click **Retry**. |

## Limits

* Pike does not create or change workers, organizations or time off in Workday.
* Pending, denied or canceled time off and leave do not sync.
* Hours go to Workday only for hourly workers, only from closed pay periods, and only from approved time.
* Workday does not accept time blocks for a locked period. Close the Pike pay period before the Workday period locks.
* Hours go to Workday Time Tracking. Pike does not write to Workday Payroll directly.
* Compensation sync is off until an admin or finance user turns it on.

## Disconnect

Go to **Workspace settings → Integrations → Workday** and click **Disconnect**. Syncing stops and every member, team, position and time off entry stays in Pike with its history. Reconnecting the same Workday tenant relinks the members.

## Related

* [How sync works](https://usepike.com/docs/integrations/how-sync-works.md): The schedule, real-time sync and sync issues.
* [Pay periods and payroll](https://usepike.com/docs/members/payroll.md): Period close, pay lines and pay codes.
* [Workspace capacity](https://usepike.com/docs/allocation/workspace-capacity.md): How time off and contracts set available hours.
* [SAP SuccessFactors](https://usepike.com/docs/integrations/sap-successfactors.md): Employees, departments and approved time off.
* [UKG Pro](https://usepike.com/docs/integrations/ukg-pro.md): Employees, time off and hours to payroll.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.