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

# Workday

> Sync enriched data from your warehouse to your Workday instance

## Supported syncing

| Type | Description | Supported Sync Modes | API Reference |
| - | - | - | - |
| **Organizations** | Sync data from any source to Workday organizations | Upsert, Update | [Organization docs](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Add_Update_Organization.html) |
| **Workers** | Sync data from any source to Workday workers | Update | [Home contact information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Home_Contact_Information.html), [work contact information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Work_Contact_Information.html), and [personal information docs](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Personal_Information.html) |
| **Positions** | Sync data from any source to Workday positions | Update | [Position docs](https://community.workday.com/sites/default/files/file-hosting/productionapi/Staffing/v40.1/Edit_Position.html) |

For more information about sync modes, refer to the [sync modes](https://docs.hightouch.com/syncs/types-and-modes.md#sync-modes) docs.

## Connect to Workday

Go to the [**Destinations** overview page](https://app.hightouch.com/destinations?from=docs) and click the **Add destination** button. Select **Workday** and click **Continue**. You can then authenticate Hightouch to **Workday** by entering the following required fields into Hightouch:

* **Hostname**
* **Tenant ID**
* **Username**
* **Password**

The **hostname** is the hostname of the Workday SOAP endpoints you want to use.
You only need to enter the hostname, without `https://` nor particular endpoint URL.

For example, if you want to use this SOAP endpoint: `https://wd2-impl-services1.workday.com/ccx/service/your_company/Human_Resources/v40.1`,
enter `wd2-impl-services1.workday.com`.
If you don't have a hostname, enter `wd2-impl-services1.workday.com`.

You can find your **tenant ID** from your URL when you are logged into Workday.
For example, if the URL is `https://impl.workday.com/your_company/d/home.html`, then your tenant ID is `your_company`.

Workday recommends that you use Integrated System User (ISU) to when connecting to Workday via third-party services like Hightouch.
See [Workday's docs](https://doc.workday.com/reader/Z9lz_01hqDMDg6NSf7wCBQ/esBDCh5D66sgBhIxmQ5U5g) for more information on setting up an ISU.

## Sync configuration

Once you've set up your Workday destination and have a [model](https://docs.hightouch.com/getting-started/concepts.md#models) to pull data from, you can set up your sync configuration to begin syncing data. Go to the [**Syncs** overview page](https://app.hightouch.com/syncs?from=docs) and click the **Add sync** button to begin. Then, select the relevant model and the Workday destination you want to sync to.

### Syncing organizations

This sync type adds new organizations and/or updates existing organizations with the supplied information.
A new effective-dated organization name is automatically created if any attributes used for organization name are different as of specified effective date.

To use this sync type, you need to have **Put** access for the **Manage: Organization Update Integration** domain.

#### Record matching

To match rows from your model to organization in Workday, you need to select a model column and corresponding Workday field.

* In **upsert** mode, you can match on either **Organization Reference ID** or **Integration ID Data**.
* In **update** mode, you must match on **Integration ID Data**.

If you are matching with **Integration ID Data**, you must also provide the **System ID** in the attributes mapping.

#### Field mapping

Hightouch lets you sync organization fields via [field mapping](https://docs.hightouch.com/syncs/mapping-data.md).
You can map data from any of your model columns to the default organization fields.
Ensure your model columns data types match the data types of the fields you want to sync to.

### Syncing workers

This sync type updates existing workers in Workday.

#### Record matching

To match rows from your model to worker in Workday, you need to select a model column and corresponding Workday field. You can match on any of the following Workday fields:

* **Universal\_ID\_Reference**
* **Person\_Reference**

When matching with **Universal\_ID\_Reference**, you must also specify its **Reference Type** int the attributes mapping. Valid values are:

* `WID`
* `Universal_Identifier_ID`

When matching on **Person\_Reference**, you must also specify its **Reference Type** in the attributes mapping.
See the [RoleObject](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Home_Contact_Information.html#RoleObjectIDType)'s `@type` for the full list of valid values.

#### Field mapping

Hightouch lets you use [field mapping](https://docs.hightouch.com/syncs/mapping-data.md) to update the following kinds of worker information:

* [home contact information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Home_Contact_Information.html#Person_Contact_Information_DataType)
* [work contact information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Work_Contact_Information.html#Person_Contact_Information_DataType)
* [personal information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Personal_Information.html#Change_Personal_Information_DataType)

Field names for [home contact information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Home_Contact_Information.html#Person_Contact_Information_DataType) begin with *Home*,
field names for [work contact information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Work_Contact_Information.html#Person_Contact_Information_DataType) begin with *Work*, and field names for [personal information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Personal_Information.html#Change_Personal_Information_DataType) begin with *Personal Information*.

You can map data from any of your model columns to these fields. Ensure your model columns data types match the data types of the fields you want to sync to.

### Syncing positions

This sync type updates existing positions in Workday.

#### Record matching

To match rows from your model to position in Workday, you need to select a model column and corresponding Workday field. You can match on any of the following Workday fields:

* `WID`
* `Position_ID`

#### Field mapping

Hightouch lets you sync position fields via [field mapping](https://docs.hightouch.com/syncs/mapping-data.md).
You can map data from any of your model columns to the default position fields.
Ensure your model columns data types match the data types of the fields you want to sync to.

## Tips and troubleshooting

To see the exact API requests and responses from each sync run, use the [live debugger](https://docs.hightouch.com/syncs/debugger.md). To get notified by Slack, PagerDuty, SMS, or email when a sync fails, set up [sync alerts](https://docs.hightouch.com/syncs/alerting.md). If you run into an issue this page doesn't cover, [contact support](#pylon-chat).

## Common errors

### The task submitted is not authorized

This error means your Workday user doesn't have enough permission to perform the API operation configured in the Hightouch sync.
You can resolve the error by granting the user you [authenticated with](#connect-to-workday) with the permission required for the endpoint.

For example, if you get this error when you're trying to make changes with the [Change\_Home\_Contact\_Information](https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.1/Change_Home_Contact_Information.html) endpoint, you should ensure your user has permission to use this API.
