Setting Pay Rate General Configuration

The Employment Contract Config endpoint is used to configure many components of a pay rate, including:

  • General Settings
  • Employment Type and Active
  • Junior Rates
  • Pay Rule Shared Settings

This page will go through General Settings and


URL and Payload

URL

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

Sample

{
  "configs": [
    {
      "id": "<long>",
      "contractId": "<long>",
      "category": "CONTRACT_CONFIG_CATEGORY_UNKNOWN",
      "config": "<string>",
      "status": "CONTRACT_CONFIG_STATUS_INACTIVE"
    },
    {
      "id": "<long>",
      "contractId": "<long>",
      "category": "CONTRACT_CONFIG_CATEGORY_UNKNOWN",
      "config": "<string>",
      "status": "CONTRACT_CONFIG_STATUS_INACTIVE"
    }
  ]
}

Example -

{
  "configs": [
    {  
      "id": 316,  
      "contractId": 403,  
      "category": "CONTRACT_CONFIG_CATEGORY_PAY_POLICY_CONTEXT",  
      "config": "{\"midnightSplit\": false, \"daySplitOffset\": 0, \"includePaidLeave\": false, \"applyOneOfTheRules\": [], \"paidCustomFieldAnswers\": []}",  
      "status": "CONTRACT_CONFIG_STATUS_ACTIVE"  
    },  
    {  
      "id": 317,  
      "contractId": 403,  
      "category": "CONTRACT_CONFIG_CATEGORY_CONTRACT_DETAILS",  
      "config": "{\"contractType\": 2, \"contractStatus\": 1}",  
      "status": "CONTRACT_CONFIG_STATUS_ACTIVE"  
    }
  ]
}

Response

{
  "success": "<boolean>",
  "error": "<string>"
}

Data Elements - Pay Policy Context

Data ElementMandatoryInfo
contract_IdYesPay Rate id assigned to
categoryYes

This selects the type of contract config being set. Options are:

CONTRACT_CONFIG_CATEGORY_GLOBAL_SETTINGS = 2;
CONTRACT_CONFIG_CATEGORY_JUNIOR_RATE = 3;
CONTRACT_CONFIG_CATEGORY_CONTRACT_DETAILS = 4;
CONTRACT_CONFIG_CATEGORY_PAY_POLICY_CONTEXT = 5;
CONTRACT_CONFIG_CATEGORY_SHARED_CONTEXT = 6;

configYesSee below - variable based on what config is being set.
statusYes"CONTRACT_CONFIG_STATUS_ACTIVE" for active

Config - Pay Policy Context

This is attached as a blob. Values are:


Data ElementMandatoryInfo
midnightSplitYesIs day divided at the end of the day for overtime. Default and recommended is false.
daySplitOffsetYesThis sets the offset of when the day starts/ends. 0 is midnight.
includePaidLeaveYesDetermines if leave hours are counted towards overtime
applyOneOfTheRulesYesDeprecated, not used
paidCustomFieldsYesUsed in Fair Work Week contracts to assign custom timesheet field questions. Not recommended for use.


"configs": [
  {
    "id": 316,
    "contractId": 403,
    "category": "CONTRACT_CONFIG_CATEGORY_PAY_POLICY_CONTEXT",
    "config": "{\"midnightSplit\": false, \"daySplitOffset\": 0, \"includePaidLeave\": false, \"applyOneOfTheRules\": [], \"paidCustomFieldAnswers\": []}",
    "status": "CONTRACT_CONFIG_STATUS_ACTIVE"
  },
  {
    "id": 317,
    "contractId": 403,
    "category": "CONTRACT_CONFIG_CATEGORY_CONTRACT_DETAILS",
    "config": "{\"contractType\": 2, \"contractStatus\": 1}",
    "status": "CONTRACT_CONFIG_STATUS_ACTIVE"
  },
  {
    "id": 318,
    "contractId": 403,
    "category": "CONTRACT_CONFIG_CATEGORY_SHARED_CONTEXT",
    "config": "{\"useRollingPeriod\": false, \"periodOvertimeThreshold\": \"0\", \"rollingPeriodLengthSeconds\": \"0\", \"resetConsecutiveDaysEveryWorkWeek\": true}",
    "status": "CONTRACT_CONFIG_STATUS_ACTIVE"
  },
  {
    "id": 323,
    "contractId": 403,
    "category": "CONTRACT_CONFIG_CATEGORY_JUNIOR_RATE",
    "config": "{\"rates\": [{\"age\": 15, \"rate\": \"20\", \"tooltipContent\": \"lowest-rate\"}, {\"age\": 16, \"rate\": \"21\", \"tooltipContent\": \"minimum-rate\"}, {\"age\": 17, \"rate\": \"22\", \"tooltipContent\": \"minimum-rate\"}, {\"age\": 18, \"rate\": \"23\", \"tooltipContent\": \"minimum-rate\"}, {\"age\": 19, \"rate\": \"24\", \"tooltipContent\": \"minimum-rate\"}, {\"age\": 20, \"rate\": \"25\", \"tooltipContent\": \"minimum-rate\"}, {\"age\": 21, \"rate\": \"25\", \"tooltipContent\": \"highest-rate\"}]}",
    "status": "CONTRACT_CONFIG_STATUS_ACTIVE"
  }
]

What’s Next

Did this page help you?