Pay Schedules

Update a pay schedule

Changed on

Pay-Schedules with non-draft Payrolls (e.g approved or paid) may only have their title and title_translations fields updated.

put/pay_schedules/{pay_schedule}

Request

  • Base URL
    https://sandbox.nmbr.co/services/payroll
  • Auth
    HTTP bearer

Path parameters

pay_schedulestring required

Request body

titlestring
pay_frequency'bi-weekly' | 'custom' | 'four-weekly' | 'monthly' | 'semi-monthly' | 'weekly'

The frequency at which Payrolls are processed. Use custom for non-standard schedules where the number of pay periods per year is specified manually.

four-weekly is not supported for Canadian business entities. semi-monthly and custom are only supported for Canadian business entities.

Editing is prevented when is_editable is false

anchor_pay_datestring date

The pay date of the anchor pay period. Together with anchor_end_of_pay_period, this establishes the pattern from which all future pay dates are calculated.

Date must not be more than one year before the date the pay schedule is created.

Editing is prevented when is_editable is false

anchor_start_of_pay_periodstring date

The start date of the anchor pay period. Only required for semi-monthly pay schedules when anchor_end_of_pay_period is not the 15th or the last day of the month. For standard configurations it is derived automatically and does not need to be supplied.

Required for semi-monthly pay schedules when anchor_end_of_pay_period is not the 15th or the last day of the month.

Editing is prevented when is_editable is false

anchor_end_of_pay_periodstring date

The end date of the anchor pay period. Together with anchor_pay_date, this defines the length and pattern of all future pay periods.

Date must not be more than one year before the date the pay schedule is created.

Editing is prevented when is_editable is false

generate_payrolls_fromstring date

Only available in preview mode. When set, Payrolls are generated starting from this date rather than the default, allowing historical Payrolls to be created before the current date.

Available in Preview mode, allows for the creation of Payrolls from an arbitrary date before the current date. Must be on or after anchor_pay_date.

Editing is prevented when is_editable is false

day_1integer

For monthly pay schedules, the day of the month on which pay is issued. For semi-monthly pay schedules, one of the two pay days in each month. -1 means the last day of the month.

Day_1 is required for monthly and semi-monthly pay schedules. Otherwise, it must be null. On semi-monthly pay schedules, day_1 and day_2 are two different days of the month, 1 to 31, or -1 for the last day of the month. The two days can't both be 28 or later, and -1 counts as 31. A day past the end of a shorter month uses that month's last day.

Editing is prevented when is_editable is false

day_2integer

For semi-monthly pay schedules, one of the two pay days in each month. -1 means the last day of the month.

day_2 is required for semi-monthly pay schedules. Otherwise, it must be null. On semi-monthly pay schedules, day_1 and day_2 are two different days of the month, 1 to 31, or -1 for the last day of the month. The two days can't both be 28 or later, and -1 counts as 31. A day past the end of a shorter month uses that month's last day.

Editing is prevented when is_editable is false

pay_day_movement_setting'inherit' | 'next_business_day' | 'previous_business_day'

The pay schedule-level setting for how pay dates are adjusted when they fall on a weekend or bank holiday. If set to inherit, the Business Entity's setting is used.

Editing is prevented when is_editable is false

send_empty_pay_stubsboolean

Whether Pay Stubs are generated for employees with no earnings in a given pay period.

custom_pay_periods_per_yearinteger

Overrides the number of pay periods used to divide salary earnings on this Pay Schedule. When null, salaries are divided by the actual number of regular pay periods in the year. This value doesn't change how tax is calculated: income tax and the CPP and QPP basic exemptions use the actual number of regular pay periods, unless custom_tax_pay_periods_per_year sets a number for the year. See Years With an Extra Pay Period.

custom_tax_pay_periods_per_yearobject[]

The number of pay periods income tax and the CPP and QPP basic exemptions use in a year, keyed by the calendar year of the pay date, for example {"2026": 26}. Only 26 on a bi-weekly Pay Schedule and 52 on a weekly one are accepted, so a year with 27 bi-weekly or 53 weekly pay periods can be taxed with 26 or 52. Years not listed use the actual number of regular pay periods. Available for Canadian business entities only. See Years With an Extra Pay Period.

Keys are calendar years, up to 10 of them. Only 26 on a bi-weekly Pay Schedule and 52 on a weekly Pay Schedule are accepted, and only for Canadian business entities. A change to pay_frequency is rejected while a year is set to a number the new frequency doesn't accept. Can be changed at any time: draft Payrolls are recalculated with the new number, and Payrolls that are no longer draft keep the number they were taxed with.

external_refstring

Response

OK

idstring

The unique identifier of the object in Nmbr.

objectstring

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

Changes

    • info

      added the new optional request property

    • info

      added the optional property / to the response with the status

    • warning

      added the new four-weekly enum value to the / response property for the response status

    • info

      added the new four-weekly enum value to the request property