Added
Added Payroll by Workweek support for earning types, pay schedules, and payrolls
39 minutes ago by Gusto Developer Relations
We've added Payroll by Workweek support across the earning types, pay schedules, and payrolls APIs. Workweek breakdowns are the input Gusto uses to calculate overtime pay accurately for nonexempt employees under the Fair Labor Standards Act (FLSA). Read more in our Payroll by Workweek guide.
Why this matters
Overtime pay is calculated on a per-workweek basis, not per pay period. For a nonexempt employee who works overtime, the hours and earnings that count toward their overtime premium depend on which workweek each item belongs to. Payroll by Workweek adds the fields partners need to supply, read, and reflect that per-workweek data on the Partner API.
Key functionality
- Earning types gain
categoryandincluded_in_overtime_pay. When creating a custom earning type with POST earning_types, you specify acategory(one ofCommission,DiscretionaryBonus,ServiceCharges,OnCallPay, orOther). For every category exceptOther, overtime treatment is fixed andincluded_in_overtime_payis set automatically. ForOther, you set it explicitly. Both fields are immutable after creation. - Pay schedules gain
workweek_start_day. Weekly and biweekly schedules now carry aworkweek_start_dayon reads and writes. The field can only be changed once per pay period. - Payrolls gain workweek breakdowns.
fixed_compensationsandhourly_compensationsentries accept abreakdownsarray specifying how much of each earning applies to each workweek. Unprocessed payroll responses fromprepare,create, andupdatealso include a top-levelworkweeksarray listing each workweek's date range within the pay period. - Payroll
gross_payis now returned on unprocessed responses. Previouslygross_paywas only available on processed payrolls—it now appears onprepare,create, andupdateso you can read an estimated total while building. - Processed
showresponses includepay_adjustments.pay_adjustmentsis a new per-employee array reflecting overtime premium corrections carried over from a previous workweek.- Affected endpoints: GET /v1/companies/{company_uuid}/payrolls/{payroll_uuid}
Read more in the Payroll by Workweek guide.