org.mule.modules

mule-module-workday

config

Namespacehttp://www.mulesoft.org/schema/mule/wd-payroll-interface
Schema Locationhttp://www.mulesoft.org/schema/mule/wd-payroll-interface/current/mule-wd-payroll-interface.xsd  (View Schema)
Schema Version2.0
Minimum Mule Version3.4

Module Overview

The Payroll Interface Web Service contains operations that expose Workday Human Capital Management Business Services data for integration with external payroll systems.

Summary

Configuration
<wd-payroll-interface:config>
Configure an instance of this module
Message Processors
<wd-payroll-interface:get-batches>
Retrieves data related to an externally loaded Batch and its associated Application Input (e.g.
<wd-payroll-interface:get-external-pay-groups>
This operation retrieves data related to an External Pay Group (e.g.
<wd-payroll-interface:get-external-payroll-inputs>
Retrieves data related to External Payroll Inputs (e.g.
<wd-payroll-interface:get-payees>
Retrieves data related to Payees (e.g.
<wd-payroll-interface:get-period-schedules-payroll-interface>
Return Period Schedules
<wd-payroll-interface:get-worker-costing-allocations-payroll-interface>
Get Worker- or Position Restrictions-based costing allocations, either for specific criteria or for all workers or positions.
<wd-payroll-interface:put-external-pay-group>
This web service operation allows the user to do the following: 1 - Update Last Extract Created for External Pay Group by providing External Pay Group Reference, Integration System Reference, and Date Time.
<wd-payroll-interface:put-external-payroll-actuals>
Gives you the ability to import third-party payroll actual hours worked into Workday.
<wd-payroll-interface:put-external-payroll-input>
Accepts periodic employee pay data from an external partner for use in Payroll Interface web service APIs.
<wd-payroll-interface:put-external-payroll-results>
Allows the input of multiple payroll results from external systems into Workday.
<wd-payroll-interface:put-period-schedule-payroll-interface>
This public web service operation is designed to add/update Period Schedules

Configuration

To use the this module within a flow the namespace to the module must be included. The resulting flow will look similar to the following:

<mule xmlns="http://www.mulesoft.org/schema/mule/core"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:wd-payroll-interface="http://www.mulesoft.org/schema/mule/wd-payroll-interface"
      xsi:schemaLocation="
               http://www.mulesoft.org/schema/mule/core
               http://www.mulesoft.org/schema/mule/core/current/mule.xsd
               http://www.mulesoft.org/schema/mule/wd-payroll-interface
               http://www.mulesoft.org/schema/mule/wd-payroll-interface/current/mule-wd-payroll-interface.xsd">

      <!-- here goes your flows and configuration elements -->

</mule>

Connection Pool

This connector offers automatic connection management via the use of a connection pool. The pool will act a storage mechanism for all the connections that are in-use by the user of this connector.

Prior to execution of a processor, the connector will attempt to lookup an already established connection and if one doesn't exists it will create one. That lookup mechanism is done in the connection pool via the use of connection variables declared as keys.

The user of the connector can configure the pool by adding a connection-pooling-profile to the connector configuration like this:

    <wd-payroll-interface:connection-pooling-profile maxActive="10" maxIdle="10"
                             exhaustedAction="WHEN_EXHAUSTED_GROW" maxWait="120" minEvictionMillis="60000" evictionCheckIntervalMillis="30000"/>

The following is a list of connection attributes, each connection attribute can be configured at the config element level or they can also be added to each processor. If they are used at the processor level they get the benefit of full expression resolution.

Connection Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
payrollInterfaceUser Workday user String */* UTF-8
payrollInterfacePassword Workday password String */* UTF-8
payrollInterfaceEndpoint Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8

Reconnection Strategies

Reconnection Strategies specify how a connector behaves when its connection fails. You can control how Mule attempts to reconnect by specifying a number of criteria:

With a reconnection strategy, you can better control the behavior of a failed connection, by configuring it, for example, to re-attempt the connection only once every 15 minutes, and to give up after 30 attempts. You can also send an automatic notification to your IT administrator whenever this reconnection strategy goes into effect. You can even define a strategy that attempts to reconnect only during business hours. Such a setting can prove useful if your server is frequently shut down for nightly maintenance.

Configuration

A reconnection strategy that allows the user to configure how many times a reconnection should be attempted and how long to wait between attempts.

    <wd-payroll-interface:config>
         <reconnect count="5" frequency="1000"/>
    </wd-payroll-interface:config>
Reconnect Attributes
NameDefault ValueDescription
frequency 2000 Optional. How often (in ms) to reconnect
count 2 Optional. How many reconnection attempts to make

For more information about reconnection strategies in Mule, or even how to write your own custom reconnection strategy please check this section.

Message Processors

<wd-payroll-interface:get-batches>

Retrieves data related to an externally loaded Batch and its associated Application Input (e.g. Payroll, External Payroll, Absence).

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
batchesRequest #[payload] Optional. Request element used to find and get Batches and their associated data. GetBatchesRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
GetBatchesResponseType element containing instances of Batch and each of its associated data.
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:get-external-pay-groups>

This operation retrieves data related to an External Pay Group (e.g. Pay Group expected to have Payroll processed on an external non-Workday system).

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
externalPayGroupsRequest #[payload] Optional. Request element used to find and get External Pay Groups and their associated data. GetExternalPayGroupsRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
GetExternalPayGroupsResponseType element containing instances of External Pay Group and each of its associated data.
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:get-external-payroll-inputs>

Retrieves data related to External Payroll Inputs (e.g. associated with an External Earning/Deduction).

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
externalPayrollInputsRequest #[payload] Optional. Request element used to find and get External Payroll Input entries and their associated data. GetExternalPayrollInputsRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
GetExternalPayrollInputsResponseType element containing instances of External Payroll Inputs and each of its associated data.
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:get-payees>

Retrieves data related to Payees (e.g. Employees) that belong to an External Pay Group (e.g. Pay Group expected to have Payroll processed on an external non-Workday system). Data returned includes Employment, Personal, Earnings and Deductions.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
payeesRequest #[payload] Optional. Request element used to find and get Payees and their associated data. GetPayeesRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
GetPayeesResponseType element containing instances of Payees and each of his/her associated data.
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:get-period-schedules-payroll-interface>

Return Period Schedules

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
getPeriodSchedulesRequest #[payload] Optional. The request object for the operation GetPeriodSchedulesRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
GetPeriodSchedulesResponseType The response from the operation
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:get-worker-costing-allocations-payroll-interface>

Get Worker- or Position Restrictions-based costing allocations, either for specific criteria or for all workers or positions. Can include only the external integration references or the full allocation details.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
getWorkerCostingAllocationsRequest #[payload] Optional. The request object for the operation GetWorkerCostingAllocationsRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
GetWorkerCostingAllocationsResponseType The response from the operation
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:put-external-pay-group>

This web service operation allows the user to do the following: 1 - Update Last Extract Created for External Pay Group by providing External Pay Group Reference, Integration System Reference, and Date Time. 2 - Update External Payroll Period Status by providing Pay Group Reference, Period Reference, and Period Status Reference. Note: Put Pay Group (Web Service) allows the user to add/update the full External Pay Group instance with all required details.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
externalPayGroup #[payload] Optional. Put External Pay Group Request element PutExternalPayGroupRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
PutExternalPayGroupResponseType response element
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:put-external-payroll-actuals>

Gives you the ability to import third-party payroll actual hours worked into Workday.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
externalPayrollActuals #[payload] Optional. Request element PutExternalPayrollActualsRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
ExternalPayActualResponseType response element
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:put-external-payroll-input>

Accepts periodic employee pay data from an external partner for use in Payroll Interface web service APIs.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
externalPayrollInput #[payload] Optional. Request element used to load/update an instance of an External Payroll Input entry PutExternalPayrollInputRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
PutExternalPayrollInputResponseType Response element from load/update of an instance of External Payroll Input
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:put-external-payroll-results>

Allows the input of multiple payroll results from external systems into Workday.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
externalPayrollResults #[payload] Optional. External Payroll Result Request PutExternalPayrollResultsRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
PutExternalPayrollResultsResponseType Put External Payroll Results Response
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

<wd-payroll-interface:put-period-schedule-payroll-interface>

This public web service operation is designed to add/update Period Schedules

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
putPeriodScheduleRequest #[payload] Optional. The request object for the operation PutPeriodScheduleRequestType */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
payrollInterfaceUser Optional. Workday user String */* UTF-8
payrollInterfacePassword Optional. Workday password String */* UTF-8
payrollInterfaceEndpoint Optional. Workday endpoint String */* UTF-8
payrollInterfaceWsdlLocation https://community.workday.com/custom/developer/API/Payroll_Interface/v20/Payroll_Interface.wsdl Optional. Workday WSDL location String */* UTF-8
Returns
Return Type Description
PutPeriodScheduleResponseType The response from the operation
Exception Payloads
Payload ClassDescription
WorkdayException If an error during the operation occurs this exception is thrown

Message Sources

Transformers