Skip to main content

Overview

A payroll schedule determines the length of your pay period and how often you pay your employees. The most common payroll schedules are weekly, biweekly, semimonthly, and monthly. Your payroll schedule is dependent upon a few factors, including provincial laws and regulations. Many provinces have pay schedule frequency requirements that you’ll need to meet. On top of provincial laws, your pay schedule should also fit the needs of your employees and your business. If you employ mostly hourly workers, your pay schedule may look different from a business with mostly salaried employees. Your province, your industry, and the types of workers you employ all impact your payroll schedule. Typical pay frequencies include:
  • Weekly
  • Bi-weekly
  • Semi-monthly
  • Monthly
Each frequency type requires specific configuration parameters.

Pay Schedule Parameters

Pay Day Movement Options

  • inherit (default): Use the Business Entity setting.
  • previous_business_day: Move to the previous working day.
  • next_business_day: Move to the next working day.

Custom Pay Schedules

For more information on Custom Pay Schedules, please see the
Custom Pay Schedules guide.

Creating a Pay Schedule

Endpoint

POST /services/payroll/pay_schedules

Request Example

Success Response

Error Response Example


Behavior by Pay Frequency

Weekly

  • Projects payrolls weekly based on the weekday value of anchor_pay_date and anchor_end_of_pay_period.

Bi-Weekly

  • Projects payrolls every two weeks based on the weekday value of anchor_pay_date and anchor_end_of_pay_period.

Semi-Monthly

  • Two pay periods per month.
  • Supports two configurations:
    • 15th and last day of the month - day_1 of 15, day_2 of -1.
    • 16th and 1st of the month - day_1 of 16, day_2 of 1.
  • If day_1 or day_2 would fall on an invalid date (e.g., September 31st), the payroll’s calculated_pay_date will be adjusted to the prior valid date.

Monthly

  • One payroll per month.
  • day_1 defines the pay date. Use -1 to indicate “last day of the month”.
  • If day_1 would fall on an invalid date (e.g., September 31st), the payroll’s calculated_pay_date will be adjusted to the prior valid date.

Notes

  • Date Validations: Invalid dates automatically roll back to the nearest valid day.
  • Pay Date adjustment: If the payrolls calculated_pay_date falls on a weekend or holiday, the payrolls pay_date will be adjusted to a valid date based on the pay_day_movement_setting.
  • Defaults: If pay_day_movement_setting is not provided, the Business Entity default is used.