UKG · Arazzo Workflow

UKG Pro HCM Payroll Statement Review

Version 1.0.0

Assemble an employee's pay rate, statement history, and deposit accounts.

1 workflow 1 source API 1 provider
View Spec View on GitHub Human Capital ManagementHCMWorkforce ManagementHRPayrollTime and AttendanceBenefitsSchedulingArazzoWorkflows

Provider

ukg

Workflows

payroll-statement-review
Gather pay rate, pay statements, and direct deposits for an employee.
Validates the employee, then chains pay rate, pay statement history, and direct deposit endpoints into a single payroll review packet.
4 steps inputs: employeeId, endDate, startDate outputs: basePay, firstNetPay, firstStatementId
1
validateEmployee
getEmployee
Confirm the employee exists before pulling compensation data.
2
getPayRate
getEmployeePayRates
Read the current pay rate as the baseline for the statement review.
3
listStatements
listPayStatements
Retrieve the pay statement history for the employee across the requested date range.
4
getDeposits
getEmployeeDirectDeposits
Retrieve the direct deposit accounts so net pay can be reconciled against where funds are routed.

Source API Descriptions

Arazzo Workflow Specification

ukg-payroll-statement-review-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: UKG Pro HCM Payroll Statement Review
  summary: Assemble an employee's pay rate, statement history, and deposit accounts.
  description: >-
    Produces a payroll review packet for a single employee from the UKG Pro HCM
    API. The workflow confirms the employee, reads the current pay rate, pulls
    the pay statement history for a date range, and finishes with the direct
    deposit accounts so a reviewer can reconcile what was earned against where it
    was paid. Every step spells out its request inline so the flow can be read
    and executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: ukgProHcmApi
  url: ../openapi/ukg-pro-hcm-openapi.yml
  type: openapi
workflows:
- workflowId: payroll-statement-review
  summary: Gather pay rate, pay statements, and direct deposits for an employee.
  description: >-
    Validates the employee, then chains pay rate, pay statement history, and
    direct deposit endpoints into a single payroll review packet.
  inputs:
    type: object
    required:
    - employeeId
    - startDate
    - endDate
    properties:
      employeeId:
        type: string
        description: The employee to review payroll for (e.g. EMP001).
      startDate:
        type: string
        description: Start date for the pay statement range (YYYY-MM-DD).
      endDate:
        type: string
        description: End date for the pay statement range (YYYY-MM-DD).
  steps:
  - stepId: validateEmployee
    description: >-
      Confirm the employee exists before pulling compensation data.
    operationId: getEmployee
    parameters:
    - name: employeeId
      in: path
      value: $inputs.employeeId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      employmentStatus: $response.body#/employmentStatus
  - stepId: getPayRate
    description: >-
      Read the current pay rate as the baseline for the statement review.
    operationId: getEmployeePayRates
    parameters:
    - name: employeeId
      in: path
      value: $inputs.employeeId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      payType: $response.body#/payType
      basePay: $response.body#/basePay
      payFrequency: $response.body#/payFrequency
  - stepId: listStatements
    description: >-
      Retrieve the pay statement history for the employee across the requested
      date range.
    operationId: listPayStatements
    parameters:
    - name: employeeId
      in: query
      value: $inputs.employeeId
    - name: startDate
      in: query
      value: $inputs.startDate
    - name: endDate
      in: query
      value: $inputs.endDate
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstStatementId: $response.body#/0/statementId
      firstNetPay: $response.body#/0/netPay
  - stepId: getDeposits
    description: >-
      Retrieve the direct deposit accounts so net pay can be reconciled against
      where funds are routed.
    operationId: getEmployeeDirectDeposits
    parameters:
    - name: employeeId
      in: path
      value: $inputs.employeeId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstAccountBank: $response.body#/0/bankName
      firstAccountType: $response.body#/0/accountType
  outputs:
    basePay: $steps.getPayRate.outputs.basePay
    firstStatementId: $steps.listStatements.outputs.firstStatementId
    firstNetPay: $steps.listStatements.outputs.firstNetPay