
eedm.payroll-deduction-arrangements.v7.0.payroll-deduction-arrangements.json Maven / Gradle / Ivy
{
"title" : "Payroll Deduction Arrangements",
"description" : "A request to establish a payroll deduction.",
"type" : "object",
"properties" : {
"metadata" : {
"$ref" : "resource:/eedm/metadata.json"
},
"id" : {
"title" : "ID",
"description" : "The global identifier of a payroll deduction request.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"person" : {
"title" : "Person",
"description" : "The employee for whom the payroll deduction is requested.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Person.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/persons/{id}",
"targetSchema" : {
"$ref" : "persons.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
},
"paymentTarget" : {
"title" : "Payment Target",
"description" : "The target towards which payroll deductions are requested.",
"oneOf" : [ {
"title" : "One Of-1",
"description" : "",
"type" : "object",
"properties" : {
"commitment" : {
"title" : "Commitment",
"description" : "The commitment and type of commitment made.",
"type" : "object",
"properties" : {
"contribution" : {
"title" : "Contribution",
"description" : "The contribution (pledge/recurring donation) for which the payroll deduction is requested",
"type" : "string"
},
"type" : {
"title" : "Type",
"description" : "The reason for a payroll deduction request.",
"enum" : [ "pledge", "recurringDonation", "membershipDues" ],
"type" : "string"
}
},
"additionalProperties" : false
}
},
"additionalProperties" : false
}, {
"title" : "One Of-2",
"description" : "",
"type" : "object",
"properties" : {
"deduction" : {
"title" : "Deduction",
"description" : "Payroll deduction for HSA, dining, parking, wage garnishments, etc.",
"type" : "object",
"properties" : {
"deductionType" : {
"title" : "Deduction Type",
"description" : "Payroll deduction for HSA, dining, parking, wage garnishments, etc.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Deduction Type.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/deduction-types/{id}",
"targetSchema" : {
"$ref" : "deduction-types.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"additionalProperties" : false
}
},
"additionalProperties" : false
} ]
},
"status" : {
"title" : "Status",
"description" : "The status of a payroll deduction request.",
"enum" : [ "active", "suspended", "rejected", "cancelled", "withdrawn", "terminated" ],
"type" : "string"
},
"amountPerPayment" : {
"title" : "Amount per Payment",
"description" : "The amount to be deducted per instance.",
"format" : "currency",
"type" : "object",
"properties" : {
"value" : {
"title" : "Value",
"description" : "The monetary value",
"type" : "number"
},
"currency" : {
"title" : "Currency",
"description" : "The ISO 4217 currency code",
"enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
"type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "value", "currency" ]
},
"totalAmount" : {
"title" : "Total Amount",
"description" : "The total amount to be deducted.",
"oneOf" : [ {
"type" : "object",
"format" : "currency",
"properties" : {
"value" : {
"title" : "Value",
"description" : "The monetary value",
"type" : "number"
},
"currency" : {
"title" : "Currency",
"description" : "The ISO 4217 currency code",
"enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRO", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SRD", "SSP", "STD", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL" ],
"type" : "string"
}
},
"additionalProperties" : false,
"required" : [ "value", "currency" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
},
"startOn" : {
"title" : "Start On",
"description" : "The date when the payroll deductions should begin.",
"type" : "string",
"format" : "date",
"pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
},
"endOn" : {
"title" : "End On",
"description" : "The date when the payroll deductions should end.",
"oneOf" : [ {
"type" : "string",
"format" : "date",
"pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
}, {
"type" : "string",
"maxLength" : 0
} ]
},
"payPeriodOccurence" : {
"title" : "Pay Period Occurence",
"description" : "The pay periods for which the payroll deductions are applicable.",
"oneOf" : [ {
"title" : "Interval",
"description" : "The number of pay periods between deductions, e.g 1 = every pay period, 2 = every other pay period).",
"type" : "object",
"properties" : {
"interval" : {
"title" : "Interval",
"description" : "The number of pay periods between deductions, e.g. 1 = every pay period, 2 = every other pay period).",
"type" : "integer"
}
},
"additionalProperties" : false,
"required" : [ "interval" ]
}, {
"title" : "Monthly Pay Periods",
"description" : "A list of pay periods during a month when deductions should occur. Use a positive number to count from the start of the month (e.g., 1 = first pay period of the month, 2 = second pay period of the month), and a negative number to count from the end of the month (e.g. -1 = last pay period of the month).",
"type" : "object",
"properties" : {
"monthlyPayPeriods" : {
"title" : "Monthly Pay Periods",
"description" : "A list of pay periods during a month when deductions should occur. Use a positive number to count from the start of the month (e.g., 1 = first pay period of the month, 2 = second pay period of the month), and a negative number to count from the end of the month (e.g. -1 = last pay period of the month).",
"type" : "array",
"minItems" : 1,
"items" : {
"type" : "integer"
}
}
},
"additionalProperties" : false,
"required" : [ "monthlyPayPeriods" ]
} ]
},
"changeReason" : {
"title" : "Change Reason",
"description" : "The reason why a property was changed (example: status change)",
"oneOf" : [ {
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Change Reason.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/payroll-deduction-arrangement-change-reasons/{id}",
"targetSchema" : {
"$ref" : "payroll-deduction-arrangement-change-reasons.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
}
},
"required" : [ "id", "person", "paymentTarget", "status", "amountPerPayment", "startOn", "payPeriodOccurence" ],
"additionalProperties" : false,
"links" : [ {
"rel" : "filter",
"encType" : "application/x-www-form-urlencoded",
"method" : "GET",
"href" : "/payroll-deduction-arrangements/",
"schema" : {
"type" : "object",
"properties" : {
"person" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"contribution" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"deductionType" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"status" : {
"type" : "string",
"enum" : [ "active", "suspended", "rejected", "cancelled", "withdrawn", "terminated" ]
}
}
}
} ]
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy