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 CRM.

For example, the admin at Verteo Biopharma needs to onboard three new roster members into Align, which in turn will be pushed to CRM as new users. The roster members are first created in Workday as part of the Verteo Biopharma HR 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 before pushing the roster members to CRM as new User records.

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.

Creating Reports

  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

  4. Configure the desired fields to sync with Align. The following fields on the roster_member__aln object must be must be represented by columns in the Workday report:

    • first_name__aln
    • last_name__aln
    • start_date__aln – 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__aln – If this field is mapped to a Workday field with no value populated, this field automatically populates with 12-31-2099
    • workday_id__aln

    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 More Actions > Web Service > View URLs.

  7. Select the JSON Web Service URL and select Copy URL. This URL will be used in Align.

Creating an API Integration Point

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 check box 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 check box 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. 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.

  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.

Align Setup

Before admins can import content from Workday, they must first integrate Workday in Align by creating a Veeva Workday Org record and mapping the appropriate fields.

Create a Veeva Workday Org Record

  1. Navigate to the Integrations tab.
  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 Org Record requires admins to re-input the Client Secret and Refresh Token.

Field Mapping Configuration

  1. Navigate to the Integrations tab.
  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 roster_member__aln object must be mapped to a Workday report header:

    • first_name__aln
    • last_name__aln
    • start_date__aln
    • end_date__aln
    • workday_id__aln
  6. Select Save.

Import from Workday

Once all appropriate fields are mapped, admins can either immediately import from Workday or optionally schedule a job to import from Workday.

Immediately Importing from Workday
  1. Navigate to the Integrations tab.
  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.
  2. Search for Veeva Workday Orgs in the Component lookup field.
  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.

  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 Org record.
  10. Replace [MYJOBNAME] in the URL with the name of the job.
  11. Select the Post Session Credentials check box.

  12. Select the appropriate Run as user.
  13. Save the Scheduled Job.