Creates a new leave category for the business.

Request

POST https://api.nzpayroll.co.nz/api/v2/business/{businessId}/leavecategory

Path parameters

Parameter name Value Description Additional
businessId string Required

Request body

The request body takes a complete NzLeaveCategoryModel resource, containing the following writable properties:

{
    "accruesFirstPayRunPerPeriodOnly": "boolean",
    "automaticallyAccrues": "boolean",
    "deductFromPayCategoryId": "int32",
    "deductFromPrimaryPayCategory": "boolean",
    "excludeFromTerminationPayout": "boolean",
    "externalId": "string",
    "hideAccrualsOnPayslip": "boolean",
    "id": "int32",
    "isBalanceUntracked": "boolean",
    "isNamePrivate": "boolean",
    "isPrivate": "boolean",
    "leaveAccrualRule": {
        "accrualType": "string",
        "accrueInAdvance": "boolean",
        "capType": "string",
        "carryOverAmount": "double",
        "carryOverBehaviour": "string",
        "id": "int32",
        "leaveYearOffsetAmount": "int32",
        "unitCap": "double"
    },
    "leaveCategoryType": "string",
    "leaveEntitlement": {
        "carryOverAmount": "double",
        "carryOverType": "string",
        "forfeitureAmount": "double",
        "forfeitureMonthsStartAfter": "int32",
        "forfeitureType": "string",
        "id": "int32",
        "isProRata": "boolean",
        "leaveBalanceType": "string",
        "leaveEntitlementTiers": [
            {
                "accrualAmount": "double",
                "accrualStartAfter": "int32",
                "accrualStartAfterUnitType": "string",
                "accrualUnitType": "string",
                "id": "int32",
                "isDeleted": "boolean"
            }
        ],
        "standardAllowanceUnitType": "string",
        "standardAllowanceUnitTypeAmount": "double"
    },
    "leaveUnitType": "string",
    "name": "string",
    "payoutAsETP": "boolean",
    "payoutNegativeBalance": "boolean",
    "preventNegativeBalanceUnpaidLeaveCategoryId": "int32",
    "source": "string",
    "transferToPayCategoryId": "int32",
    "unitType": "string",
    "units": "double",
    "useDeductFromPayCategoryRate": "boolean"
}

Properties

Name Type Description
accruesFirstPayRunPerPeriodOnly boolean Nullable
automaticallyAccrues boolean Boolean
deductFromPayCategoryId int32 Nullable
deductFromPrimaryPayCategory boolean Boolean
excludeFromTerminationPayout boolean Boolean
externalId string String
hideAccrualsOnPayslip boolean Boolean
id int32 Int32
isBalanceUntracked boolean Boolean
isNamePrivate boolean Boolean
isPrivate boolean Boolean
leaveAccrualRule object NzLeaveAccrualRuleModel
leaveAccrualRule.accrualType string LeaveAccrualType

Possible values are:

  • Ongoing
  • Yearly
  • BasedOnLengthOfService
leaveAccrualRule.accrueInAdvance boolean Boolean
leaveAccrualRule.capType string LeaveAccrualCapType

Possible values are:

  • NotLimited
  • Limited
leaveAccrualRule.carryOverAmount double Decimal
leaveAccrualRule.carryOverBehaviour string LeaveAccrualCarryOverBehaviour

Possible values are:

  • CarryEntireAmount
  • CarryHours
leaveAccrualRule.id int32 Int32
leaveAccrualRule.leaveYearOffsetAmount int32 Nullable
leaveAccrualRule.unitCap double Decimal
leaveCategoryType string NzLeaveCategoryTypeEnum

Possible values are:

  • Standard
leaveEntitlement object LeaveEntitlementModel
leaveEntitlement.carryOverAmount double Decimal
leaveEntitlement.carryOverType string LeaveEntitlementCarryOverType

Possible values are:

  • None
  • Unlimited
  • UpTo
leaveEntitlement.forfeitureAmount double Decimal
leaveEntitlement.forfeitureMonthsStartAfter int32 Int32
leaveEntitlement.forfeitureType string LeaveEntitlementForfeitureType

Possible values are:

  • None
  • Unlimited
  • UpTo
leaveEntitlement.id int32 Int32
leaveEntitlement.isProRata boolean Boolean
leaveEntitlement.leaveBalanceType string LeaveEntitlementLeaveBalanceType

Possible values are:

  • None
  • Full
  • ProRata
leaveEntitlement.leaveEntitlementTiers[] array
leaveEntitlement.leaveEntitlementTiers[].accrualAmount double Decimal
leaveEntitlement.leaveEntitlementTiers[].accrualStartAfter int32 Int32
leaveEntitlement.leaveEntitlementTiers[].accrualStartAfterUnitType string LeaveEntitlementAccrualStartDateUnitType

Possible values are:

  • Month
  • Year
leaveEntitlement.leaveEntitlementTiers[].accrualUnitType string LeaveEntitlementAccrualUnitType

Possible values are:

  • Monthly
  • Yearly
leaveEntitlement.leaveEntitlementTiers[].id int32 Int32
leaveEntitlement.leaveEntitlementTiers[].isDeleted boolean Boolean
leaveEntitlement.standardAllowanceUnitType string LeaveEntitlementAccrualUnitType

Possible values are:

  • Monthly
  • Yearly
leaveEntitlement.standardAllowanceUnitTypeAmount double Decimal
leaveUnitType string LeaveUnitTypeEnum

Possible values are:

  • Hours
  • Days
  • Weeks
name string String
payoutAsETP boolean Boolean
payoutNegativeBalance boolean Boolean
preventNegativeBalanceUnpaidLeaveCategoryId int32 Nullable
source string String
transferToPayCategoryId int32 Nullable
unitType string NzLeaveAllowanceUnitType

Possible values are:

  • HoursPerHourWorked
  • HoursPerPayRun
  • StandardDays
  • StandardWeeks
  • DayPerCalendarDay
units double Decimal
useDeductFromPayCategoryRate boolean Boolean

Response

The following HTTP status codes may be returned, optionally with a response resource.

Status code Description Resource
200 OK

OK

NzLeaveCategoryModel