Skip to main content
POST
Create a deduction

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
work_assignment_id
string
required

Must belong to a work assignment associated with an entity of type Employee.

frequency
enum<string>
required

The frequency at which this deduction is applied to Pay Stubs. When per_month, the amount is distributed across selected Payrolls in the calendar month. per_month is only valid when amount_type is fixed; percent and per-hour deductions apply to every paycheque regardless of frequency.

Available options:
once,
per_month,
per_payroll
amount
number<decimal>
required

The deduction amount per occurrence. When amount_type is percent, this is interpreted as a percentage of the income basis. When fixed_per_hour, it is multiplied by the hours on the Pay Stub's earning line items selected by hours_basis and hours_includes. Otherwise it is a fixed dollar amount.

Up to 2 decimal places.

Required range: x >= 0Must be a multiple of 0.01
amount_type
enum<string>
required

Whether amount is a fixed dollar value (fixed), a dollar value per hour worked (fixed_per_hour), or a percentage of the income basis (percent).

Available options:
fixed,
fixed_per_hour,
percent
effective_from
string<date>
required

The date from which this deduction is applied to Pay Stubs.

business_preset_id
string
deduction_type
enum<string>

The type of deduction, which determines how it is categorized and remitted.

Must be present when business_preset_id is either empty or not set.

Available options:
charitable_donation,
garnishment_order,
income_tax,
other_deduction,
union_dues,
union_dues_post_tax
title
string | null
Maximum string length: 255
title_translations
object | null

Optional translations for the title property.

hours_basis
enum<string>

Which earnings' hours a fixed_per_hour deduction multiplies amount by. all_earnings includes the hours on all earnings. regular_earnings includes only the hours on salary and wage earnings. none doesn't include any earnings, and can be used with hours_includes to count only the hours on specific earnings. Defaults to all_earnings, and can only be changed when amount_type is fixed_per_hour.

Available options:
all_earnings,
none,
regular_earnings
hours_includes
object[]

An optional list of earnings whose hours are counted in addition to those included via hours_basis. Each entry has a type of earning and a subtype. Can only be changed when amount_type is fixed_per_hour.

max_lifetime_deduction
number<decimal>

The most this deduction will ever deduct, such as the balance owed on a loan or advance. Once the amounts it deducted on approved payrolls reach this maximum, it stops deducting, and the Pay Stub that reaches it deducts only the remainder. Amounts repaid before the deduction was created aren't counted, so set it to the balance still owed when creating the deduction. Changing it later changes the total, not the remaining balance: amounts already deducted still count toward it. null if there is no maximum.

Up to 2 decimal places.

Required range: 0 <= x <= 999999Must be a multiple of 0.01
income_basis
enum<string>

Determines the income used as the base for percentage-based deductions. regular_earnings includes only salary and wage earnings. all_earnings includes all earnings. total_income includes all earnings, taxable allowances, and taxable reimbursements. none doesn't include any line items, and can be used with income_includes for completely custom definitions of income.

Available options:
all_earnings,
none,
regular_earnings,
total_income
income_includes
object[]

An optional list of specific earnings, allowances, and other line item types to include in the income calculation in addition to those included via income_basis.

income_subtractions
object[]

An optional list of deductions and employee benefits to subtract from the income before the deduction amount is calculated.

income_statutory_withholdings
enum<string>

Whether to subtract statutory withholdings (CPP, EI, income tax) from the income before the deduction amount is calculated.

Available options:
all,
none
income_exemption_amount
number<decimal>

A fixed dollar amount to exempt from the income before calculating the deduction.

Up to 2 decimal places.

Required range: 0 <= x <= 99999Must be a multiple of 0.01
income_exemption_percent
number<decimal>

A percentage of the income to exempt before calculating the deduction amount.

Up to 2 decimal places.

Required range: 0 <= x <= 100Must be a multiple of 0.01
effective_to
string<date>

The date after which this deduction is no longer applied. null if the deduction applies indefinitely.

remittance_account_id
string

The remittance account to which collected deduction amounts are remitted.

expense_accounting_code_id
string
liability_accounting_code_id
string
external_ref
string
Maximum string length: 255
tag_assignment
object

Up to 4 decimal places.

date_basis
enum<string>

Which payroll date determines the calendar month for the allocation. Applies only to fixed-amount per_month deductions.

Available options:
by_pay_date,
by_period_end_date,
by_period_start_date
pay_period_cadence
integer[]

Which pay periods within the month receive the allocation. An array of 1-based positions; -1 is the final period. Applies only to fixed-amount per_month deductions.

Minimum array length: 1

Response

201 - application/json

Created

id
string
read-only

The unique identifier of the object in Nmbr.

object
string
read-only

The type of the object in Nmbr ("deduction").

data
Deduction · object