Create a Pay Rate

Pay Rates are used to assign how an employee will be paid for worked timesheets, including overtime, allowances, and more, and are assigned to employee agreements.

The below instructs how to create a blank pay rate.

Getting a Pay Policy ID

I don't know where to pull the pay_policy_id from.


CK Notes

This would function better as an API if it was similar to v2 Employee - configure all the details in one go, with a PUT to replace.

URL and Payload

URL

curl --location --request POST 'https://{install}.{geo}.deputy.com/api/management/v2/compliance/contract'

Sample

{
  "pay_policy_id": "2aLj35B9DspffHZzmhmEjY4Rrlw",
  "employment_contract_name": "Sample"
}

Response

{
    "success": true,
    "data": {
        "id": 478,
        "name": "Sample",
        "description": "Default pay policy",
        "employmentCategory": "EMPLOYMENT_CATEGORY_PERMANENT",
        "employmentType": "EMPLOYMENT_TYPE_FULL_TIME",
        "basePayRule": {
            "id": 2936,
            "title": "Ordinary",
            "value": 0,
            "remunerationBy": "REMUNERATION_BY_BASE",
            "remunerationType": "REMUNERATION_TYPE_HOURLY",
            "isExported": true,
            "payrollCategory": "REGULAR",
            "payPortionRule": "PAY_PORTION_RULE_EXACT",
            "rateType": "RATE_TYPE_ORDINARY",
            "comment": "Ordinary",
            "operationalUnitIds": [],
            "calculationRuleId": "2aLj34VMjIdJ4Wgwz4NUrWhva9p",
            "calculationTypeId": "2QUX94TMEN3fRELiypnfM1eRsbw",
            "filter": {
                "customFieldAnswers": [],
                "recurrenceRule": "",
                "shiftSchedulingType": "UNSPECIFIED",
                "shiftStartTimeRange": "",
                "shiftEndTimeRange": "",
                "rRulePublicHolidayInclusion": "PH_INCLUSION_UNSPECIFIED",
                "particularDate": "",
                "applyOncePerDay": false,
                "areaNames": []
            },
            "localContext": "{}",
            "rateTag": "",
            "payConfig": {
                "roundUpHours": false
            },
            "levelIds": [],
            "levelAssnType": 1
        },
        "payRules": [
            {
                "id": 2936,
                "title": "Ordinary",
                "value": 0,
                "remunerationBy": "REMUNERATION_BY_BASE",
                "remunerationType": "REMUNERATION_TYPE_HOURLY",
                "isExported": true,
                "payrollCategory": "REGULAR",
                "payPortionRule": "PAY_PORTION_RULE_EXACT",
                "rateType": "RATE_TYPE_ORDINARY",
                "comment": "Ordinary",
                "operationalUnitIds": [],
                "calculationRuleId": "2aLj34VMjIdJ4Wgwz4NUrWhva9p",
                "calculationTypeId": "2QUX94TMEN3fRELiypnfM1eRsbw",
                "filter": {
                    "customFieldAnswers": [],
                    "recurrenceRule": "",
                    "shiftSchedulingType": "UNSPECIFIED",
                    "shiftStartTimeRange": "",
                    "shiftEndTimeRange": "",
                    "rRulePublicHolidayInclusion": "PH_INCLUSION_UNSPECIFIED",
                    "particularDate": "",
                    "applyOncePerDay": false,
                    "areaNames": []
                },
                "localContext": "{}",
                "rateTag": "",
                "payConfig": {
                    "roundUpHours": false
                },
                "levelIds": [],
                "levelAssnType": 1
            }
        ],
        "configs": [
            {
                "id": 467,
                "contractId": 478,
                "category": "CONTRACT_CONFIG_CATEGORY_PAY_POLICY_CONTEXT",
                "config": "{\"midnightSplit\": false, \"daySplitOffset\": \"0\", \"includePaidLeave\": false, \"applyOneOfTheRules\": [], \"paidCustomFieldAnswers\": []}",
                "status": "CONTRACT_CONFIG_STATUS_ACTIVE"
            },
            {
                "id": 468,
                "contractId": 478,
                "category": "CONTRACT_CONFIG_CATEGORY_CONTRACT_DETAILS",
                "config": "{\"contractType\": 2, \"contractStatus\": 1}",
                "status": "CONTRACT_CONFIG_STATUS_ACTIVE"
            }
        ],
        "leaveRules": [],
        "payPolicyName": "",
        "levels": [],
        "payType": "CONTRACT_PAY_TYPE_HOURLY"
    }
}

Data Elements

Data ElementMandatoryInfo
pay_policy_idYesPay Policy to use as a template
employment_contract_nameYesName of the Pay Rate

Next Steps

As seen in the response, there is a lot to configure in pay rates! The following illustrates how.


Did this page help you?