Net Pay Splits

Split worker net pay into multiple bank accounts

You can split the net pay that employees and contractors receive into multiple bank accounts. Check supports both amount-based and percentage-based net pay splits, meaning that you provide a prioritized list of bank accounts and specify the amounts or percents to be paid to each bank account. Check then distributes the net pay into these accounts in the order you’ve specified, with the last account receiving the remainder of the pay.

As an example, imagine that Kofi has an amount-based pay split configuration set as follows:

  • Priority 1: Wells Fargo checking account ending 4431; Amount: $500
  • Priority 2: PNC savings account ending 2982; Amount: $300
  • Priority 3: Capital One savings account ending 6720; Amount: Remainder

If Kofi receives a net pay of $1000, he’ll receive:

  • Wells Fargo checking -4431: $500
  • PNC savings -2982: $300
  • Capital One savings -6720: $200

Now say that Kofi receives a net pay of $600, he’ll receive:

  • Wells Fargo checking -4431: $500
  • PNC savings -2982: $100
  • Capital One savings -6720: $0

And if Kofi instead had a percentage-based pay split with configuration as follows:

  • Priority 1: Wells Fargo checking account ending 4431; Percentage: 20%
  • Priority 2: PNC savings account ending 2982; Percentage: 10%
  • Priority 3: Capital One savings account ending 6720; Amount: Remainder

If Kofi receives a net pay of $1000, he’ll receive:

  • Wells Fargo checking -4431: $200
  • PNC savings -2982: $100
  • Capital One savings -6720: $700

Net pay amounts can be split across up to 7 accounts.

Net Pay Splits can be configured via Onboard, Console or the API.

Onboard

You can send the employee or contractor a Check Onboard link and ask them to configure their pay splits themselves.

994

Net Pay Split configuration in Onboard

Console

You can configure pay splits on the “employee detail” and "contractor detail" pages in Console. You can reach these pages by either searching for the worker's name in the search bar or by accessing their URLs directly via the following format for employees and contractors, respectively:
https://console.checkhq.com/companies/{company_id}/employees/{employee_id} https://console.checkhq.com/companies/{company_id}/contractors/{contractor_id}

1803

Net Pay Split configuration in Console

API

Net Pay Splits can be configured using the API via the The net pay split object. You can create, read or list these objects.

{
  "id": "nps_lk218jk9082mjkjljT1c",
  "employee": "emp_zGGp6wYcxAeu1Ng8IA7v",
  "contractor": null,
  "deactivated_at": null,
  "deactivated_reason": null,
  "is_default": true,
  "splits": [
    {
      "bank_account": "bnk_R1UMH4Jtbjek10B9TxiX",
      "priority": 1,
      "amount": 100,
      "percentage": null
    },
    {
      "bank_account": "bnk_zGGp6wYcxAeu1Ng8IA7v",
      "priority": 2,
      "amount": null,
      "percentage": null
    }
  ]
}

The default net pay split ID of a worker is also accessible in the employee and contractor objects.

{
    "id": "emp_zGGp6wYcxAeu1Ng8IA7v",
    "bank_accounts": [
        "bnk_R1UMH4Jtbjek10B9TxiX",
        "bnk_zGGp6wYcxAeu1Ng8IA7v",
        //…
    ],
    "default_net_pay_split": "nps_lk218jk9082mjkjljT1c",
    //…
}

Percentage-based net pay splits

In API versions 2023-04-04 and beyond, the API supports percentage based net pay splits. In this version, you can pass in either an amount or percentage when creating net pay splits.

{
  "id": "nps_lk218jk9082mjkjljT1c",
  "employee": "emp_zGGp6wYcxAeu1Ng8IA7v",
  "contractor": null,
  "deactivated_at": null,
  "deactivated_reason": null,
  "is_default": true,
  "splits": [
    {
      "bank_account": "bnk_R1UMH4Jtbjek10B9TxiX",
      "priority": 1,
      "amount": null,
      "percentage": "70.0",
    },
    {
      "bank_account": "bnk_zGGp6wYcxAeu1Ng8IA7v",
      "priority": 2,
      "amount": null,
      "percentage": null
    }
  ]
}

Note that only one method can be used per net pay split, e.g. you cannot create one split object using amount and another using a percentage. For the lowest priority account, the amount and percentage may be omitted; if supplied it will be ignored and the value will default to the remainder.

Bank Accounts and Net Pay Splits

In order to create the right net pay splits, you must have all the relevant bank accounts for the employee already created. Creating a new bank account may automatically create a Net Pay Split in the following circumstances:

  • When an Employee or Contractor has no Net Pay Split (i.e. it’s a new worker), and a bank account is created, a new Net Pay Split is automatically created for that worker with all their pay going to that newly created bank account.
  • Similarly, if all the bank accounts that an Employee or Contractor has are disabled (i.e. they cannot be used for payroll), the creation of a new bank account automatically creates a new Net Pay Split for that worker with all their pay going to that newly created bank account.

Additionally, when bank accounts that are already part of a Net Pay Split are deleted or disabled, the Net Pay Split moves to a deactivated state. This state is visible in Console and Onboard visually and can be detected in the API using the deactivated_at and deactivated_reason fields in the Net Pay Split object.

When will changes take effect?

Check ‘locks-in’ the bank accounts that payments will be made to at the time of payroll approval. Changes made to pay splits after the company approves payroll will only be effective during the next pay cycle. Changes made before the company approves payroll will be effective during the upcoming pay cycle.