Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article describes the configuration steps required for API-based payroll integration between Microsoft Dynamics 365 Human Resources and Ceridian Dayforce. Configuration is required in both systems before a pay run can be processed.
Environment settings
Before using the Human Resources payroll integration, configure the following parameters:
On the Human Resources shared parameters page:
- On the Positions tab, select Require departments on positions.
- On the Payroll integration tab, select Use payroll address purposes.
On the Human Resources parameters page:
- On the Payroll integration tab, select Use identification types in payroll processing.
- In the Identification type field, select the appropriate identification type for the legal entity.
In General Ledger, navigate to Chart of accounts > Dimensions > Financial dimension configuration for integrating applications > Data entities. Define financial dimension formats for data entities.
Note
Human Resources parameters are unique per legal entity and must be configured for each entity. Coordinate with Ceridian to determine which financial dimensions align with the Dayforce site (location).
Important
For customers using mshr entities, row version change tracking must be disabled. Contact Microsoft support to enable the DMFDisableSqlRowVersionCtForCDSVirtualEntity flight.
Enable features
You must enable features in Feature management to expose Microsoft APIs to the integration and the data to be passed to Dayforce. Some features may already be enabled by default.
To enable features, follow these steps:
- Go to System administration > Feature management > All.
- Enable the following features:
- Streamline employee entity
- Benefits management
Virtual tables
Human Resources is a virtual data source in Dataverse. It provides full create, read, update, and delete (CRUD) operations from Dataverse and Microsoft Power Platform.
To set up mshr Virtual tables, follow these steps.
Register the app in Microsoft Azure
You must register your Human Resources instance in the Azure portal so the Microsoft identity platform can provide authentication and authorization services for the app and users. For more information about registering apps in Azure, see Register an application with the Microsoft identity platform.
- Open the Microsoft Azure portal.
- In the Azure services list, select App registrations.
- Select New registration.
- In the Name field, enter a descriptive name for the app. For example, Dynamics 365 Human Resources Virtual Tables.
- In the Redirect URI field, select Web and enter the namespace URL of your FinOps application like
https://<hostname>.operations.dynamics.com - Select Register.
- When registration completes, the Azure portal displays the app registration's Overview pane, which includes its Application (client) ID. Note the Application (client) ID.
- In the left navigation pane, select Certificates and secrets.
- In the Client secrets section, select New client secret.
- Provide a description, select a duration, and select Add.
- Record the secret's value from the Value property of the table.
Important
Be sure to take note of the secret's value as the secret isn't displayed again after you leave this page.
Install the Dynamics 365 Human Resources virtual table app
Install the Dynamics 365 Human Resources virtual table app in your Power Apps environment to deploy the virtual table solution package to Dataverse.
- Navigate to Power platform admin center and select your environment.
- Select Dynamics 365 apps under Resources tile.
- Select Install app.
- Select Dynamics 365 HR Virtual Tables app.
Configure the virtual table data source
To configure the virtual table data source in the Power Apps environment, follow these steps:
Open the Maker portal and select your environment.
Go to tables and search for Finance and Operations Virtual Data source configuration table.
Select Microsoft HR Data Source record and enter the following information.
Enter the required information for the data source configuration:
- Target URL: The URL of your Finops namespace. The format of the target URL is:
https://<hostname>.operations.dynamics.com/
Note
Be sure to include the "/" character at the end of the URL to avoid receiving an error.
- Tenant ID: The Microsoft Entra tenant ID.
- Microsoft Entra Application ID (AAD ApplicationId): The application (client) ID created for the application registered in the Microsoft Azure portal. You received this information during the Register the app in Microsoft Azure step.
- Microsoft Entra Application Secret: The client secret created for the application registered in the Microsoft Azure portal. You received this information earlier during the Register the app in Microsoft Azure step.
- AAD Resource: Put this value 00000015-0000-0000-c000-000000000000.
- Target URL: The URL of your Finops namespace. The format of the target URL is:
Select Save and Close.
Grant app permissions in Dynamics 365 finance and operations
Grant permissions for the two Microsoft Entra applications in the Dynamics 365 finance and operations application:
- In Dynamics 365 finance and operations, navigate to System administration -> Setup -> Microsoft Entra ID applications page.
- Select New to create a new application record:
- In the Client ID field, enter the client ID of the app you registered in the Microsoft Azure portal.
- In the Name field, enter the name of the app you registered in the Microsoft Azure portal.
- In the User ID field, select the user ID of a user with admin permissions in Dynamics 365 finance and operations and the Power Apps environment.
- Select New to create a second application record:
- Client Id: f9be0c49-aa22-4ec6-911a-c5da515226ff
- Name: Dynamics 365 HR Virtual Table
- In the User ID field, select the user ID of a user with admin permissions in Finops and the Power Apps environment.
Generate virtual tables
When setup completes, you can select the virtual tables you want to generate and enable in your Dataverse instance.
- Open the Maker portal and select your environment.
- Select Available HR Entities table.
- Select the table or tables you want to generate in Dataverse.
- Select Has Been Generated/refresh.
To see the entities that are present for dayforce integration, see Mshr payroll entities.
Change tracking
The change tracking feature in Dataverse detects data that has changed since the data was originally extracted or last synced. For more information, see Use change tracking to synchronize data with external systems.
To enable change tracking, follow these steps.
- Go to System administration > Data management > Data entities.
- Search for the target entity.
- Turn on Track changes.
| Target entity | Change tracking |
|---|---|
| DirPersonNameHistoricalEntity | All tables |
| HcmCompFixedEmplEntity | All tables |
| HcmCompFixedPlanTableEntity | All tables |
| HcmCompVarPlanTableEntity | All tables |
| HcmEmployeeEntity | All tables |
| HcmEmployeeV2Entity | All tables |
| HcmEmploymentDetailEntity | All tables |
| HcmEmploymentEmployeeEntity | All tables |
| HcmEmploymentEntity | All tables |
| HcmEmploymentTypeEntity | All tables |
| HcmEmploymentV2Entity | All ltables |
| HcmIdentificationTypeEntity | All tables |
| HcmJobBaseEntity | All tables |
| HcmJobCompensationEntity | All tables |
| HcmJobDetailEntity | All tables |
| HcmJobEntity | Primary table |
| HcmJobFamilyEntity | All tables |
| HcmJobFunctionEntity | All tables |
| HcmJobTaskEntity | All tables |
| HcmJobTypeEntity | All tables |
| HcmLaborUnionEntity | All tables |
| HcmPersonDetailsEntity | All tables |
| HcmPersonIdentificationNumberEntity | All tables |
| HcmPositionBaseEntity | All tables |
| HcmPositionDefaultDimensionEntity | All tables |
| HcmPositionDetailEntity | All tables |
| HcmPositionEntity | Primary table |
| HcmPositionHierarchyEntity | All tables |
| HcmPositionHierarchyTypeEntity | All tables |
| HcmPositionTypeEntity | All tables |
| hcmPositionUnionAgreementEntity | All tables |
| HcmPositionV2Entity | All tables |
| HcmPositionWorkerAssignmentEntity | Primary table |
| HcmPositionWorkerAssignmentV2Entity | Primary table |
| HcmUnionsEntity | All tables |
| HcmVariableCompensationTypeEntity | All tables |
| HcmWorkerBankAccountEntity | All tables |
| HcmWorkerBaseEntity | Custom |
| HcmWorkerEntity | Custom |
| HcmWorkerPayrollInfoEntity | All tables |
| PayrollBankAccountDisbursementEntity | Primary table |
| PayrollEmployeeEntity | Primary table |
| PayrollFixedCompensationPlanEntity | All tables |
| PayrollPositionDetailsEntity | All tables |
| PayrollPositionEntity | All tables |
| PayrollPositionJobEntity | All tables |
| PayrollWorkerAddressCurrentEntity | All tables |
Add Dayforce Connector user in Dynamics 365 finance and operations
- Go to System administration > Manager user, and select New user.
- Enter values in the User ID, User name, User email, and Role fields.
- Use the previously created API Dayforce Connector role.
Note
The user name and password are required for the setup of the MyIntegration portal in Dayforce.
Enable the connection
Important
This section requires a user who has full administrative security access to the Dataverse and Azure tenant. The user must also have the right to give consent on behalf of the company (tenant) to allow access to the Human Resources APIs.
To connect the Human Resources environment to Dayforce payroll, follow these steps:
- Add the Dayforce payroll connector application to the tenant.
- Configure an API role for the Dataverse environment.
Enable the Dayforce people connector application on the customer tenant
The customer's Microsoft tenant controls all activity in the customer's Microsoft environment. This activity includes security and access to all Microsoft applications. By enabling the Dayforce people connector on the tenant, you enable it to communicate with the necessary Microsoft applications that are used in this integration.
- Go to https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=6817703f-e5b3-4eec-b11f-ba6367f1b156&response_type=id_token&redirect_uri=https://developersdev.dayforce.com/Dev/Microsoft-to-Dayforce-Connector.aspx&scope=openid&response_mode=fragment&state=12345&nonce=678910.
- Enable the URL for the company.
- Select Consent on behalf of your organization.
Add the Dayforce people connector in Dataverse
You must add the Dayforce people connector to your specific Dataverse instance.
Open Power Platform admin center, go to Environment > Settings > Application users, and select New user.
Add the Dayforce people connector application. The app ID is 6817703f-e5b3-4eec-b11f-ba6367f1b156.
Give the application the following security roles:
- Basic user
- Finance and operations basic user
For more information, see the following resources:
Add the Dayforce people connector to the Human Resources environment
- In Human Resources, go to Microsoft Entra Application, and select New.
- Add the Dayforce payroll connector that has the client ID 6817703f-e5b3-4eec-b11f-ba6367f1b156 and the user ID DFAPIConnector.
Ready to pay
Important
Before employees can be integrated into Dayforce, they must be marked Ready to pay. Employees that aren't marked Ready to pay won't be picked up.
The Dayforce people connector integration uses Microsoft's ready to pay feature to ensure that a complete, valid employee profile has been created before payroll is processed. For more information, see Ready to pay.