Workday Payroll · JSON Structure
Workday Payroll Payslip Structure
A payslip represents a worker's pay statement for a specific pay period, detailing earnings, deductions, taxes, and net pay amounts along with year-to-date totals.
Type: object
Properties: 16
Required: 4
CompensationEnterpriseHuman ResourcesPayrollSaaSTax
Workday Payroll Payslip is a JSON Structure definition published by Workday Payroll, describing 16 properties, of which 4 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
id
worker
payPeriod
paymentDate
grossPay
netPay
totalEarnings
totalDeductions
totalTaxes
currency
earnings
deductions
taxes
yearToDateGross
yearToDateNet
yearToDateTaxes
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/workday-payroll/refs/heads/main/json-structure/workday-payroll-payslip-structure.json",
"name": "Workday Payroll Payslip",
"description": "A payslip represents a worker's pay statement for a specific pay period, detailing earnings, deductions, taxes, and net pay amounts along with year-to-date totals.",
"type": "object",
"required": [
"worker",
"payPeriod",
"grossPay",
"netPay"
],
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for the payslip"
},
"worker": {
"$ref": "#/$defs/WorkerRef"
},
"payPeriod": {
"$ref": "#/$defs/PayPeriod"
},
"paymentDate": {
"type": "date",
"description": "Date of payment"
},
"grossPay": {
"type": "double",
"minimum": 0,
"description": "Total gross pay for the period"
},
"netPay": {
"type": "double",
"minimum": 0,
"description": "Total net pay after all deductions and taxes"
},
"totalEarnings": {
"type": "double",
"minimum": 0,
"description": "Sum of all earnings for the period"
},
"totalDeductions": {
"type": "double",
"minimum": 0,
"description": "Sum of all deductions for the period"
},
"totalTaxes": {
"type": "double",
"minimum": 0,
"description": "Sum of all tax withholdings for the period"
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code"
},
"earnings": {
"type": "array",
"items": {
"$ref": "#/$defs/EarningLine"
},
"description": "Itemized earnings breakdown"
},
"deductions": {
"type": "array",
"items": {
"$ref": "#/$defs/DeductionLine"
},
"description": "Itemized deductions breakdown"
},
"taxes": {
"type": "array",
"items": {
"$ref": "#/$defs/TaxLine"
},
"description": "Itemized tax withholdings breakdown"
},
"yearToDateGross": {
"type": "double",
"minimum": 0,
"description": "Year-to-date gross pay"
},
"yearToDateNet": {
"type": "double",
"minimum": 0,
"description": "Year-to-date net pay"
},
"yearToDateTaxes": {
"type": "double",
"minimum": 0,
"description": "Year-to-date tax withholdings"
}
},
"definitions": {
"WorkerRef": {
"name": "WorkerRef",
"type": "object",
"description": "Reference to a worker in the Workday system",
"properties": {
"id": {
"type": "string",
"description": "Worker unique identifier"
},
"descriptor": {
"type": "string",
"description": "Worker display name"
}
}
},
"PayPeriod": {
"name": "PayPeriod",
"type": "object",
"description": "Date range defining the pay period",
"required": [
"startDate",
"endDate"
],
"properties": {
"startDate": {
"type": "date",
"description": "Start date of the pay period"
},
"endDate": {
"type": "date",
"description": "End date of the pay period"
}
}
},
"EarningLine": {
"name": "EarningLine",
"type": "object",
"description": "A single line item for an earning on the payslip",
"properties": {
"earningCode": {
"type": "string",
"description": "Earning code descriptor"
},
"currentAmount": {
"type": "double",
"description": "Current period amount"
},
"currentHours": {
"type": "double",
"description": "Current period hours worked"
},
"rate": {
"type": "double",
"description": "Pay rate applied"
},
"yearToDateAmount": {
"type": "double",
"description": "Year-to-date total for this earning"
}
}
},
"DeductionLine": {
"name": "DeductionLine",
"type": "object",
"description": "A single line item for a deduction on the payslip",
"properties": {
"deductionCode": {
"type": "string",
"description": "Deduction code descriptor"
},
"employeeAmount": {
"type": "double",
"description": "Employee contribution amount"
},
"employerAmount": {
"type": "double",
"description": "Employer contribution amount"
},
"preTax": {
"type": "boolean",
"description": "Whether the deduction is pre-tax"
},
"yearToDateEmployee": {
"type": "double",
"description": "Year-to-date employee amount"
},
"yearToDateEmployer": {
"type": "double",
"description": "Year-to-date employer amount"
}
}
},
"TaxLine": {
"name": "TaxLine",
"type": "object",
"description": "A single line item for a tax withholding on the payslip",
"properties": {
"taxAuthority": {
"type": "string",
"description": "Tax authority name"
},
"taxType": {
"type": "string",
"description": "Type of tax"
},
"currentAmount": {
"type": "double",
"description": "Current period tax amount"
},
"yearToDateAmount": {
"type": "double",
"description": "Year-to-date tax amount"
}
}
}
}
}