Source: https://vaultcrmhelp.veeva.com/doc/Content/CRM_topics/Align/UserMgmt/WorkdayInteg.htm

## Integrating Align and Workday

Admins can connect their instance of Align to Workday, a dedicated HR and user management system, to import newly created, updated, and end-dated users in Workday into Align. This streamlines the User Management process by enabling admins to avoid inputting the same information into both systems, while still maintaining Align’s capabilities of managing users in Vault CRM.

For example, the admin needs to onboard three new roster members into Align, which in turn will be pushed to Vault CRM as new users. The roster members are first created in Workday as part of the onboarding process. During a scheduled import from Workday, the three new roster members are imported into Align, with a series of admin-defined mapped fields automatically populated. The admin assigns these roster members to territories to inherit [functional profiles](FunctProfiles.htm) before pushing the roster members to CRM as new user\_\_sys records.

**Who can use this feature?**

* Align Operational Users - Browser
* [Import from Workday](#Import)
* Users require an Align License

### Configuring Integrating Workday and Align for

[![Closed](../../../../Skins/Default/Stylesheets/Images/transparent.gif)Align Operational Users](#)

Configuring this feature requires setup in both Workday and Vault CRM. Setup in Workday must be done first.

#### Workday Setup

In order to integrate with Align, reports and API entry points must be created in Workday. The report defines which data is imported from Workday into Align, while the API endpoints enable Align to interact with the Workday instance:

1. Log in to Workday.
2. Use the search bar to navigate to **Create Custom Report**.
3. Populate the following fields:

   * Name
   * Report Type – Select Advanced
   * Temporary Report – Unselected
   * Enable as Web Service – Selected
   * Optimized for Performance – Selected
   * Data Source – Indexed All Workers

   ![](../../../Resources/Images/Align/Features/WorkdayInteg/WorkdayCreateCustomReport.png)
4. Configure the desired fields to sync with Align. The following fields on the aln\_roster\_member\_\_v object must be must be represented by columns in the Workday report:

   * first\_name\_cda\_\_v
   * last\_name\_cda\_\_v
   * start\_date\_\_v – If this field is mapped to a Workday field with no value populated, this field automatically populates with the day the record was imported into Align
   * end\_date\_\_v – If this field is mapped to a Workday field with no value populated, this field automatically populates with 2099-12-31
   * workday\_id\_\_v

   ![](../../../Resources/Images/Align/Features/WorkdayInteg/WorkdayMapFields.png)

   The Column Heading Override XML Alias can be optionally used to modify the field label shown in the Workday Report Header column drop down on the Workday Integration Field Mapping screen in Align.
5. Select **Save**.
6. Navigate to **All Actions > Web Service > View URLs**.

   ![](../../../Resources/Images/Align/Features/WorkdayInteg/WorkdayCustomReport.png)
7. Select the **JSON Web Service URL** and select Copy URL. This URL will be used in Align.

In addition to the newly created report, an API Integration Point must be created in Workday to enable Align to retrieve a Client ID and Client Secret:

1. Navigate to **Register API Client for Integrations**.
2. Enter the appropriate **Client Name**. The recommended client name is Veeva Align.

   Do not deselect the Non-Expiring Refresh Token checkbox or edit the Refresh Token Timeout field. If the token expires, admins must regenerate the token, Client ID, and Client Secret and reintegrate Workday with Align.
3. Select the appropriate values in the **Scope (Functional Areas)** multi-select picklist:

   * Staffing – Required
   * Tenant Non-Configurable – Required
   * The domain of any other custom objects in Workday that should be integrated with Align
4. Select the **Include Workday Owned Scope** checkbox when using an OAuth 2.0 client that requires access to core Workday domains outside of these functional areas.

Admins should copy the API Client’s Client Secret and Client ID before navigating away from the page and store it in a separate, secure location since they are used in Align when [creating a Veeva Workday org record](#Create). New Client Secrets can be generated by selecting Generate New API Client Secret.

##### Obtaining Refresh Tokens for the API Integration Point

To obtain a refresh token:

1. Navigate to the appropriate API Client.
2. Select **Manage Refresh Tokens for Integration**.
3. Select the appropriate Workday account.

   Only one refresh token can exist for a given API Client-Workday account pair.
4. Select **Generate New Refresh Token**.

   ![](../../../Resources/Images/Align/Features/WorkdayInteg/WorkdayRefreshToken.png)
5. Select **OK**.

Admins should copy the Refresh Token before navigating away from the page and store it in a separate, secure location since it is used by Align when [creating a Veeva Workday org record](#Create).

#### Align Setup

Before admins can import content from Workday, they must first integrate Workday in Align by creating a Veeva Workday record and mapping the appropriate fields.

1. Navigate to **Admin > Configuration > Application Configurations > Align Integration Administration**.
2. Select **New** in the Workday Section.
3. Populate the following fields:

   * Name
   * Custom Report URL
   * Workday Client ID
   * Client Secret
   * Refresh Token
4. Select **Save**.

Editing an existing Veeva Workday Record requires admins to re-input the Client Secret and Refresh Token.

Once defined, admins must map certain fields from Align to Workday:

1. Navigate to **Admin > Configuration > Application Configurations > Align Integration Administration**.
2. Select the **gear icon** next to the appropriate Veeva Workday Org record in the Workday section.
3. Select **View Field Mapping**.
4. Select **Describe & Edit**.
5. Map the appropriate fields between Align and Workday. The following fields on the aln\_roster\_member\_\_v object must be mapped to a Workday report header:

   * first\_name\_cda\_\_v
   * last\_name\_cda\_\_v
   * manager\_\_v
   * start\_date\_\_v
   * end\_date\_\_v
   * workday\_id\_\_v

   The following types of fields in Align can be mapped to the following types of fields in Workday:

   | Align Field Types | Supported Workday Field Types |
   | --- | --- |
   | Rich Text | * Rich Text * Text * Number * Date * DateTime * Checkbox, Boolean * Picklist * Object * Parent Object * Lookup * Formula * Currency |
   | Text | * Rich Text * Text * Number * Date * DateTime * Checkbox, Boolean * Picklist * Object * Parent Object * Lookup * Formula * Currency |
   | Number | * Number * Formula |
   | Date | * Date |
   | DateTime | * Date * DateTime |
   | Yes/No | * Text * Checkbox, Boolean * Formula |
   | Picklist | * Text * Date |
   | Object | * Text |
   | Parent Object | * Text |
   | Lookup | * Text |
   | Currency | * Currency |
   | Long Text | * Number * Date * DateTime * Checkbox, Boolean * Picklist * Object * Parent Object * Lookup * Formula * Currency * Long Text |
6. Select **Save**.

### Import from Workday as

[![Closed](../../../../Skins/Default/Stylesheets/Images/transparent.gif)Align Operational Users](#)

Once all appropriate fields are mapped, admins can either immediately import from Workday or optionally schedule a job to import from Workday.

Populate the workday\_id\_\_v field on all appropriate roster members before running the initial import from Workday.

#### Immediately Importing from Workday

1. Navigate to **Admin > Configuration > Application Configurations > Align Integration Administration**.
2. Select the **gear icon** next to the appropriate Veeva Workday Org record in the Workday section.
3. Select **Import from Workday**.

#### Scheduling an Import from Workday

1. Navigate to **Admin > Business Admin > Veeva Workday Orgs**.
2. Select the appropriate record.
3. Copy the ID for the appropriate Veeva Workday Org record.
4. Navigate to **Admin > Operations > Job Definitions**.
5. Select **Create**.
6. Enter the appropriate job details.

   ![](../../../Resources/Images/Align/Features/WorkdayInteg/WorkdayCreateJob.png)
7. Navigate to the **Action Configuration** section.
8. Enter the following Lambda URL:

   https://lambda.veevaalign.com/api/latest/process/importFromWorkday?vaulturl=${Vault.domain}&vaultid=${Vault.id}&workdayOrgId=[WORKDAYID]&jobInstanceId=${job\_instance\_id\_\_v}&jobName=[MYJOBNAME]
9. Replace **[WORKDAYID]** in the URL with the copied ID of the Veeva Workday record.
10. Replace **[MYJOBNAME]** in the URL with the name of the job.
11. Select the **Post Session Credentials** checkbox.

    ![](../../../Resources/Images/Align/Features/WorkdayInteg/WorkdayScheduledJob.png)
12. Select the appropriate **Run as** user.
13. Save the Scheduled Job.

#### Importing Roster Member Managers from Workday

When aln\_roster\_member\_\_v records are imported into Align from Workday, the Workday ID in a roster member’s manager\_\_v field automatically populates to reference the aln\_roster\_member\_\_v record that represents the roster member’s manager. If the import does not populate the manager\_\_v field, no association is made.

Since Workday requires every worker to have a manager and Align does not, admins should consider the following specific scenarios when integrating with Workday:

* If the worker in Workday has a manager that is not imported into Align as part of the integration, the manager\_\_v field is not populated for the roster member. This is common for the top most roster member of the field user hierarchy. An import error is not logged in this scenario.
* Top level workers in Workday hierarchies reference themselves as their own manager. When this happens, the manager\_\_v field is not populated for the roster member in Align. An import error is not logged in this scenario.
* If a worker’s manager references a worker that has yet to be upserted into Align, the upsert occurs in two phases. First, the worker is upserted into Align without a populated manager\_\_v field. Then, a second phase updates the manager\_\_v field appropriately. This displays in Align as a single import process.

### Related Topics

[Managing Users in Align](UserMgmt.htm)

[Scheduling Jobs in Align](../Configuration/AlignScheduler.htm)

[Integrating Align with Vault CRM](../Configuration/AlignCRMIntegration.htm)
