---
title: "Creates an Allowance"
method: POST
path: "/api/2026-07-01/resources/timeoff/allowances"
tags: ["Timeoff > Allowance"]
---

# Creates an Allowance

`POST /api/2026-07-01/resources/timeoff/allowances`

Creates a new Time off allowance

## Request body

- object
  - `accrued_denominator_in_cents` integer — Only for Allowances based on worked time. It represents how many units you need to work to be granted allowance units
  - `accrued_factor_in_cents` integer — Only for Allowances based on worked time. It represents how many units you are given per unit of time worked
  - `accrued_units_availability` 'current_cycle' | 'next_cycle', required — When can the accrued units be spent.
  - `allowance_type` 'days' | 'hours', required — Sets the allowance units. Can be "days" or "hours"
  - `available_days` 'all_days' | 'generated_days' | 'generated_days_monthly' | 'generated_days_monthly_first_day' | 'monthly_fifteenth' | 'mensiversary' | 'bimonthly_first_and_fifteenth' | 'bimonthly_fifteenth_and_last', required — Indicates how the allowance units are accrued. For example all_days means all allowance days are given on the first day of the cycle.
  - `carry_over_units_in_cents` integer — How many units can carry over between cycles multiplied by 100
  - `count_holiday_as_workable` boolean, required — This setting flags if units taken during a bank holiday should be deducted or not from allowance.
  - `cycle_length` integer — How many months does each allowance cycle last
  - `cycle_start` 'jan' | 'feb' | 'mar' | 'apr' | 'may' | 'jun' | 'jul' | 'aug' | 'sep' | 'oct' | 'nov' | 'dec' | 'employee_hired_date', required — When does the cycle start.
  - `days_type` 'working_days' | 'natural_days' | 'natural_days_only_range' | 'french_calendar_days' | 'french_ouvres', required — Indicates if the allowance is based on working on calendar days.
  - `expire_in_months` integer — When does the carryover expire in months.
  - `frequency` 'monthly_flexible' | 'yearly' | 'lifetime' — Defines duration of the allowance cycles. Can be "yearly", "monthly_flexible" or "lifetime"
  - `holiday_allowance_in_cents` integer, required — Base amount of holiday allowance units multiplied by 100
  - `leave_type_ids` string[], required — An array of leave type ids associated with that allowance
  - `maximum_amount_in_cents` integer — Maximum the allowance can reach on accrued
  - `name` string, required — Allowance name set by the user
  - `negative_counter_type` 'negative_counter_disabled' | 'negative_counter_enabled', required — Whether the allowance allows to request more days than available.
  - `position` integer — Indicates the position in the allowance when rendering them in UI
  - `proration_type` 'proration_enabled' | 'proration_disabled', required — Whether the allowance has proration enabled or not.
  - `pto_proratio_enabled` boolean, required — Whether the allowance days are prorated or not
  - `range_type` 'exact_range' | 'extra_non_working_days_at_end' — Configures how leaves duration is handled.
  - `rounding` 'half_day' | 'decimals' | 'quarters' | 'round_up', required — How the accrued units of the allowance are rounded. It depends if the allowance is set in hours or days.
  - `source_units` 'base_units' | 'overtime_units' | 'by_worked_time', required — This field configures the type of allowance (fixed balance, based on worked time)
  - `tenure_period_transition` 'beginning_of_cycle' | 'end_of_cycle' | 'after_milestone' — In case the allowance has tenure periods, when is this tenure applied.
  - `tenure_periods_enabled` boolean — Whether the allowance has tenure periods enabled or not.
  - `tenure_periods` unknown[], required — The tenure periods associated with the allowance.
    - unknown
  - `timeoff_policy_id` string, required — The Id of the policy to which the allowance belongs to
  - `unlimited_accrued_hours` boolean, required — Flag to indicate if there is unlimited accrual.
  - `unlimited_carry_over` boolean, required — Flag to indicate if there is unlimited carry over.
  - `unlimited_carry_over_expiration` boolean, required — Boolean to flag if carryover does not expire
  - `unlimited_holidays` boolean, required — Flag to indicate that the allowance has unlimited available days

## Response `201`

CREATED

- TimeoffAllowance
  - `id` string, required — Unique identifier of the allowance
  - `accrued_denominator_in_cents` integer — Only for Allowances based on worked time. It represents how many units you need to work to be granted allowance units
  - `accrued_factor_in_cents` integer — Only for Allowances based on worked time. It represents how many units you are given per unit of time worked
  - `accrued_units_availability` 'current_cycle' | 'next_cycle' — When can the acrrued units be spent.
  - `allowance_type` 'days' | 'hours', required — Sets the allowance units. Can be "days" or "hours"
  - `available_days` 'all_days' | 'generated_days' | 'generated_days_monthly' | 'generated_days_monthly_first_day' | 'monthly_fifteenth' | 'mensiversary' | 'bimonthly_first_and_fifteenth' | 'bimonthly_fifteenth_and_last', required — Indicates how the allowance units are accrued. For example all_days means all allowance days are given on the first day of the cycle.
  - `carry_over_days` integer — How many units can carry over between cycles
  - `carry_over_units_in_cents` integer — How many units can carry over between cycles multiplied by 100
  - `count_holiday_as_workable` boolean, required — This setting flags if units taken during a bank holiday should be deducted or not from allowance.
  - `cycle_length` integer — How many months does each allowance cycle last
  - `cycle_start` string — When does the cycle start.
  - `days_type` 'working_days' | 'natural_days' | 'natural_days_only_range' | 'french_calendar_days' | 'french_ouvres' — Indicates if the allowance is based on working on calendar days.
  - `employee_carry_over_starting_year` integer — When does the carryover start
  - `expire_in_months` integer — When does the carryover expire in months.
  - `frequency` 'monthly_flexible' | 'yearly' | 'lifetime' — Defines duration of the allowance cycles. Can be "yearly", "monthly_flexible" or "lifetime"
  - `holiday_allowance_in_cents` integer — Base amount of holiday allowance units multiplied by 100
  - `leave_type_ids` string[], required — An array of leave type ids associated with that allowance
  - `maximum_amount_in_cents` integer — Maximum the allowance can reach on accrued
  - `name` string, required — Allowance name set by the user
  - `negative_counter_type` 'negative_counter_disabled' | 'negative_counter_enabled' — Whether the allowance allows to request more days than available
  - `position` integer — Indicates the position in the allowance when rendering them in UI
  - `proration_type` 'proration_enabled' | 'proration_disabled', required — Whether the allowance has proration enabled or not.
  - `pto_proratio_enabled` boolean — Whether the allowance days are prorrated or not
  - `range_type` 'exact_range' | 'extra_non_working_days_at_end' — Configures how leaves duration is handled.
  - `rounding` 'half_day' | 'decimals' | 'quarters' | 'round_up', required — How the accrued units of the allowance are rounded. It depends if the allowance is set in hours or days.
  - `send_notification` boolean
  - `source_units` 'base_units' | 'overtime_units' | 'by_worked_time' — This field configures the type of allowance (fixed balance, based on worked time)
  - `tenure_period_transition` 'beginning_of_cycle' | 'end_of_cycle' | 'after_milestone' — In case the allowance has tenure periods, when is this tenure applied.
  - `tenure_periods` unknown[], required — The tenure periods associated with the allowance.
    - unknown
  - `tenure_periods_enabled` boolean — Whether the allowance has tenure periods enabled or not.
  - `timeoff_cycle` string, required — Value to indicate how the allowance cycle is configured. Its an abbreviation of the first and last month.
  - `timeoff_policy_id` string, required — The Id of the policy to which the allowance belongs to
  - `unlimited_accrued_hours` boolean — Flag to indicate if there is unlimited accrual.
  - `unlimited_carry_over` boolean — Flag to indicate if there is unlimited carry over.
  - `unlimited_carry_over_expiration` boolean — Boolean to flag if carryover does not expire
  - `unlimited_holidays` boolean — Flag to indicate that the allowance has unlimited available days

---

[API](https://skmtc.net/factorialhr/apis/factorial-api.md) · [All operations](https://skmtc.net/factorialhr/apis/factorial-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/factorialhr/factorial-api/versions/1a6bffb20f7d/schema)
